一种获取用户网上浏览行为差异模式的系统和方法

文档序号:6602171阅读:146来源:国知局
专利名称:一种获取用户网上浏览行为差异模式的系统和方法
技术领域
本发明涉及计算机数据库和知识发现领域,特别是涉及一种获取用户网上浏览行 为差异模式的系统和方法。
背景技术
在当今信息时代,因特网已经成为大众获取所需的一种重要手段。大量用户每天 通过因特网查询自己所需信息,购买自己所需物品。各个网站都在不断积累网络用户的各 种浏览行为(我们称记录该信息的数据库为日志数据库)。由于网络的虚拟特点,使得了 解用户的需要变得更加具有挑战性。如果能从这种日志数据库中分析用户的浏览规律或特 点,发现不同年龄网络用户群体在浏览行为上的有趣差异,将为商家或相关管理部门科学 地制定决策提供重要信息。但是,由于我们需要分析的数据库涉及海量数据,差异模式的分析面临着两个问 题(1)利用现有的方法发现用户浏览行为差异模式时,在处理海量数据时效率不高, 缺乏有效的剪裁策略以缩小搜索空间。(2)已有方法中采用的卡方检验方法在满足条件的数据量较大时总能通过假设建 设,无法起到识别显著差异的作用。

发明内容
为了解决上述所说的问题,本发明的一个目的就是提出了一种获取用户网上浏览 行为差异模式的系统和方法。根据本发明的一个方面,提供了一种获取用户网上浏览行为差异模式的方法,其 特征在于包括A.输入日志数据库;B.按照一个预定的标准划分用户群体,C.为每个群体创建会话级的数据库;D.分别从所述数据库中发现被频繁访问的单个项;E.分别为所述数据库创建前缀树,其中所述数据库中的每一行对应所述前缀树中 的一个分支,且不同的分支共享从根节点开始的路径;F.根据所述前缀树的头表,构造当前项集,同步处理所述前缀树中的所述项集;G.计算所述用户群体的所述项集在所述前缀树中支持度之间的差异度,把符合预 定条件的阈值的项集放入差异模式集中;对符合剪裁条件的项集进行剪裁;H.对差异模式集中的项集按差异度降序排列并输出。


