论文部分内容阅读
随着Internet的迅速发展和不断普及,Web日志资源越来越丰富,如何分析和利用这些海量的数据是当前突出的问题。Web日志挖掘是网络信息处理的一门新技术,也是数据挖掘在Internet领域的一个重要应用。频繁序列模式挖掘是Web日志挖掘的一个重要研究方向,通过它可以用来改善Web站点的组织结构,提高网站的性能。序列模式挖掘(sequence pattern mining)是由R.Agrawal和R.Srikant在1995年提出的,给定一个序列集,其中每一个序列由项集构成,然后给定用户确定的最小支持度阈值,序列模式挖掘就是去发现所有的频繁子序列(即:这些子序列的出现频率不小于给定的最小支持度)。Web日志挖掘的过程包括三个步骤:数据预处理、模式发现和模式分析。本文主要对数据预处理和模式发现两个步骤进行研究。数据预处理是Web日志挖掘的重要环节,它决定着模式发现和模式分析算法的性能。Web日志挖掘的数据预处理主要包括5个阶段:数据净化、用户识别、会话识别、路径完善和事务识别等。本文对数据预处理的各个环节进行研究,并介绍各个环节中的一些特殊处理方法,根据对Web服务器日志数据格式的分析,对会话概念进行了形式化描述,然后在分析目前会话构造算法的基础上,主要提出了一种基于时间和引用的启发式方法来构造会话。序列模式挖掘同关联规则挖掘具有很大的相似性,但也有不同的地方,本文通过比较序列模式和关联规则,更清楚地体现了序列模式的特点。当前的频繁序列模式的挖掘算法一般都是基于Apriori的改进算法,这种算法由于每生成一个k-频繁项集,都需要扫描整个事务数据库,因此在查找最大频繁项集上花费的时间代价太大,而本文采用了一种基于后缀树的频繁序列模式的挖掘算法有效的解决了Apriori算法的不足。后缀树是一种数据结构,存储了给定字符串的所有后缀的压缩树。建筑后缀树所花费的时间只与字符串的长度有关,而查找最大频繁序列模式是通过对后缀树的深度优先遍历来实现的,由于这两种算法都可以在线性时间内完成,因而大大提高了效率。通过实验验证,本文采用的基于时间和引用的启发式会话方法得出的用户会话序列更真实地反应了实际用户序列,同时,采用基于后缀树遍历的频繁序列模式挖掘算法更加快捷、方便。