99网
您的当前位置:首页基于Web日志挖掘数据预处理技术的研究

基于Web日志挖掘数据预处理技术的研究

来源:99网
维普资讯 http://www.cqvip.com 2007年第6期 福建电脑 19 基于Web日志挖掘数据预处理技术的研究 (1.武夷学院(筹)现代教育技术中心福建武夷山354300 .2.福州大学数学与计算机科学学院福建福州350002) 陈荣旺12 郭红 【摘要】:数据预处理是Web日志挖掘中的关键和重要一步,文章分析了Web日志挖掘的数据预处理过程,并给出基 于日志参引页的用户ie, ̄l、路径补全算法和基于一种时问窗口模型的会话划分算法。 【关键词】:Web日志挖掘数据预处理算法 3志与站点结构,按以下启发式规则处理 互联网技术和应用的迅速发展使得可以从因特网获取的信 般常用的方法是结合1息量日益剧增.为此迫切需要一种新的技术从这些信息中快速、 日志中的每条记录: 及时地发现有用的知识,提高信息的利用率。Web日志挖掘属于 3.2.1不同的IP地址代表着不同的用户: 3.2.2如果IP地址相同.但是代理13志中表明用户的浏览 Web使用挖掘的范畴,作为数据挖掘技术研究的一个重要领域, 是指采用数据挖掘的技术,通过对Web服务器日志中大量的用 器或操作系统改变了。就应当认为每个不同的代理就表示不同  户访问记录深入分析.发现用户的访问模式和兴趣爱好等有趣、 的用户:3.2I3针对由上得到的每一个暂定用户.根据访问13志、引 新颖、潜在有用以及可理解的未知信息和知识,用于分析站点的 用13志和站点拓扑结构.构造出他的浏览路径。如果当前请求的 页面的引用页不在已浏览的页面系列中,则认为存在另外具有 1.Web日志挖掘的过程 Web日志挖掘的过程一般分为数据预处理阶段、挖掘算法 相同IP地址与代理的用户。 下面给出的是iD和agent均相同的访问序列基于日志参引 实施阶段(模式识别)、模式分析阶段。图1给出了日志挖掘的过 页面的用户识别算法。 /广设n(1<=i<=n)为ip和agent均相同且按时间升序排列的 某暂定用户访问序列,Li.purl为D的参引页,Ux为识别后的用 使用情况.从而辅助管理和支持决策。 /  \ 亟 巨 土 . ・=二=苎苎 兰== 亟i . 户访问序列。 x=l;Ux=【J;i=l:Ux=Ux+IIjl: for a.2;k-n:i¨) {for O .J>=l;'-.) 图1:Web日志挖掘过程 2.WEB服务器日志记录 般Web服务器日志文件中记录的是每个访问用户的信 一if(in(Li.pud,uj))//判断“的参引页面是否在Uj中 I Uj=Uj+IU},'// ̄Li加入最近的Uj序列中 break;l x++ 增加用户 Ux=Ux+{Li}; l 息.由于服务器或参数设置不同,得到的Web 13志文件中记录 的信息也会有所不同,但其中都包含有访问用户的基本信息。如 如有某暂定用户访问序列(在此以请求的WEB页面和参引 日期、时间、用户IP、服务器IP、方法、所请求的URL资源、用户 代理、参引页面、服务器响应状态等许多信息。 页面对表示)为:L=f(A,一),(B,A),(L,一),(F,B),(R,L),(0, 3.Web日志挖掘的预处理过程 F),(G,B),(D,A)l,按上述算法有识别后用户访问序列U1=f(A, 数据预处理的目的是将Web使用日志转化成特定算法所 ),(B,A),(F,B),(0, ,(G’B),(D,A)l,u2=f 一), ,L),l。 需要的数据结构.预处理工作的好坏直接影响到后续工作是否 3_3会话识别 个会话(session)是指用户从进入到离开站点的一系列浏 得到理想的结果,同时也决定了最终挖掘出的知识可信度。因 一一此.数据预处理工作是很关键与重要的一步。 览请求.在跨越时间段较大的Web服务器13志中,用户可能多 Web日志挖掘的预处理过程通常包括数据净化(清洗)、用 次访问了该站点.会话识别的任务就是将属于同一用户的同一 户识别、会话识别和路径补全等。 次访问请求识别出来。 3.1数据净化 会话的划分有许多算法,有的依据时间。有的依据站点拓扑 数据净化是指删除Web日志中与挖掘算法无关的数据,多 结构.如一种常用的基于时间窗13模型的会话划分规则为:给用 数情况只有日志中HTML或ASP文件与用户会话相关.一般不 户在整个站点停留时间一个上界.若超过这个域值X则认为新 会显示地请求页面上的图形文件.它是根据页面的超文本链接 会话开始。设t0为会话初始页时间戳,一个URL请求的时间戳 自动下载的 因为Web日志挖掘的目的是获得用户的行为模 t,若满足t-tO<=x,则被加入这个会话,第一个满足tO+x<t的页 式,并不关心那些用户没有显示请求的文件,所以通过检查URL 面成为下一会话的初始页。x一般取30rain。其算法描述如下: 的后缀删除认为不相关的数据。如将日志中文件的后缀名为 ,,令一个用户的站点访问序列表示为用户请求的WEB页 sif、jpeg、Jog、js、swf和js等请求项删除,具体到实际的系统可使 面和时间对(url,time)的集合,即U=<(urll,time1),.-.,(urin,timen)>, 用一个缺省的后缀名列表帮助删除文件.列表可根据正在分析 其中timej>timei,当i>i时 的站点类型进行修改。如对一个主要包括图形文档的站点,日志 //- ̄-Si为一个用户在规定时间内请求的WEB页面序列.即 中的图形文件可能代表了用户的显示请求.此时就不能将图形 基于时间窗口模型的会话 x=3Omln;tO=timel;i=1;Si=<(urll,time1)>; 文件删除 f0r 0【.2;k<=n;k++) 3.2用户识别 It=tir ̄k; 由于本地缓存、代理服务器和防火墙的存在,使用户的识别 if(t-to<--- ̄) 变得复杂了。最佳的处理办法是依赖用户合作,但难以做到。一 将(urik,amek) ̄A Si中; (下转第16页) 基金嘎目:武夷学院(筹)青年学术研究支持计划(顷目踌号:XQL0 ̄17) 维普资讯 http://www.cqvip.com 16 福建电脑 R ̄ult:=TStringl ̄st.Create; foriy:=1 toRowCount do for :=l toColCount do 2007年第6期 Tmatrix。用以进行用户聚类。然后将其进行预处理。所有大于1 的值调整为1。 ④利用对象之间的相似性(hamming距离),再次构建矩阵 Tmatrixl。 begin if C,etCellDataEx(ix,iy)=0 then Continue; sTemp.- ⑤计算阈值。 ⑥比较Ml中的元素与阈值K的大小,若Ml[i,j]<K,则将i 与i归为一类。遍历所有满足条件的i和i,得到类的集合G。 f0rii::ix+1to ColCount do if GetCel/DataEx(ii。iy)=0 then Continue else 程序算法基本思路参照文献『21,并对导人数据源进行调整,使其 更有利于进行挖掘。开发出来的程序Webl0gdigP界面如图1。 fi ABS(GetCel/DataEx(ix,iy)一C,etCdlDataEx(ii.iy))<=Value then b ̄gin fi sTemp ”then sTemp.- r+FStorag ̄ix].s乜in o]; sTemp|-sTemp+ +FStorage[il].S乜ir gs【0J; end; fi sTempo”then sTemp|=sTemp+1 fi sTemp o”then R ̄ult.Add(sTemp); ,,页面聚类结果的表达 end; 4.结束语 图l程序We ̄ogdigP界面 本程序WeblogdigP已经开发并运行通过,经测试,其结果 有较高准确性;同时由于是直接操作虚拟表,因而快捷方便,没 有占用不必要的内存空间;其矩阵都是根据需要而动态生成的, 这样有利于日后程序的扩展与改进。作者在此提出的实现方案 和实例是可行有效的,可供有兴趣的同行参考和借鉴。 参考文献: 1.Jiawei Hart.Micheline Kamber.Data Mining Concepts and Techniques [M1.机械工业出版社.年 2.宋擒豹,沈钧敷.Web日志的高效多能挖掘算法【q.计算机研究与发 展.2001.3 部分核心代码 本文程序设计和运行的软件环境:Windows XP+Delphi 7。 ①建立虚拟表查询代码: tbFlits表:SELECT URL,UserlD,URLLeveL Count(*)AS Hits FROM tbPrim— Data GROUP BY UserID.URL,URLLevel ORDER BY UserlD。URIL ̄veL U tbURL表:SELECT DISTINCT URL URIL ̄vel FROM tbPrimData ORDER BY URLLevei; 3.J.Sfivmmv ̄P.Cooley,M.Deshpande and P.Tan,Web usage mining ̄dis- ra ̄olxs,1(2):12-23.2ooO. y and appficafiom of usage patterns from web data.SIGKDDExpIo- tbUser表:SELECT DISTINCT Userm FROM tbPrimData ORDER BY UserID: cover②用户群体聚类算法源程序如下: function"/'Matrix.GetUserAggzegateResuh('Value:Integer):TSu-lngs; Vm" 4.涂承胜,陆玉昌.Wcb使用挖掘技术研究[C】.小型饭型计算机系统。 2004,7 ii,ix,iy:Integer;, 5.Simon Courtemge。Steven Williarm.Semantic—Based Matching and Per- sTemp:TStrings;//VX方便遍历所有组合存储 be sonalization in FWEB。a—Publish Subscribe-Based Web[CJ.Publish Sub- scribe-Based Web.2Oo5.1O (上接第19页) else 修改新插入页面的访同时问:,,介于uy和uy+l的访问时阃 y=y“一I叶l;Ⅳ跳过新插入的页面 x++: liH 增加会话 si=<(urlk.timek)>; t0=time.k;J J J J 3.4路径补全 设有某用户会话访问序列为U={(A,一),(BA),(C,B)(D,B) , 由于本地缓存和代理服务器缓存的存在.使得Web服务器 D),(F,EXG,D)},则按上述算法得到经路径补全后的用户会话序列 日志可能遗漏一些重要的页面请求.如最常见的一种利用”后 Unew={(A,一),(B,A),(c,B),(B,A),(I),B), ,D), E), ,D),(D,B)'(G’D)}。 退”按钮进行后退来进行缓存页面的读取 4.结束语 设当前页为Un,其参引页为PIl,后续页为Un+1,针对前面 随着网络的应用与普及.Web日志挖掘已成为一个研究的 确定的每一个用户会话,根据参引页面实现Web日志的用户访 热点。本文论述了Web日志挖掘数据预处理的过程.给出了用 问序列路径补全规则描述为:如果Pn+I< ̄Un.但有Uk:Pn+l 户识别、会话识别和路径补全算法的一种简单有效实现。数据预 (1<=k<n),则将Uk—Un—l反序插入Un和Un+l之间.得到Ul… 处理作为Web日志挖掘重要且关键的一步.笔者还将作进一步 UnUn—l…UkUn+l。其算法描述如下: 的研究与实践,并在此基础上进行挖掘算法实施和模式分析。 悛U为包含n个页面的用户会话,IIx为U中第x个页面的URL,Dx为U 中第z个页面的参引页purl U=“u1.p1), p2)。…(m pn)J; . Unew=U'JaJnew为存放路径补全后用户会话的页面序列 z=1://x为U的指针 y=l; 为Unew的指针 参考文献: 1.张小娣20o6.17 一种改进的Web日志挖掘预处理方法计算机工程与应用 2.陆丽■。等Web日志挖掘中的数据预处理的研究 20o0.4 计算机工程 e((I+1 =n) Ifi 6Ⅱ+1= q)c『后一页的参引页面是前一页 II++; 处理下一页 3.王岚,等wcb日志挖掘的预处理及路径补全算法的研究截电子擘 与计算机2006.23 4.侯亚丽,等Web日志挖掘中的敷据预处理技术河北大学学报(自然 科学版)2oo5.3 5.朱明壕著敷据挖掘中国科学技术大学出版社 y¨:l else I按Iult--- 【一ll反序方式找等于px+l的umJ/l<---m<=x一1 Hum定能找到.因会话U已经过前面的用户识别处理 将u ̄um+l9---,IlI—l反序插人到Une-的uy和uy+l之间; 

因篇幅问题不能全部显示,请点此查看更多更全内容