胡宏智 王华
安徽工业大学计算机学院 安徽 243032
随着Web站点规模的扩大和复杂程度的提高,访问者对Web站点的要求也越来越高,要求它具有个性化,智能性。因此,简单的统计访问者所在的地区,统计站点的访问次数已经不能满足。Web日志挖掘是对用户在访问网站时留下的访问记录进行数据挖掘,利用数据挖掘的方法可以在海量的日志数据中自动快速的发现用户的访问模式,其结果可以用于改善网站的拓扑结构,发现相似客户群体,开展个性化的信息服务和有针对性的电子商务活动。
从Web服务器收集到的日志不能直接用于数据挖掘,还必须进行预处理。数据预处理一般分为数据清理、用户识别、回话识别、路径补充这几个过程。
数据清理的目的是清除从服务器得到的日志中的不相关的数据,缩小被挖掘的数据对象的范围。本文使用的日志数据集与以往的日志数据集有所有不同,如图1所示,数据集中的字段都是挖掘所需要的,但是每一个记录都含有若干条记录,其中是以“|||”分割的,利用SQL语句可以把这些记录分离开,从而形成一条一条的记录,得到的数据集就可以用于下一步的数据挖掘。如图2所示。
图1 日志数据集1
图2 日志数据集2
数据清理的核心SQL语句:
select rowNum,d*,d2.* from cont c,table(str2list(c.ip,c.time,'|||')) d,table(str2list(c.page,c.lailu,'|||')) d2 where d.id = d2.id and d.str is not null
如果数据挖掘的目的是进行用户访问模式的挖掘或对用户进行聚类分析,那么用户识别这一步骤相当重要。通常我们用一下的方式来识别用户:不同的IP地址代表不同的用户;当IP地址相同时,默认不同的操作系统或浏览器代表不同的用户;当IP地址相同时,用户使用的操作系统和浏览器也相同的情况下,此时要根据网站的拓扑结构来识别用户,即用户要访问的页面不能从已访问的页面到达则为一个新用户。
会话识别的目的就是将用户的所有访问序列分成多个单独的用户一次访问序列。一般的方法是利用超时,如果连续两个页面的请求时间间隔超过给定的阈值,则认为用户开始了一个新的会话。根据统计数据,时间阈值通常取25.5分钟。
在识别用户会话过程中的另一个问题是确定访问日志中是否有重要的请求没有被记录。这就需要路径补充这一个步骤,解决的方法类似于用户识别中的方法。如果当前请求的页与用户上一次请求的页之间没有超文本链接,那么用户很可能使用了浏览器上的“后退”按钮调用缓存在本机中的页面。检查引用日志确定当前请求来自哪一页,如果在用户的历史访问记录上有多个页面都包含与当前请求页的链接,则将请求时间最接近当前请求页的页面作为当前请求的来源。若引用日志不完整,可以使用站点的拓扑结构代替。通过这种方法将遗漏的页面请求添加到用户的会话路径中。
关联分析用于发现关联规则,关联规则是形如X→Y 即满足X中条件的数据库元组也满足Y条件。我们用支持度和置信度来作为关联规则兴趣度的客观度量。关联规则 X→Y的支持度表示满足规则的样本的百分比,用概率P(X∪Y)表示,其中,X∪Y表示同时包含X和Y的事务,即项集X和Y的并。关联规则X→Y的置信度用条件概率P(X|Y)即包含X的事务也包含Y的概率来表示。
聚类分析是将物理或抽象的对象组成的集合分组成为由类似的对象组成的多个簇,使得处于相同簇中的对象具有最大的相似性,而处于不同簇的对象具有最大的差异性的方法及过程。通过聚类,能够找出数据属性之间潜在的相互关系。聚类分析的过程如图3所示。
图3 聚类分析
遗传算法是基于进化理论,并采用遗传结合、遗传变异、以及自然选择等设计方法的优化技术。生物的进化是一个奇妙的优化过程,它通过选择淘汰,突然变异,基因遗传等规律产生适应环境变化的优良物种。遗传算法是根据生物进化思想而启发得出的一种全局优化算法。
Web日志挖掘的应用主要有以下几个方面:
(1)提供个性化服务:根据用户访问页面的模式,从中提炼出用户感兴趣的页面,针对特定的用户组放置不同的内容,向每位用户提供个性化界面。
(2)改进站点的拓扑结构:依据访问者的频繁访问路径,把访问者频繁访问的页面直接关联起来。
(3)推荐系统:这对于电子商务网站来说非常有帮助,通过挖掘日志数据集,分析访问者感兴趣的页面和商品,推荐相关页面和商品。
Web日志挖掘的应用越来越广,通过研究日志数据,可以得到很多潜在的有意义的信息,不论是对网站的访问者还是网站的经营者都有很大的帮助。本文阐述了Web日志挖掘的相关算法,今后的工作是努力改进算法,提高数据挖掘的效率和准确性。
[1]杨怡玲,尤晋元.SWLMS:一个日志挖掘系统.上海交通大学学报.1999.
[2]吕佳.Web日志挖掘技术应用研究.重庆师范大学学报.(自然科学版).2006.
[3]陈新中,李岩,杨炳儒.Web日志挖掘技术进展.系统工程与电子技术.2003.
[4]韩家炜.Web数据挖掘研究.计算机研究与发展.2001.
[5]陈新中,李岩,杨炳儒.Web日志挖掘技术进展.系统工程与电子技术.2003.