ISSN 1009-3044 E=maih jslt@cece.net.cn ● computerKndwledge andT ̄hnology电脑知识与技术 Vo!.7,No.10,April 2011,pp.2222—2223 http://www.dnzs.net.cn Te1:+86—55 1—5690963 5690964 Web日志预处理技术探析 贾丙静,吴长勤,王传安,葛华 (安徽科技学院理学院,安徽风阳233100) ,● . 摘要:随着lnternet的普及,web日志挖掘成为一个新的研究课题。由于Web日志数据的半结构化,为了得到有效的挖掘模式,提高 挖掘算法的效率,首先需要对数据预处理。该文详细介绍了web日志数据预处理的四个步骤:数据清洗,用户识别。会话识别和路 径补充,并实现了对某校院网日志记录的预处理.得到了理想的结果。 关键词:数据预处理:数据清洗:用户识别:会话识另lJ 中图分类号:TP393 文献标识码:A 文章编号:1009—3O44(20l1)lO一2222—02 Web日志挖掘_ll就是通过分析保留在服务器上的用户访问日志记录,从而发现用户访问Web页面的模式,分析用户在.Web站 点的访问Et志可以帮助理解用户的行为和Web的拓扑结构,帮助网站管理人员改进站点的结构,提高站点的访问率,带来一定的经 济效益。但由于原始日志数据是半结构化的数据,其中包含了大量有缺陷的、冗余的原始数据,不能拿来直接进行挖掘,因此在对其 进行挖掘之前,必须要对它进行预处理。 ’Web日志数据进行删除、筛选、重新组合,最后转化为能直接进行挖掘的数据格式,并保存到数据库中,以便于下・步的处理。 主要由数据清洗,用户识别,会话识别,路径补充四个步骤来完成。 1数据清洗 数据清洗121就是将不一致、无关的数据从Web日志数据源中清除掉。可以建立以下规则对日志数据进行缩减。 1)辨别URL,删除无关记录。 在日志挖掘中,只有用户主动请求的URL对分析挖掘才有用处,如果网站是以文本内容为主的网站,就要把伴随页面一块下载 下来的图片、音频等与内容无关的信息从日志文件中删除掉,也就是删除后缀为gif、JPg、jpeg、bmp、ap3、rpng、cgi、js、CSS的URL。但是 如果网站以图片为主,应保留后缀为gif、JPg、jpeg、bmp的URL,删除其它后缀的URL。所以,应该根据不同的挖掘目的,辨别URL。 2)辨别状态码,删除错误记录。 如果用户请求失败,在Web日志中也会保留这些情况,但这些记录对日志挖掘来说是没有意义的。所以在进行数据清洗的时 候,可以通过辨别日志中的状态码,删除状态码以4开头或以5开头的记录。 3)辨别请求类型。三种最常见的请求类型是:GET、POST、HEAD。只有GET是用户请求页面的操作,其它请求类型的记录则可 以删除 4)删除无关的属性。Web日志文件中记录了用户日期(date)-,时间(time)、客户IP地址(c—ip)、服务器IP(s ̄ip)、发送字节数(sc— bytes)等属性。这些并不都是挖掘所需要的,因此可以根据挖掘目的只选择保留用户访问时间、用户的IP地址和所请求的页面等属 性,删除其它属性。 本文采集某学院2008年7月30号 的服务器日志文件做为研究对象,根据 Web日志的格式和内容.依据以上四条 规则清理。该日志文件中原来有48350 表l数据净化处理后的Web日志记录 条日志记录.经过数据清理后有2420条 记录,净化率达到95%。表1是数据净化 后的5条日志记录。 2用户识别 用户[31是指通过浏览器访问一个或 多个站点的个体。用户识别是从数据清洗后的数据中识别每个访问网站的用户。目前.用户识别的常用方法有IP地址/Agent、注册、 使用Cookies等。到现在为止还没有一种通用的方法能够完全准确的识别出用户。常使用IP地址/Agent类型以及一些临时信息综 合起来标识一个用户。具体方法是: 第一步,优先考虑IP,IP不同则表示不同的用户。 第二步,综合考虑浏览器、操作系统,IP相同,但是用户的浏览器或操作系统不同,则认为是不同的两个用户。 第三步,IP地址相同,用户的浏览器和操作系统也相同,构造每个用户的浏览路径,判断用户当前请求访问的页面与之前浏览 收稿日期:2011—02-18 . 基金项目:安徽科技学院引进人才基金项目(ZRC2008176);安徽省教育厅自然科学基金项目(KJ2009B121Z) 作者简介:贾丙静(1982-),女,山东曹县人,硕士,助教,主要从事Web日志挖掘的相关研究。 2222 数量席与信息蕾曩¨ 本栏目责任编辑:代影 第7卷第10期 (2O11年4月) ComputerKnowledgeandTechnology电脑知识与技术 过的页面之间是否有链接。如果没有直接的链接,则认为是具有相同IP的多 表2用户识别结果 个用户.如果有则表示是一个用户。 我们从校园网上采集的日志数据,用户主要是学生、教师、领导、家长等。 大多是通过校园网或者公网访问,而只有少数人通过代理服务器访问,在上述 3条规则的基础上,我们分析了采集到的Web 13志数据,标识这段时间内访问 该校院网的用户。表2示意了用户识别的结果。 3会话识别 用户会话 是指用户对服务器的一次有效访问。通过其连续请求的页面,可以发现用户的访问行为和浏览兴趣。显然不同用户 请求的页面属于不同的会话。当某个用户的页面请求在时间上跨度比较大时,就有可能是该用户多次访问同一个网站,可以将用户 的访问记录分成多个会话来处理,这就叫做会话识别。会话识别有多种算法,有的基于时间进行划分,有的则依据站点的拓扑结构。 现有的会话识别方法分为三类,下面分别来介绍。 3.1设置会话固定时间阈值 给用户一次会话时间设置一个阈值0。即会话的最后一个页面访问时间tn与会话的第一个页面访问时间t,,两者的时间差tn— t ≤0,则认为是同一个会话,如果超过这个阈值则认为是新会话的开始。该阈值一般设定为30分钟,但是L.Catledge和J.Pitkow由 实验得出设为25.5分钟更合理一些。 . 3.2设置页面访问时间阈值 ’给用户一个页面停留时间域值‘。假设(Pi,tJ,(P +.,t )为一个用户访问序列中的两个相邻访问页面。当 + 一‘<郭寸,认为这两个页 面属于同一个会话。当 -一 时,表示当前会话结束,新会话开始,P;是上一次会话的结束页, 是新会话的开始页面。通常取‘ 为lOmin。 3.3设置基于引用页划分 首先给连续页面访问时间间隔定一个上界,如果这两个连续访问的页面中,一个页面的引用页和另一个页面在一个会话中,而 这两个连续页面的请求时间小于上界,则认为这个连续访问的页面在伺一个会话中。 . 本文采用3.1介绍的设置会话固定时间阈值来划分会话,阈值大小为25.5rain。在数据清洗和表2给出的用户识别的基础上,首 先找到每个用户所有的访问页面,然后按照访问页面的时间排序日志记录,形成用户访问页面序列,然后再根据时问阚值将一个用 户的会话分为不同时间段的多个会话。 4路径补充 由于本地缓存和代理服务器缓存的存在,有些用户的请求并没有在Web 13志中记录下来,因此,为了挖掘有意义的用户访问模 式,需要把这些访问路径修补完整。路径补充 需要结合站点的拓扑结构以及Et志中的引用域,遵循以下原则: 1)通过浏览器上的“后退”按钮得到的网页,是从本地缓存区中调出的,一般是不记录在Web日志中的,导致该页与上次请求 的页面之前没有超链接关系。因此,可以依据网站的拓扑结构把用户的访问路径补充完整。 2)如果用户当前请求的页面和在Web Et志中记录的以前访问的多个页面都有链接,那么认为用户是通过访问时间与当前请 求最近的页面得到的。 根据以上原则,能够把日志中遗漏的页面补充在会话路径中。经过数据清洗,用户识别,会话识别.和路径补充后。原先20.56MB 的日志文件已经变为1.45MB,识别出165个用户,123个页面,形成了200个用户会话。 5结束语 数据预处理是Web Et志挖掘的第一阶段,预处理的结果直接影响到挖掘算法产生的规则和模式。本文详细介绍了Web日志预 处理的四个步骤,并完成对某校园网日志记录的预处理。处理结果表明,本文方法还有很多不足之处,比如没有利用用户的注册信 息,会话识别效率和准确率都太低,下一步应该改进会话识别算法,攻克单一用户在多IP地址上网的识别,提高整个预处理的效果。 参考文献: [1]李桂英,李吉桂.基于模糊聚类的Web日志挖掘[J].计算机科学,2004,31(12):130-131. [2]于飞,丁华福,姜伦.Web日志挖掘中数据预处理技术的研究[J】.计算机技术与发展,2010,20(5):47—50. 【3]李甲林.Web日志挖掘中的数据预处理技术研究与实现[J].电脑知识与技术,2009,5(14):3602—3610. [4]刘炜,陈俊杰.一种Web使用模式挖掘模型的设计[J].计算机应用研究,2007,24(3):184-186. 【5】Robea Cooley,Bamshad Mobasher,Jaideep Srivastava.Data prepara-tion for mining world wide web browsing patterns[J].Knowledge and in—formation systems,1999,1(1):5—32. ’ 本栏目责任编辑:代影 数据库与值息蕾曩 2223