图1给出了根据本发现获取用户网上浏览行为差异模式的系统体系结构图。
图2给出了本发明中数据预处理模块的主要流程。图3给出了差异模式发现的流程图。
具体实施例方式如图1所示,根据本发明的一个实施例的用户网上浏览行为差异模式获取系统包 括四个主要模块输入模块101、预处理模块102、差异模式发现模块103和输出模块104。如图2所示,根据本发明的一个实施例的用户网上浏览行为差异模式获取方法包 括A.输入日志数据库(步骤201);B.划分用户群(步骤202);根据一个具体实施方式
,该步骤将用户按照年龄分为 老、中、青3个群体,并且为每个群体创建会话级的数据库(步骤203),分别记为Dl,D2和 D3 ;C.根据一个具体实施方式
,该步骤分别从数据库Dl,D2和D3中发现被频繁访问 的单个项(步骤204),并据此创建3棵前缀树Tl,T2和T3 (步骤205);D.根据3棵树的头表,同步处理3棵树中的项集,计算项集在3个群体之间的差异 度,对符合条件者放入差异模式集中;对符合剪裁条件的项集停止处理(步骤206);E.对差异模式集中的项集按差异度降序排列并输出(步骤207)。上述步骤B进一步包括Bi.确定用户群区间(例如老中青的年龄区间),按照所确定的区间将每个用户分 到相应群体(G1、G2和G3)中;B2.对每个用户,将其中一次会话中访问的每个网页对应域名作为一个项替换会 话中的网页,一次会话中涉及到所有的项构成一条记录存放于数据库中,从而同一个群体 中的所有用户的所有记录构成了相应的数据库Dl,D2和D3。上述步骤C进一步包括Cl.从每个用户数据库中发现频繁单项,合并这些单项,构造单项列表L(步骤 204),按照它们在数据库Dl中的支持度大小降序排列;C2.根据列表L,分别构建头表HI、H2和H3 ;分别扫描数据库Dl,D2和D3为每个 数据库分别构建一棵前缀树(步骤205)。其中,根据一个具体实施例,上述步骤Cl中计算单项(或项集)I在群体Gi中的 支持度的公式如下 其中η为群体Gi中的用户总数,Sup(Iluij)表示项集I在用户Uij的会话中的支 持度,是包含I的记录(即会话)个数占用户uij的总记录个数的百分比。支持度大于用 户给定的一个最小支持度阈值的项集被称为频繁项集。上述步骤D进一步包括Dl.分别取每个头表中的当前项(初始情况下最后一项为当前项),构造当前项 集,计算该项集在3个数据库中支持度的最大差异,把超过阈值的项集放入差异模式集中;D2.计算当前项集中所有超集的最大差异度,如果该差异度小于一个预定阈值,停止处理该项集,处理头表中当前项的上一个项;否则,在每个数据库中抽取当前项所在的所 有分枝,构造域名数据库和前缀树,重复Dl和D2两个步骤的处理。如果头表为空,返回上一级头表,直至头表中的项 全部处理完毕。其中,根据一个具体实施例,上述步骤Dl中项集I在3个数据库中支持度的最大 差异的计算方法如下difference (I) = Max (sup (I | G1), sup (I | G2), sup (I | G3))(2)
-Min (sup (I | G1),sup (I | G2),sup (I | G3))根据一个具体实施例,上述步骤D2中计算当前项集I所有超集的最大差异度的方 法如下difference = Max {sup {I \ G ι), sup (I | G 2 ), sup (/ | Gj ))- Min (Min {sup (/ | Gi)))(3)
/ = 1,2,3 IeS(I)其中S(I)指的是I在数据库中存在的超集的集合。本发明的优点包括(1)该方法不仅适用于发现3个用户群体之间的差异模式,也适用于发现m(m > 1)个群体差异。它还不仅适用于发现用户浏览行为的差异,也适用于发现其他领域群体之 间的差异,例如不同种族之间,失事飞机与非失事飞机之间等。(2)该方法更合理地定义了差异模式的标准,通过构造前缀树对数据进行了压缩, 并充分利用该数据结构的特点,设计了更加有效的剪裁策略,使得搜索空间不断缩小,提高 了发现效率。针对已有的差异方法存在的问题,本发明人提出了一种高效获取用户网上浏览行 为差异模式的系统和方法。图1给出了根据本发明的一个实施例的系统结构图。如图1所示,基于这种方法 的系统由4个主要模块构成输入模块101,用于把用户浏览的日志数据输入日志数据库; 数据预处理模块102 ;差异发现模块103 ;输出模块104。根据一个具体实施例,数据预处理模块102用于完成日志数据库的清洗和转换, 将家庭成员为1的用户选出,按照年龄分为老、中、青3个群体,并将每个用户每次会话中访 问的网页的域名抽取作为项构成记录,从而构建群体数据库,并进而选出频繁访问的单个 项为后面的前缀树构建和挖掘做准备。差异发现模块103是本系统的主体模块,主要用于 完成具有显著差异的频繁项集的发现工作。输出模块104用于按照差异的大小降序输出所 有的差异模式。下面参考图2和图3,对根据本发明获取用户网上浏览行为差异模式的方法进行 详细地说明。图2给出了本发明中数据预处理模块的主要流程输入日志数据库后可以按照如 下步骤完成数据的预处理功能(1)确定老中青的年龄区间,将用户按照年龄分为老、中、青3个群体;(2)对每个用户,将其中一次会话中访问的所有网页的域名抽取,每个域名对应 一个项组成一条记录存放,一个群体中的所有用户的所有记录构成了域名数据库Dl,D2和 D3。
5
(3)从每个用户数据库中发现频繁单项(即被频繁访问的网页对应的域名),合并 这些单项,构造单项列表L,按照它们在数据库Dl中的支持度大小降序排列;图3显示了根据本发明的一个实施例的差异模式发现的流程图。(1)根据列表L,构建3个头表HI、H2和H3,并将其设为当前头表;扫描域名数据 库为每个数据库构建一棵前缀树,分别记为Tl,T2和T3 ;每个头表中按照L中项的顺序记 录了每个单项、该项在相应数据库中的支持度以及一个指针用于指向前缀树中存放该项的 节点(步骤301)。其中为数据库Dl创建前缀树Tl的方法(为数据库D2和D3创建前缀树 T2和T3的方法相同)如下首先,创建树的根节点root,用null标记;然后扫描数据库D1,将每一行对应的项按列表L中项的顺序排序,并为每个会话 记录创建一个分枝。分枝中每个节点对应一个项,记录项的名称以及当前频度,每条会话记 录的频度,对于一个拥有k个会话的用户来说,等于1/k;每次处理一个新的会话记录,首先判断树中已有分枝是否与该分枝从根节点开始 有重叠的部分(即是否共享前缀),如果有,则共享该部分节点,将当前记录的频度累加到 已有节点的频度值上即可,对于之后不共享的项,创建新的节点,与已有节点相连,并记录 当前记录的频度为节点的频度;最后,把头表中的每个项与前缀树中的该项通过链表相连。(2)如果当前头表非空,分别取每个头表中的下一个尚未处理的项为当前项(步 骤302),构造当前项集,进入下一步处理。(3)根据公式(3)计算当前项集与其所有超集(超集指的是包含该当前项集的项 集,此处具体指当前项集所在的每个分枝对应的项集)的最大差异度(步骤303),如果该差 异度小于阈值,停止处理该项集,查看头表中是否还有未处理的项(步骤307);否则,根据 公式(2)计算该项集在3个数据库中支持度的最大差异,判断是否超过阈值(步骤308),超 过则将其放入差异模式集中(步骤309),然后进入下一步,否则直接进入下一步;(4)在每个数据库中抽取当前项所在的所有分枝,查看是否存在频繁项(步骤 310),存在则构造频繁项列表L,跳至步骤(1)处理。若不存在则查看头表中是否还有未处 理的项(步骤307),若是则至步骤(2)继续处理。若否则查看是否存在上层头表(步骤 306),若存在则返回上层头表(步骤305),接着跳至步骤(2)继续处理,否则进入步骤(5)。(5)过程结束,进入输出模块,对差异模式集中的项集按差异度降序排列并输出。对本领域的普通技术人员来说可显而易见的得出其他优点和修改。因此,具有更 广方面的本发明并不局限于这里所示出的并所描述的具体说明及示例实施。因此,在不脱 离由随后权利要求及其等价体所定义的一般发明构思的精神和范围的情况下,可对其做出 各种修改。
权利要求
一种获取用户网上浏览行为差异模式的方法,其特征在于包括A.输入日志数据库;B.按照一个预定的标准划分用户群体,C.为每个群体创建会话级的数据库(D1,D2,D3);D.分别从所述数据库(D1,D2,D3)中发现被频繁访问的单个项;E.分别为所述数据库(D1,D2,D3)创建前缀树(T1,T2,T3),其中所述数据库(D1,D2,D3)中的每一行对应所述前缀树(T1,T2,T3)中的一个分支,且不同的分支共享从根节点开始的路径;F.根据所述前缀树(T1,T2,T3)的头表(H1,H2,H3),构造当前项集,同步处理所述前缀树(T1,T2,T3)中的所述项集;G.计算所述用户群体的所述项集在所述前缀树中支持度之间的差异度,把符合预定条件的阈值的项集放入差异模式集中;对符合剪裁条件的项集进行剪裁;H.对差异模式集中的项集按差异度降序排列并输出。
2.如权利要求1所述的方法,其特征在于所述为每个群体创建会话级的数据库(D1, D2,D3)的步骤进一步包括对每个用户,将其中一次会话中访问的每个网页所对应的域名作为一个项替换原来的 网页,去除一次会话中重复的项后构成用户的一条记录;用一个群体中的所有用户的所有记录构成所述数据库(Dl,D2,D3)。
3.如权利要求1所述的方法,其特征在于所述步骤D包括从每个数据库(Dl,D2,D3)中发现被频繁访问的单个项的集合,将所述集合中的项放 到一个列表(L)中,去除重复的项,并按照这些项在数据库Dl中的支持度降序排列列表中 的项;所述步骤E包括根据所述列表(L),构建所述头表(H1,H2,H3);扫描所述数据库(D1,D2,D3)从而为每个所述数据库(D1,D2,D3)构建一棵前缀树。
4.如权利要求1所述的方法,其特征在于所述步骤F进一步包括Fl.分别取每个所述头表中的当前项,构造当前项集,F2.计算所述当前项集在所述数据库(D1,D2,D3)中支持度的最大差异,F3.判断所述最大差异是否超过预定的阈值,“是”则把当前项集放入差异模式集中,F4.计算当前项集的所有超集的最大差异度,且如果所述最大差异度小于所述预定的阈值,停止处理当前项集,接着处理下一个项 集;);如果所述最大差异度大于所述预定的阈值,在每个数据库中抽取当前项集所在的所有 分枝,构造相应的数据库和前缀树,重复步骤F1-F4的处理,直至所述头表为空,返回上一 级头表。
全文摘要
本发明提供了一种获取用户网上浏览行为差异模式的方法,包括A.输入日志数据库;B.按照预定的标准划分用户群体;C.为每个群体创建会话级的数据库(D1,D2,D3);D.分别从数据库(D1,D2,D3)中发现被频繁访问的单个项;E.分别为数据库(D1,D2,D3)创建前缀树(T1,T2,T3),其中数据库(D1,D2,D3)中的每一行对应前缀树(T1,T2,T3)中的一个分支,且不同的分支共享从根节点开始的路径;F.根据前缀树(T1,T2,T3)的头表(H1,H2,H3),构造当前项集同步处理前缀树(T1,T2,T3)中的项集;G.计算用户群体的项集在前缀树中支持度之间的差异度,把符合预定条件的阈值的项集放入差异模式集中;对符合剪裁条件的项集进行剪裁;H.对差异模式集中的项集按差异度降序排列并输出。
文档编号G06F17/30GK101894122SQ20101016941
公开日2010年11月24日 申请日期2010年5月11日 优先权日2010年5月11日
发明者刘红岩, 杨颖慧, 郑勇 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1