当前位置:文档之家› 谢运洁-浅论Web使用挖掘

谢运洁-浅论Web使用挖掘

浅Web使用挖掘谢运洁(武汉大学信息管理学院,重庆教育学院图书馆重庆 400067)摘要:系统介绍了Web使用挖掘的相关概念、基本流程以及各种方法在Web使用挖掘中的应用。

关键词:信息分析数据挖掘 Web使用挖掘正文:0引言随着Internet和网络技术的进一步发展,许多企业机构都拥有了自己的Web站点,向用户提供各种基于Web的信息服务,如电子商务、网上银行、用户反馈、技术支持等等,对他们来讲,如何更好地向用户提供更具有针对性的服务,根据用户的网络行为来推测企业未来的发展策略变得十分重要。

同时,Web网页在以惊人的速度增长,新闻、广告、教育、经济等各种信息充斥在用户面前,加上其更新速度也越来越快,使得用户在信息的海洋中无所适从,如何把信息在恰当的时间、恰当的地点以恰当的方式提供给用户更是我们必须解决的问题。

Web使用挖掘,其任务是挖掘Web用户的行为模式,根据挖掘结果改进站点结构,减少用户在获取所需信息或产品之前的寻找时间,向特定用户主动提供个性化服务。

1基本概念1.1Web数据挖掘Web数据挖掘是指利用数据挖掘技术对Web存取模式、Web结构和规则,以及动态Web内容的查找。

一般地,根据挖掘对象的不同,可以将Web数据挖掘分为三大类:Web内容挖掘(Web Content Mining)、Web结构挖掘(Web Structure Mining)和Web使用挖掘(Web Usage Mining),另外web结构挖掘可以被认为是Web内容挖掘的一部分,这样可以简单的把Web挖掘分为Web 内容挖掘和Web使用挖掘。

1.2Web使用挖掘Web使用挖掘是指利用数据挖掘技术对Web服务器中的日志记录进行分析,发现各种用户使用模式的过程,其目的在于更好的为用户提供各种服务。

Web使用挖掘可以挖掘出用户的隐藏信息,根据用户行为趋势确定企业未来的战略方向。

Web使用挖掘的基本流程主要包括数据准备、数据预处理、模式发现和模式分析几个步骤。

2数据准备Web使用挖掘的数据来源大致可分为三大块:服务器端(Server Log File)、中介代理端(Intermediary Data)以及客户端(Client Side Data)。

2.1服务器端数据2.1.1服务器日志文件(Server Log File)Web服务器日志文件是一个存储用户基本信息、描述用户浏览行为信息的文件。

特别是,它可以存储用户浏览网页时沿着网页链接所产生的点击流序列信息,是Web使用挖掘的主要数据来源。

Web服务器日志通常以两种格式存储文件:普通日志文件格式(Common Log File Format),它可以存储用户IP、用户名、请求文件名、文件大小及服务器名等最基本的信息;扩展日志格式(Extended Log Format),存储了一些额外的信息,比如主机地址、请求日期和时间、用户名、传输字节数、事务完成时间等。

Web使用挖掘把Web服务器日志作为主要的数据来源,但是由于Web高速缓存等的使用,Web服务器日志文件也有不尽人意的地方。

如,Web高速缓存是为了降低数据传输延迟而使用的工具,当用户提出请求时,缓存中会存储一份请求副本,若用户再次提出相同的请求,缓存会直接使用此副本而不会向服务器提出新的请求,这样,服务器日志文件中就不会存储这一请求的相关信息。

2.1.2Cookie除了使用Web服务器日志文件外,在Web使用挖掘中,Cookie也是重要的数据来源。

Cookie 是存储在用户计算机中包含会话信息的一个很小的数据文件。

它记录了用户会话信息,如用户ID、密码、浏览过的网页、停留时间等信息,都是Web使用挖掘所需的重要数据,特别是对后面的会话识别具有非常重要的作用。

但同样,Cookie也存在一些不够完美的地方,比如:多用户共用一台计算机时生成的信息会存储于同一个Cookie中,除非是多用户操作系统;单用户使用多台计算机时服务器也会认为是不同用户;另外用户出于隐私的考虑,有可能关闭了Cookie功能。

2.1.3用户注册信息多数Web网站需要用户注册,通过用户注册信息可以获得最直接、清楚的信息,如年龄、职业、收入等。

但如果站点是一般性网站,用户通常不会如实填写。

只有像网上银行这样对用户注册信息经过严格审核的网站,可以获得详细的用户信息,其真实度也较高。

但这也涉及用户隐私必须获得用户的同意,不是理想的渠道。

2.2中介代理服务器数据(Intermediary Data)2.2.1.代理服务器(Proxy Server)代理服务器是介于用户浏览器和Web服务器之间的一台服务器,当用户通过代理服务器上网时,浏览器不是直接向Web服务器提出请求,而是先向代理服务器发出请求,代理服务器在缓存中查找是否具有用户需要的信息(用户最近使用过),如果有就直接返回给用户,否则代理服务器代替用户向Web服务器发出请求,Web服务器再返回给代理服务器,代理服务器保存一份副本再传给用户。

类似于服务器日志,代理服务器也使用日志来记录用户的请求信息,因此代理服务器日志也是Web使用挖掘数据的重要来源,但是,还是存在像Web服务器一样的问题,即高速缓存的使用。

