Web日志挖掘的数据预处理研究

来源 :电脑知识与技术·学术交流 | 被引量 : 0次 | 上传用户:tiaozhanwudeshou
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:数据预处理在Web日志挖掘过程中起着至关重要的作用。本文详细分析了数据预处理的过程,并对用户识别提出了改进策略,最后实现了一个Web日志挖掘预处理模型(WLMPM)。
  关键词:Web日志挖掘;数据预处理;用户识别;会话识别
  中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)18-2pppp-0c
  
  Research on Data Preprocessing of Web Log Mining
  ZHAO Na1,2, GE Pu-yang2
  (1.Xidian University,Xi’an 710071,China;2.Information Center of QingHai Architectural Vocational and Technical College,Xining 810012,China)
  Abstract:Data preprocessing plays an essential role in the process of Web log mining. This paper analyses data preprocessing process for Web log mining in detail ,and proposes the modified strategy of user identification,finally realizes a model of data preprocessing.
  Key words:Web log mining;data preprocessing;user identification;session identification
  
  1 引言
  
  随着Internet信息量的剧增,如何帮助用户快速有效地获取自己感兴趣的信息,已成为网站设计者亟待解决的问题。解决这个问题的途径之一就是将数据挖掘技术和Web结合起来,进行Web挖掘[1]。作为Web挖掘的一个重要组成部分,Web日志挖掘是从Web的存取模式中获取有价值的信息或模式的过程[2],就是对用户访问 Web 时在服务器留下的访问记录进行挖掘。通过分析和研究日志记录的规律,可以实现用户聚类、页面聚类和发现频繁访问路径改进Web站点的性能和结构,为用户提供个性化服务等。
  Web日志挖掘过程一般分为三个阶段[3],即:预处理阶段、挖掘算法实施阶段、模式分析阶段。数据预处理的目的就是将原始日志记录经过处理形成用户的会话文件,为挖掘算法实施阶段作好数据准备。目前,Web日志挖掘技
  术发展迅速,作为整个挖掘过程的基础和实施有效挖掘算法的前提,数据预处理环节非常关键。
  
  2 Web日志文件格式
  
  典型的Web服务器日志包括以下信息:IP地址、请求时间、方法(如 GET/POST)、被请求文件的URL、超文本传输协议 HTTP及版本号、返回码(请求的状态,成功或错误返回码)、传输字节数、引用页的URL(指向被请求的页面)和代理(用户使用的浏览器和操作系统的类型)。
  222.212.224.26 - - [02/Jul/2006:06:30:13 0800] "GET /cs/first_page.actionHTTP/1.1" 200 11226 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"就是一条常见的Web服务器日志,其中:222.212.224.26表示请求访问的用户IP地址;02/Jul/2006:06:30:13表示访问时间;GET表示请求的方法;/cs/first_page.action表示被请求的URL;HTTP/1.1表示超文本传输协议及版本号;200表示请求成功的返回码;11226表示传输字节数;“-”表示没有引用页; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)表示用户代理信息。
  
  3 Web日志数据预处理过程
  
  数据预处理是在将Web 日志文件转换成数据库文件以后进行的,其目的是把Web日志转化为适合进行数据挖掘的可靠的精确的数据。这个过程主要包括四个阶段:数据清洗、用户识别、会话识别和路径补充。
  3.1 数据清洗
  数据清洗是指根据需求,对日志文件进行处理,包括删除无关紧要的数据,合并某些记录,对用户请求页面时发生错误的记录进行适当的处理等等。
  当用户请求一个网页时,与这个网页有关的图片、音频等信息会自动下载,并记录在日志文件中,因此可以把日志中文件的后缀为gif、jpg、jpeg、wav、GIF、JPG、JPEG 、WAV等的记录删除(除非图片、音频等是用户显式请求的,即用户所需要的内容正是这些图片和音频等文件)。但是,当挖掘的目的是为了进行网络流量分析或为页面缓冲与预取提供依据时,这些信息又显得格外重要,所以在删除这些记录的时候一定要记录下相关信息。后缀名为cgi、js和JS等脚本文件对后面的分析处理不造成任何影响,也应该删除。常见做法是定义一个缺省的规则库来帮助删除记录,而且这个规则库可以根据正在分析的网站类型进行修改。我们可以预先将网站分为一般网站、图片网站、音视频网站等,分别建立对应的规则库;确定要分析的网站属于哪一类,然后按照该类网站的规则库进行数据清理。当然,还可根据自己的特定需要对规则库进行删改。为了避免到邮件系统和请求教师资源的操作对挖掘产生的影响,我们还删除了邮件系统的记录以及部分教师资源的请求记录,只针对网站的本身进行数据挖掘。
  3.2 用户识别
  结束开始引言引言用户识别的主要任务就是消除代理或防火墙的影响,从日志中还原出每一个请求的用户。在对用户进行访问模式挖掘或用户聚类分析时,用户识别显得至关重要,因为群体是由个体组成的,只有对个体有了清楚的了解,才能识别群体的特征。然而由于本地缓存、代理服务器(网吧、局域网等环境)和防火墙的使用,使得用户识别这一步变得很复杂。
  前人在识别用户时采用的策略中当 IP 地址相同,用户使用的操作系统和浏览器也相同的条件下,则根据网站的拓扑结构进行识别:如果用户请求的某个页面不能从已访问的任何页面到达,则判断这是一个新用户。如果网站的拓扑结构比较复杂,在根据拓扑结构识别页与页之间的关系时,效率会降低。
  为此本文对该策略进行了改进:在用户识别时,不考虑网站的拓扑结构,而是根据引用页来识别,具体策略如下:
  (1)判断用户IP地址,不同的 IP 地址代表不同的用户;
  (2)若IP地址相同,但是用户的浏览器或操作系统不同,则认为是不同的用户;
  (3)若IP地址相同,用户的浏览器和操作系统也相同,则根据引用页判别:如果用户请求的某个页面未被请求过且该记录中引用页为空,则认为是新用户。具体算法框图见图1。
  
  图1 改进的用户识别算法流程图
  
  需要说明的是:并非使用了这些规则就能准确地识别出用户。如具有相同 IP地址的用户若在同样类型的机器上使用同种浏览器,并且请求的页面集合相同,那么很难识别。一个用户使用两种类型的浏览器,或是没有使用站点的链接结构直接输入URL,则容易被认为是多个用户。
  3.3 会话识别
  一个会话(Session)就是用户从进入到离开站点的一系列浏览请求。在跨越时间段较大的Web服务器日志中,用户可能多次访问了该站点,会话识别的任务就是把属于同一用户的同一次访问请求识别出来。
  目前,会话识别的常用方法有3种。最常用的是超时(Timeout)方法。在该方法中,会话的边界是在两个页面请求记录(以下简称记录)的时间间隔超过一定的阈值时确定的。J.Pitkow的实验证明,选择 25.5分钟作为Timeout的时间阈值比较接近真实会话[4]。目前产业界一般选择30分钟为默认的时间阈值。
  Cooley 等人提出了一种事务识别会话的方法,称为序列长度法[5]。经过研究发现,用户浏览页面的模式一般是通过辅助页面到达内容页面,而且用户在内容页面停留的时间往往要比辅助页面的长。这样,如果已知内容和辅助页面的集合,在顺序读取日志记录时,一旦遇到内容页面就找到了会话的边界。但是由于在多数情况下,用户光顾一个站点不可能只对一个内容页面感兴趣,因此该方法形成的会话必然与真实会话有一定的差距。
  最大向前序列的方法是根据用户访问行为划分会话,一旦用户后退浏览已经浏览过的页面时,就找到了会话的边界。这种方法简便,也易于实现,但是由于所发现的会话只表达了用户的部分行为,在准确性方面存在局限性。
  以上3种会话识别方法可能产生如下情况:(1)使原本在同一个会话里的记录被划分在不同的会话中;(2)使原本不在同一个会话的记录被划分在同一个会话中。当这样的不合理划分所占的比例很大时,进一步挖掘和分析所得到的结果就会受到影响,甚至是错误的。
  基于此,文献[6]提出了会话识别的优化算法,并通过合并和断开两种操作对最常用的Timeout方法所得到的会话进行优化,使会话质量得到了提高。文献[7]提出了一种改进的基于时间间隔的识别方法。该方法通过使用访问时间间隔超出某个阈值来识别会话.通过为页面设置访问时间阈值,并根据页面内容及站点结构确定的页面重要程度对该阈值进行调整。该方法相对于传统的使用单一先验阈值进行会话识别的方法,能更准确地确定页面访问时间阈值,而且可以有效的识别出长会话。
  由于超时方法比较简单,我们开发的Web日志挖掘预处理模型在进行用户会话识别时,依然采用这种方法,选择30分钟作为超时间隔。
  3.4 路径补充
  由于浏览器本地缓存和代理服务缓存的存在,当用户调用已访问过的页面时,将直接从本地或代理的缓存中提取,服务器日志将遗漏对这些页面的请求。路径补充的任务就是将这些遗漏的请求补充到用户会话中。
  路径补充的方法是:依次扫描每一个用户会话,若当前访问的页面与以前访问的某个页面存在超链接,则说明该用户是通Back按钮,从本地Cache中调出该页面的历史记录链接到当前页面。如果会话中相邻两页之间没有超链,说明用户很可能使用了缓存中的页面,则检查引用日志确定当前请求来自哪一页,如果在用户的历史记录上多次出现引用页,则将请求时间最接近当前请求页的页面作为当前请求的来源,并将该来源页补充进用户会话中。若引用日志不完整,可以使用站点的拓扑结构。
  根据数据挖掘处理任务的不同,有时还需要进行格式化操作,主要是根据即将进行的挖掘任务,将前期预处理后的数据转换成所需的数据格式。如进行用户访问模式挖掘,还需要进行事务识别,将会话进一步细分为具有一定语义的事务。
  
  4 实验结果
  
  根据以上内容,笔者实现了一个Web日志挖掘数据预处理模型(WLMPM),如图2所示。使用编程平台为VB.net,Access 数据库,实验数据取自某大学计算机学院2006年7月9日~2006年7月16日的服务器访问日志,日志中原始记录为19 5154条,经过数据清洗:掉cs-method 中非200 的记录,去掉后缀名为.jpg,.jpeg,.gif,.bmp,.wav的请求,去掉查询操作和邮件系统操作的请求,去掉部分教师资源的请求,剩余记录18 263条(是原始日志记录个数的10%)。用传统的用户识别策略得到2 528个用户,使用本文提出的用户识别改进策略,共得到3 163个用户,说明改进后的方法具有更好的识别效果,且在网站拓扑结构比较复杂的情况下,时间复杂度较低。
  
  图2 WLMPM的体系结构图
  
  4 结束语
  
  面向Web日志挖掘中的一个重要的前提和基础就是Web日志数据准确性。只有准确的数据才能正确地反映使用者的意图,才能保证分析沿着正确的方向进行。高质量的Web日志挖掘必须依赖高质量的数据[8],因此,数据预处理工作既要保证信息无失真的转换,又要保证过滤删除掉某些对以后挖掘无影响的数据。本文所做的工作就是对传统的Web日志挖掘预处理过程进行详细分析,并提出了用户识别的改进策略。同时实现了一个Web日志挖掘预处理模型(WLMPM)。目前,如何提高与改进Web日志挖掘预处理技术,确保输入Web日志挖掘的数据正确高效已成为一项重要课题和研究方向。
  
  参考文献:
  [1]韩家炜,孟小峰,王静,等.Web挖掘研究[J].计算机研究与发展,2001,38(4):405-414.
  [2]CHAKRABARTIS.Data mining for hypertext:A tutorial survey[J].SIGKDD Exploration,2000,1(2):1-11.
  [3]杨怡玲,管旭东,陆丽娜,等.一个简单的日志挖掘系统[J].上海交通大学学报.2000(7):35-37.
  [4]Catledge L,Pitkow J.Caraeterxizing Browsing Strategies in the World_Wide_Web[J].Computer Networks and ISDN System,1995,27(6):1065-1073.
  [5]Cooley R,Srivastava J.Grouping Web page references into transactions for mining world wide Web browsing patterns [A].Proceedings of KDEX’97[C].Newport Beach,CAUSA 1997:2-7.
  [6]陈子军,王鑫昱,李伟.一种Web日志会话识别的优化方法[J].计算机工程,2007,33(1):95-97.
  [7]殷贤亮,张为.Web使用挖掘中的一种改进的会话识别方法[J].华中科技大学学报,2006,34(7):33-35.
  [8]赵莹莹,韩元杰.Web日志数据挖掘中数据预处理模型的研究与建立[J].现代电子技术,2007(4):103-105.
  收稿日期:2007-12-08
  作者简介:赵娜(1976-),女,西安电子科技大学在读硕士,研究方向:数据挖掘;葛蒲阳(1957-),男,高讲,研究方向:计算机网络。
