论文部分内容阅读
随着互联网的飞速发展,Web已经成为全球最大的公共信息源,Web中蕴藏了各种丰富的知识。Web数据挖掘是指在Web这个信息源中挖掘出有用模式和隐藏信息的过程。然而,由于Web数据的规模庞大,使得Web数据挖掘在面对海量数据处理上面临着巨大挑战。 云计算是当前流行的分布式并行处理技术之一,它给大规模数据计算问题带来了一种分而治之的新思路,为解决大数据时代的Web数据挖掘问题带来了新的契机。MapReduce计算模式是云计算的关键技术之一,它为并行处理提供了一种底层分布式计算环境,从而简化了分布式应用程序的设计和开发。 论文的研究工作基于上述背景展开,选取了Web数据挖掘领域的Web结构挖掘和Web使用挖掘中的链接分析、数据预处理和频繁模式发现三个算法进行研究,针对目前Web数据海量性的特点,深入研究传统数据挖掘算法,探寻传统数据挖掘算法并行化和优化策略。 具体而言,本文主要研究工作包含如下四个方面: (1)在MapReduce迭代计算方面,从迭代终止条件这一点展开研究,提出一种基于Counter结果传递的MapReduce迭代任务计算方法,并且在Hadoop平台原有的MapReduce框架上实现了迭代运算。 (2)在Web结构挖掘领域的链接分析方面,针对PageRank算法数据集特征和背后蕴藏的迭代运算本质,提出基于邻接表的幂迭代加速PageRank并行优化算法,采用邻接表来存放Web结构图,大幅的降低数据集的存储消耗,有效解决当前Web链接大数据存储和计算问题;同时,采用艾肯特不动点加速的思想,推导适用向量领域的迭代加速优化模型,将其应用到PageRank并行算法的计算中,有效减少PageRank迭代次数,降低执行时间。 (3)在Web使用挖掘领域的Web日志预处理算法方面,对数据清理,用户识别,会话识别,路径补充和事务识别的五个步骤进行深入研究,分别给出五个步骤的实现算法。特别针对会话识别这一关键步骤,综合页面访问时间会话识别算法和参引页面会话识别算法,提出了一种修正页面访问时间和参引页面的启发式会话识别算法;同时,针对目前 Web日志呈海量性的特点,利用MapReduce分布式编程模型思想,提出了Web使用挖掘预处理并行算法,有效解决了目前海量Web日志的预处理的效率问题。 (4)在Web使用挖掘领域的模式发现算法方面,提出一种新的非迭代频繁模式发现并行算法,该算法能够随机求出任意长度的频繁项目模式,非常适用于分布式并行环境,有效解决了传统频繁模式发现Apriori算法在求解长频繁模式时,时间开销大的问题。 基于上述研究内容,论文的创新点归纳如下: (1)提出一种基于幂迭代的PageRank并行优化算法。该算法不仅能够大幅的降低数据集的存储消耗,有效解决当前海量Web链接结构数据的存储和计算问题,而且能有效减少PageRank迭代次数,降低算法的执行时间。 (2)提出一种基于MapReduce的日志数据预处理并行优化算法。该算法利用MapReduce思想将Web日志预处理的五个步骤有机结合起来,并行完成整个Web日志预处理过程;并且提出一种综合基于页面访问时间和参考页面的启发式会话识别优化方法,完成Web日志预处理的优化。 (3)提出一种非迭代频繁模式发现并行算法。该算法打破了传统 Apriori算法“自底向上”的频繁模式发现思想,能够随机求出任意 K-频繁模式,解决了Apriori算法求解最大频繁模式时间开销大的问题。 综上所述,论文研究了MapReduce的分布式并行计算模型和Web结构和使用挖掘中涉及到的三个关键算法:Web结构挖掘领域的链接分析算法、Web使用挖掘领域的Web日志预处理算法和Web日志模式发现算法,分别提出了适用于分布式环境的并行算法:基于幂迭代加速PageRank并行优化算法,Web使用挖掘预处理并行优化算法和非迭代频繁模式发现并行算法。论文的研究成果对于传统挖掘算法的并行化改造具有重要的理论参考意义,同时,对解决大数据时代网页搜索,用户访问模式发现等互联网应用所遇到的问题也有实际的指导价值。