2.2.2嗅探器(Sniffer)Sniffer是一种利用以太网的特性把网络适配器置为杂乱模式状态的工具,一旦网卡设为这种模式,它就能接受传输在网络上的信息包,Sniffer分为软件和硬件两种。

使用Sniffer 的好处是可以获得即时信息;其次,重要的是所获得的信息不是存在LOG文件中的,便于整理;这些信息中包含详细的用户请求时间、服务器反应时间、用户名甚至用户口令等。

但其缺点是不能肯定收集到所有用户访问信息,最严重的是Sniffer通常是黑客使用的工具,对用户是种严重的隐私侵犯。

2.3客户端数据(Client Side Data)从客户端获取的数据较从服务器端获取的信息准确,因为不存在上文提到的缓存问题。

一个最常见的收集客户端数据的技术是利用远程代理(Remote Agent),通过Java或Javascript嵌入Web浏览器实现。

但收集客户端数据仍然有缺陷,例如隐私问题,需征得用户的同意。

3数据预处理这阶段主要完成对数据的清洗、过滤掉多余不相关的数据,和转换等过程,从中抽取出挖掘目标所需的会话和事务。

3.1数据过滤(Data Filtering)这一步的主要任务是对在数据准备阶段获得的数据进行过滤,剔除不相关和冗余的数据,特别是对从Web服务器和代理服务器中获得的数据进行过滤,因为它们记录了用户的所有行为包括一些与挖掘需求无关的行为;对用户注册信息进行确认、纠正和规范化等。

3.2.用户识别(User Identification)用户识别就是正确解决上文中提到的多用户共用一台计算机、单用户使用多台计算机等问题。

通常,单独一个IP地址是不能作为用户识别的标准的,因为一个IP地址有可能有多个用户在使用,而反之,同一用户也有可能有多个IP地址。

由于本地缓存和代理服务器的使用,使得有效识别和跟踪用户浏览行为非常复杂。

另外,如果可以使用Cookie,则可以更好的区分用户,但用户可能会出于隐私等原因而禁止了Cookie功能,所幸的是,据调查,90%以上用户的Cookie都可用。

3.3.会话识别(Session Identification )会话是一组由一个用户在一个时间段中向一个Web服务器请求的连续性的网页浏览集。

在Web使用挖掘中用户会话识别也是一个不可忽视的重要步骤,因为会话文件中包含用户的浏览行为信息,对于后面的模式发现有重要作用。

会话识别是基于这样一个前提:如果一个会话超过预定的时间戳,则这个时间点就是第二个会话的开始点。

由于浏览器自己的缓存机制和代理服务器的使用也会造成会话信息在日志中的缺省。

各种各样启发性的方法已用于用户会话识别。

Spiliopoulou于1999年将这些方法分为两类:基于时间和基于内容的方法。

基于时间的方法是使用一个时间上限值来标识用户浏览一个网页的会话或是一个连续性的会话,这个时间上限值通常为25.5-30min;基于内容的方法是根据网页的相关性将一个用户连续浏览的网页分成若干组,每一组即为一个会话。

3.4.事务识别(Transaction Identification)事务识别是指把用户在同一会话中浏览的网页划分为代表Web事务的逻辑单元。

用户在会话中所浏览的网页可以分为辅助页(AuxiliaryPage)和内容页(ContentPage)。

辅助页用于导航,即用户获得目标信息之前为了查找而点击的网页;而内容页就是向用户提供目标信息的页。

通过区分辅助页和内容页,可以获知网页对用户的重要性程度。

在生成事务文件时通常可生成两类事务文件:辅助-内容事务文件(Auxiliary-Content Transaction),从起始页到第一个内容页出现之间的浏览序列;内容事务文件(Content-Only Transaction),只包含内容页。

事务识别的方法主要有参考长度法(Reference Length)、最大向前参考法(Maximal Forward Reference)和时间窗口法(Time Window)。

参考长度法是根据判断用户花在一个网页上的时间来确定把它分为辅助页里还是内容页。

最大向前参考法是将一个事务确定为一个用户在一个会话中从起始页直到用户执行第一个后退键为止,它以用户的后退行为作为一个事务的终始点。

时间窗口法是根据用户在网页上停留的时间来直接划分事务,它不能区分出辅助页和内容页。

会话识别和事务识别在web使用挖掘中非常重要,直接影响后面的模式发现结果。

4.模式发现(Pattern Discovery)在这一阶段,在数据预处理的基础上,根据挖掘需求选择相应的模式发现方法。

常见的用于模式发现的方法有:聚类分析、分类、关联规则分析和时间序列分析四种。

分类是最早用于Web使用挖掘的方法。

但分类属于有指导学习,有指导学习需为数据做标识,而Web挖掘的对象是海量数据,对其进行标识并不现实,因此促使了无指导学习方法的产生,特别是聚类分析法。

4.1聚类分析法聚类分析的目的是要将数据集分成若干个类或簇,使得类中的对象之间具有高度相似性,而类间具有高度相异性。

为了降低误差,根据使用的相似性计算方法的不同,可将聚类分析法分为两类:一是对样品进行分类,称为Q型聚类分析,所用的统计量常用“距离”这一数据描述;二是对变量进行分类,称为R型聚类分析,所用的统计量常用“相似系数”这一术语描述。

在Web使用挖掘中,其目的是对会话和事务进行聚类,而每个会话和事务由多个属性构成,属于Q型聚类分析,这时其相似性要用“距离”来表示,但有的时候需要对属性或变量进行聚类时属于R型聚类分析,其相似性计算应该用“相似系数”。

相关主题