其他文献
摘要:INTERNET网络的迅速发展使宽带进入了寻常百姓家,网络爱好者们也勇于尝试,在自己的机器上建设自己的网站成为时尚, Win 2000漏洞百出,Win 2003又专门为服务器设计的,而LINUX或UNIX系统在平时又是很少使用。本文介绍了在WINXP环境中利用IIS架构自己的网站的方法。利用Windows XP的组件就可以满足建站的要求,而且安全性能不错。  关键词: Web;FTP;IIS
摘要:江苏省农业种质资源信息系统及基因库建设项目是江苏省农业种质资源保护与利用平台中的一个子平台。平台由水禽种质资源基因库、水禽研究开放实验室、水禽信息中心、水禽推广服务中心等构成。项目中的重要内容之一是构建水禽信息化中心,根据《江苏省农业种质资源保护与利用平台建设总体方案》的要求,要研究和完善水禽种质资源的描述规范,标准化整理,建立江苏省水禽种质资源数据库,通过e-平台和江苏省科技信息共享网络系
摘要:本文介绍了济南市气象网站的建设及其主要结构和网页内容. 济南气象网站发布的信息内容主要为系列气象预报和其他气象信息,实现了网页气象信息的自动更新,介绍了互联网技术在气象服务中的应用。  关键词:气象网站;气象信息;自动更新;后台管理  中图分类号:TP393文献标识码:A文章编号:1009-3044(2008)17-20ppp-0c    Internet Technology in Met
摘要:IPv6技术是下一代互联网的技术核心,对IPv6网络入侵检测系统的研究与下一代网络的安全技术紧密相关。在分析网络安全系统的基本原理和IPv6网络的主要特点之后,提出了一种基于IPv6网络入侵检测系统的框架,同时采用了改进的KMP算法和蜜罐技术。  关键词:IPv6;网络入侵检测;模式匹配;蜜罐技术  中图分类号:TP393文献标识码:A文章编号:1009-3044(2008)18-2pppp
摘要:本文描述了一种在TCP/IP网络中进行故障节点诊断的程序实现,该方法基于VxWorks操作系统的网络测试仪环境,但此程序算法的实现,并不依赖于底层的操作系统及硬件环境,经过少量修改可以在任何提供TCP/IP协议栈的操作系统中实现,比如Linux,Windows等。  关键词:ICMP;TCP;UDP;路由追踪  中图分类号:TP393文献标识码:A文章编号:1009-3044(2008)18
摘要:采用自定义主体Principal和身份Identity实现基于窗体的安全验证,构建了一个灵活方便的安全权限管理系统,综合使用了数据库技术、面向对象设计技术、操作系统权限管理、NET框架中基于代码访问安全性和基于角色访问安全性等多方面技术。该方案可以用于多数WEB系统中,作为通用的安全权限管理模块。  关键词:身份验证;自定义主体;自定义身份  中图法分类号:TP311文献标识码:A文章编号:
摘要:介绍了Java平台安全、J2EE安全体系结构。以一个登录请求为例,重点研究了J2EE架构在医师协会管理系统中的应用,以及使用J2EE安全体系结构构建医师协会管理系统。  关键词:J2EE;安全体系结构;医师协会管理系统  中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)18-2pppp-0c    Security Research on Medical Doct
摘要:《Visual Basic .Net》是软件技术专业的核心职业技能课之一,其先修课程有计算机基础、Java编程基础、数据库应用技术等,其后续课程有.NET项目开发实训、WEB应用开发技术等。本文参考国际软件专业教育或培训的方法,探讨在工学结合人才培养模式下、基于工作岗位的该课程的改革与整合。  关键词:VB.Net;工作岗位;软件;职业教育;课程改革与整合  中图分类号:G646 文献标识码
摘要:本文探讨了Honeynet(陷阱网络)的概念、实现、特点。阐述了从主动防御的角度解决网络安全的问题,从而将入侵者的行为引入一个可以控制的范围,了解其使用的方法和技术,追踪其来源,记录其所有的操作。  关键词:网络安全;陷阱网络;主动防御;入侵检测  中图分类号:TP393文献标识码:A 文章编号:1009-3044(2008)18-20000-00    The analysis and i
摘要:基于Hypercube模型的P2P资源搜索策略和路由策略,是以单纯广播方式进行的,搜索和路由效率比较低.因此提出了“一跳复制”技术以及改进算法RA1,提高了搜索和路由的效率,同时增强了P2P网络的效率和健壮性。  关键词:一跳复制; RA1算法;路由表  中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)18-2pppp-0c    Improvement of P