基于网络结构的用户兴趣漂移检测方法及系统的制作方法

文档序号:7708114阅读:190来源:国知局

专利名称::基于网络结构的用户兴趣漂移检测方法及系统的制作方法
技术领域
:本发明涉及网络媒体服务领域,特别涉及一种个性化推荐方法及系统。
背景技术
:随着互联网资源的不断丰富,信息过载、信息迷航等问题日趋严重,因此个性化推荐系统得到了广泛关注。个性化推荐系统通过建立用户与信息产品之间的二元关系,利用已有的选择过程或相似性关系挖掘每个用户潜在感兴趣的对象,从一定程度上緩解信息爆炸带给用户的压力。个性化推荐系统的基础和核心是用户兴趣建模。用户兴趣建模是通过获取和维护与用户兴趣、需求或习惯相关的知识,产生一个表示用户特有背景知识或兴趣、需求的用户模型。然而,现实生活中用户的兴趣常常发生变化,用户兴趣的漂移会给用户建模带来很大困难,同时影响个性化推荐系统的推荐精度。现有的不需要显示反馈的解决兴趣漂移问题的方法主要有两种一种是被动地更新或调整用户兴趣模型的方法,主要指一些自适应的模型更新方法,包括时间窗口方法、遗忘模型方法、长期和短期兴趣模型方法和其他一些自适应的方法;一种是主动地利用算法检测兴趣漂移并进行相应处理的方法,一般有一套兴趣偏移检测机制,当没有检测到漂移时保持原有兴趣模型基本不变,一旦检测到用户兴趣发生漂移则重构或大范围调整兴趣模型。现有方法的缺陷是,比较复杂,需要消耗大量的计算开销,无法满足在线系统的实时性要求,且无法有效排除噪声干扰,效率不高。因此,需要一种方法解决上述问题。
发明内容本发明的目的旨在至少解决上述技术缺陷之一,特别是解决计算开销大和噪声干扰影响稳定性的缺陷。为了达到上述目的,本发明提出一种基于网络结构的用户兴趣漂移检测方法,包括以下步骤构建全局项目网络GIN;检测用户是否为噪声用户;去除噪声用户后,采用基于稠密度的切割算法,检测用户是否发生兴趣漂移以及发生漂移的位置。作为本发明的一个实施例,所述构建全局项目网络GIN,包括以下步骤根据项目的属性计算所述项目之间的相似度,一,/.)Jw,x^尸"1,其中,"为项目的第z个属性的权重,表示该属性在项目相似性方面的作用大小,IP,.,nCI表示项目/,的属性和项目/,的属性々,交集的值的个数,1^u^i表示项目/,的属性c和项目/7的属性/^并集的值的个数;将计算所得的所述项目之间的相似度与预先设定的阈值S0进行比较,如果所述相似度大于阈值S0,则在两个项目之间建立一条边,否则不建立边,构建得所述全局项目网络GIN。作为本发明的一个实施例,所述检测用户是否为噪声用户,包括以下步骤按照用户id的排列顺序,依次选择未经处理的用户作为目标用户;从所述全局项目网络GIN中提取所述目标用户的用户访问项目网络UVIN;根据所述UVIN边的情况计算稠密度,根据用户访问项目的时间顺序计算连续度;将计算所得的所述稠密度值和连续度值与预先设定的稠密度阈值DO和连续度阈值CO进行比较,如果所述稠密度和连续度的值均小于DO和CO,则所述目标用户为噪声用户,否则为普通用户。作为本发明的一个实施例,所述稠密度表示用户兴趣的集中程度,计算公式为A"wXv=e/(vO-l)/2)=2e/v(v-1),其中,e为UVIN中边的数目,v为用户访问过的项目个数;所述连续度表示用户兴趣的持续程度,计算公式为=e/(v—1),其中,e为^安用户访问项目的时间先后顺序将项目排列成队列,只考虑队列中相邻两项目之间的边的条数,v为用户访问过的项目个数。作为本发明的一个实施例,所述基于稠密度的切割算法,包括以下步骤计算输入项目序列构成的子图的稠密度d—total,记录输入序列中项目的个数item—num,即序列长度,并初始化检测节点的位置i=L0;判断检测位置是否还未到达倒数第L0个,即是否/s"^—mm7-丄0;分别计算所述节点i左边的项目序列构成的子图的稠密度djeft和右边的项目序列构成的子图的稠密度d—right;计算所述节点i的稠密度切割增量r—,'=/^+d_n'g/70/2-加"z,并记录;计算完所有符合条件/Sw臓_丄O的节点i的Ti后,找到所有Ti中的最大值T—max,记录T—max对应的节点为P—max,获取从P—max处切割后的左边序列S—1和右边序列S一r;判断所述T—max是否不小于预先设定的兴趣漂移发生阈值TO,且所述S—1和S_r的长度是否不小于所述L0;判断所述S—1和S一r是否是独立的兴趣;如果上述条件都满足,则在所述P—max点处切割输入序列得到所述S—l和S—r,记录切割节点,然后分别对所述S一l和S—r递归调用本算法。作为本发明的一个实施例,所述判断所述S一l和S—r是否是独立的兴趣,包括以下步骤检查所述S—l是否位于整个用户访问项目序列的开头;计算所述s—1与与之相邻的由之前的切割产生的子序列S」'之间的稠密度切割增量r—/=+/')/2-J—//',其中,d—1表示所述S—1的稠密度,/'表示所述S一/'的稠密度,//'表示所述SJ和S—/'两段序列合并后构成序列的稠密度;判断所述T—1是否不小于所述阈值T0,如果是继续检查,否则可断定所述S—1和S—r不是独立兴趣;检查所述Sj是否位于整个用户访问项目序列的末端,如果是,可断定所述S—1和S—r是独立兴趣,否则,继续检查;计算所述S_r与与之相邻的由之前的切割产生的子序列S^'之间的稠密度切割增量r一/^W—r+d_0/2-"_厅,其中,d一r表示所述S一r的稠密度,d—r表示所述S—/的稠密度,c/—厅'表示所述S—r和5_/这两段序列合并后构成序列的稠密度;检查所述T一r是否不小于所述阈值TO,如果是则所述S—l和S_r为独立兴趣,否则不是独立兴趣,函数返回。本发明还提出一种利用基于网络结构的用户兴趣漂移检测方法的个性化推荐方法,包括离线处理部分和在线推荐部分。其中,离线处理部分包括全局网络构建、用户数据预处理和推荐系统构建。作为本发明的一个实施例,所述用户数据预处理,包括以下步骤判断所有用户是否均已经预处理完毕;按照用户id的排列顺序,依次选择未经处理的用户作为目标用户;检查所述目标用户是否为噪声用户,如果是,则去除所述目标用户,否则,继续;检查所述目标用户是否为兴趣漂移用户,如果是,则根据漂移发生的位置,把所述目标用户的访问数据分割成段,每一段表示用户的一类兴趣;将分割好的所述用户数据分别交付给推荐系统进行构建。作为本发明的一个实施例,所述在线推荐部分包括以下步骤对用户数据进行检测,如果属于噪声数据,则给用户发出友善提醒,提示用户根据自己的兴趣选择项目,并推荐热门项目给用户;如果属于兴趣漂移用户,则根据基于稠密度的切割算法求出用户当前的最新兴趣,并根据该最新兴趣结合推荐系统的构建给出推荐项目;对用户数据进行更新,如果为噪声用户,记录该噪声用户;如果为兴趣漂移用户,记录该兴趣漂移用户及漂移发生的位置。本发明另一方面还提出一种利用基于网络结构的用户兴趣漂移检测方法的个性化推荐系统,包括GIN构建模块、噪声用户检测模块、兴趣漂移用户检测模块、包裹程序模块、在线推荐模块、推荐系统构建模块和推荐系统更新模块。其中,所述GIN构建模块,用于根据项目之间的相似度构建全局项目网络GIN,将网络信息提供给所述噪声用户检测模块和兴趣漂移模块;所述噪声用户检测模块,用于根据稠密度和连续度检测用户是否为噪声用户,将检测结果提供给所述包裹模块和在线推荐模块;所述兴趣漂移用户检测模块,用于采用DBS算法检测用户兴趣是否发生漂移以及发生漂移的位置,将检测结果提供给所述包裹模块和在线推荐模块;所述包裹程序模块,用于对用户数据进行预处理,将处理结果提供给所述推荐系统构建模块;所述在线推荐模块,用于对用户数据进行检测并记录,将一些反馈更新信息提供给所述推荐系统更新模块;所述推荐系统构建模块,用于利用所述包裹程序模块提供的数据构建推荐系统;所述推荐系统更新模块,用于及时更新已构建的推荐系统。本发明通过根据用户访问过的项目构建相似网络,并以该网络的稠密度和连续度为依据去除噪声用户,同时依据稠密度的变化检测兴趣漂移的发生与否和发生时刻,大大缩减了计算量,实现了在快速检测兴趣漂移的同时,避免了噪声用户数据对推荐系统稳定性的影响。本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中图1为本发明实施例的基于网络结构的用户兴趣漂移检测方法流程图2为本发明实施例的全局项目网络GIN构建的一个例子的示意图;图3为图2所示的例子的用户访问项目网络UVIN的两个例子的示意图4为本发明实施例的基于稠密度的切割算法的流程图5为本发明实施例的利用基于网络结构的用户兴趣漂移检测方法的个性化推荐方法的框架图6为本发明实施例的用户数据预处理的流程图7为本发明实施例的利用基于网络结构的用户兴趣漂移检测方法的个性化推荐系统的结构图。具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。本发明主要在于根据用户访问过的项目构建相似网络,并以该网络的稠密度和连续度为依据去除噪声用户,同时依据稠密度的变化检测兴趣漂移的发生与否和发生时刻,大大缩减了计算量,实现了在快速检测兴趣漂移的同时,避免了噪声用户数据对推荐系统稳定性的影响。如图1所示,为本发明实施例的基于网络结构的用户兴趣漂移检测方法流程图,包括以下步骤步骤S101,根据项目的属性计算项目之间的相似度,如果两个项目之间的相似度大于预先设定的阈值SO,则在这两个项目之间加一条边,否则不建立边,据此,构建全局项目网络GIN。作为本发明的一个实施例,将具有n个项目的推荐系统中的项目集合表示为/^/,,/2,….,/J,其中每个项目/,(i=l,2,…,n)具有多种属性,可表示为/,=<^,尸,,2,....,&,>,其中,C^、0表示项目/,的第j个属性,t表示项目/,具有t个属性。同样地,每个属性C可具有一定数量的值,且每个属性/^的值的数目是可变的,因此,项目/,的第j个属性~可表示为尸,,=伙,,、,....人,....},其中,、为属性C的一个值。每个属性化均有相应的权重w,,表示其在项目相似性方面的作用大小。因此,项目/,和/,之间的相似度计算公式可表示为加权和其中,w,为第Z个属性的权重,|/3,,0尸7/|表示属性^和尸/,,交集的值的个数,I尸,,u^,I表示属性和尸,,,并集的值的个数。作为本发明的一个实施例,以下表中的电影为例,描述项目之间相似度的计算方法以及全局项目相似网络GIN的构建过程。<table>tableseeoriginaldocumentpage13</column></row><table>其中,电影属性包括电影风格、导演和编剧,分别用G、W和D表示,相应的属性权重可设为1、0.5和0.5,因此对于电影风和M,,它们的相似度为^w(似,'M)=^——^+0.5x^-^+0,5x^-^。如,电影《泰坦尼'IG,II『,uff,IIu£>,I克号》和《天使之城》的相似度为Wm(A/fl,Mc)=i+0.5x2+0.5x2=l,电影《泰122坦尼克号》和《黑客帝国》的相似度为^,')=鲁+0.5><*+0.5><鲁=。。如果设定相似度阈值为0.2,则电影《泰坦尼克号》和《天使之城》之间建立一条边,电影《泰坦尼克号》和《黑客帝国》之间不建立边。类似地,可计算其他电影之间的相似度,与设定阈值进行比较确定是否建立边,这样,得到如图2所示的全局电影相似网络,图中的字母与表中代表电影的字母——对应。应理解,上述实施例仅是示意性的实施例,并不限制本发明的范围。步骤S102,从全局项目网络GIN中提取用户访问项目网络UVIN,根据UVIN边的情况计算稠密度,根据用户访问项目的时间顺序计算连续度,如果用户的稠密度值和连续度值均小于预先设定的阈值DO和C0,则表示该用户为噪声用户,其访问数据亦为噪声数据,否则该用户为非噪声用户。作为本发明的一个实施例,用户访问项目网络UVIN为全局项目网络GIN的一个子网,UVIN中的顶点为用户访问过的项目代表的顶点,UVIN中的边与GIN中相应顶点之间的边对应。设UVIN中边的数目为e,用户访问过的项目个数为v,并按用户访问项目的时间先后顺序将项目排列成队列,只考虑队列中相邻两项目之间的边的条数,设为e,则定义稠密度为t/e"^Xy=e/(v(v—1)/2)=2e/v(v—1),连续度为ccm""w//>=e/(v-1)。作为本发明的一个实施例,针对MovieLens数据集,设定稠密度阈值D0=0.25,连续度阈值C0=0.25。具体地,以图2所示的全局电影相似网络为例,描述稠密度和连续度的计算方法。如果用户ID1按照G—E—S4F4C—Z)4yl4M的顺序访问项目,则可提取出如图3a所示的UVIN网络,可见v二8,e=14,e=4,因此用户ID1的稠密度为0.5,连续度为0.57。如果用户ID2按照Z)4尸4/C4F—e4M—//—J的顺序访问项目,则可提取出如图3b所示的UVIN网络,可见v二8,e=3,e=0,因此,用户ID2的稠密度为0.11,连续度为0。可见,用户ID1为普通用户,用户ID2为噪声用户。从上述例子中可以看出,普通用户访问项目序列的稠密度和连续度比较高,而噪声用户的稠密度和连续度比较低,甚至接近于0。应理解,上述实施例仅是示意性的实施例,并不限制本发明的范围。步骤S103,排除噪声用户后,采用基于稠密度的切割算法(DensityBasedSegmentation,DBS)对用户的兴趣漂移与否以及兴趣漂移位置进行检测。DBS算法的输入参数为用户访问项目序列,输出为用户是否发生兴趣漂移以及发生漂移的位置。具体地,如图4所示,包括以下步骤步骤S401,计算输入项目序列构成的子图的稠密度d—total,记录输入序列中项目的个数itemnum,即序列长度;初始化检测节点的位置i=L0。其中,输入项目序列构成的子图为以输入参数S中的项目为顶点,以全局项目网络GIN中相应顶点之间的边为变,所构成的GIN的一个子图;才企测节点位置i表示从输入序列的第i个项目处开始执行DBS算法,然后逐个往后移动位置;L0为切割后子序列的最小长度,在本发明的实施例中,设定L0=10,不考虑开始和尾部的L0个项目的情况。步骤S402,判断检测位置是否还未到达倒数第LO个,即是否/^/^7_"調-丄0,如果是,继续步骤S403,否则转到步骤S406。步骤S403,分别计算节点i左边的项目序列构成的子图的稠密度d—left和右边的项目序列构成的子图的稠密度d_right。步骤S404,计算节点i的稠密度切割增量T一i,并记录计算所得的T—i值。其中,稠密度切割增量T—i为从第i点切割后得到的左右两段项目序列构成的子图稠密度的平均值相对于不切割的情况下稠密度的增量,即r—/=(<i—/e力+d—r妙/)/2-d—to/a/。步骤S405,;险测节点位置往后移动一个,即i=i+l,然后重复上述斗企观'J过禾呈,直至/>〃ew——丄0。步骤S406,找出所有T—i中的最大值,记为T—max,并记录该T—max对应的节点为P—max,获取从P—max处切割后的左边序列S—1和右边序列S—r。步骤S407,判断T_max是否不小于TO,且左右两边序列S—1和S—r的长度是否不小于LO,如果上述两个条件都成立,则继续步骤S208,否则函数返回。其中,阄值TO为判断兴趣漂移发生与否的阈值,在本发明实施例中,针对MovieLens数据集,设置T0=0.25,如果大于该阈值则表示用户在该点处发生了兴趣漂移,否则不发生;LO为切割序列的的最小长度,如果切割后的子序列长度小于LO则放弃切割。如下表所示,列举了一个普通用户和一个漂移用户的访问项目序列。<table>tableseeoriginaldocumentpage16</column></row><table>其中,普通用户的T一max值较小,表示切割后稠密度的增加量较小,因此不存在兴趣漂移;而漂移用户的T_max值达0.46,表示在相应位置—M"处对序列切割后稠密度的增较量很大,因此该用户在此处发生兴趣漂移的可能性很大。步骤S408,判断切割成的左右两段项目子序列S—1和Sj是否是独立的兴趣,如果是,继续步骤S409,否则函数返回。其中,判断切割成的左右两段项目子序列S_l和S_r是否是独立的兴趣包括两步检查第一步,检查左边子序列SJ是否位于整个用户访问项目序列的开头。如果是,直接进行第二步检查;否则,S_l的左边必然存在与之相邻的由之前的切割产生的子序列S一/',计算S一l与S一/'之间的稠密度切割增量r—/=("一/+(/')/2_(//',其中,d—1表示S一l的稠密度,(/'表示s—/'的裯密度,//'表示S—l和s—/'这两段序列合并后构成序列的稠密度。如果r一/》n),则进行第二步检查,否则可断定两段子序列不是独立兴趣。第二步,检查右边子序列S—r是否位于整个用户访问项目序列的末端。如果是,断定两段子序列是独立兴趣;否则,S_r的右边必然存在与之相邻的由之前的切割产生的子序列S—r,计算S—r与S」'之间的稠密度切割增fr_r=W—r+d—r)/2—c/一T,其中,d—r表示S—r的綱密度,J—r表示S—r的稠密度,厅表示S—r和S—r这两段序列合并后构成序列的稠密度。如果r—"ro,则两段子序列是独立兴趣,否则两段子序列不是独立兴趣,函数返回。应理解,上述判断左右两段子序列是否是独立兴趣的方法的实施例仅是示意性的实施例,并不限制本发明的范围。步骤S409,如果上述S407和S408中的条件都满足,则在P—max点处切割输入序列得到S_l和S—r,记录切割节点,然后分别对切割后产生的左右两边序列递归调用本算法。作为本发明的一个实施例,对于一个长度为N的项目序列,从左至右逐个点计算T—i时,每移动一个点,则左边新增加点i,右边去除点i,于是在计算边数时,左边需检查点i与之前i-l个点之间是否存在边,而右边需检查点i与其后的N-i个点之间是否存在边,因此需检查N-1次。而现有N-2xL0个点需计算T—i,因此,DBS算法的计算复杂度为(iV-l)x(iV_2xI0)=O(W2)。本发明还提出一种利用上述基于网络结构的用户兴趣漂移检测方法对一般的个性化推荐系统进行优化的方法,包括离线处理部分和在线推荐部分。如图5所示,为本发明实施例的推荐系统构建及在线推荐的框架示意图。其中,离线处理部分主要负责全局网络构建、用户数据预处理和推荐系统构建,一般计算量较大,时间消耗较多。具体地,如图6所示,对用户数据预处理包括以下步骤步骤S601,判断是否所有用户都已经预处理完毕,如果是,则结束预处理,否则继续步骤S602。步骤S602,按照用户id的排列顺序,依次选择一个未经处理的用户,作为下一个接受处理的目标用户。其中,用户id为用户的唯一标识符,可为整形数值,也可为字符串,视具体情况而定。步骤S603,检查用户是否为噪声用户,如果是,去除该用户,否则继续步骤S604。其中,噪声用户为上述步骤S102中检测出的用户访问项目网络稠密度和连续度均小于设定阈值的用户。步骤S604,检查该用户是否为兴趣漂移用户,如果是,继续步骤S605,否则转到步骤S606。其中,兴趣漂移用户为上述步骤S103中利用DBS算法检测出的带有兴趣漂移的用户,兴趣漂移发生的位置已经被记录。步骤S605,根据记录的兴趣漂移发生的位置,把用户的访问数据分割成段,每一段表示用户的一类兴趣。步骤S606,把分割好的用户数据分别交付给推荐系统构建部分。作为本发明的一个实施例,所构建的推荐系统可为一般的基于内容、协同过滤等推荐系统,具有普适性。在线推荐部分利用上述步骤S102和S103中所述的方法对用户数据进行检测。如果该用户属于噪声数据,则给用户发出友善提醒,提示用户根据自己的兴趣选择项目,并推荐热门项目给用户;如果该用户属于兴趣漂移用户,则根据DBS算法求出用户当前的最新兴趣,并根据该最新兴趣结合推荐系统构建部分给出推荐项目。同时,还需对用户数据集进行更新。如果是噪声用户,则记录该噪声用户;如果是兴趣漂移用户,则记录该兴趣漂移用户以及漂移发生位置。这样,下次构建推荐系统时,不再需要对所有用户进行重新处理。测方法的个性化推荐系统的结构图,该系统包括以下模块GIN构建模块701、噪声用户检测模块702、兴趣漂移用户检测模块703、包裹程序模块704、在线推荐模块705、推荐系统构建模块706和推荐系统更新模块707。其中,GIN构建模块701,用于根据项目之间的相似度构建全局项目网络GIN,将网络信息提供给噪声用户检测模块702和兴趣漂移用户检测模块703;噪声用户检测模块702,用于根据稠密度和连续度检测用户是否为噪声用户,将检测结果提供给包裹程序模块704和在线推荐模块705;兴趣漂移用户检测模块703,用于采用DBS算法检测用户兴趣是否发生漂移以及发生漂移的位置,将检测结果提供给包裹程序模块704和在线推荐模块705;包裹程序模块704,用于对用户数据进行预处理,将处理结果提供给推荐系统构建模块706;在线推荐模块705,用于对用户数据进行检测并记录,将一些反馈更新信息提供给推荐系统更新模块707;推荐系统构建模块706,用于利用包裹程序模块704提供的数据构建推荐系统;推荐系统更新模块707,用于及时更新已构建的推荐系统。本发明通过#4居用户访问过的项目构建相似网络,并以该网络的稠密度和连续度为依据去除噪声用户,同时依据稠密度的变化检测兴趣漂移的发生与否和发生时刻,大大缩减了计算量,实现了在快速检测兴趣漂移的同时,避免了噪声用户数据对推荐系统稳定性的影响。尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同限定。权利要求1、一种基于网络结构的用户兴趣漂移检测方法,其特征在于,包括以下步骤构建全局项目网络GIN;检测用户是否为噪声用户;去除噪声用户后,采用基于稠密度的切割算法,检测用户是否发生兴趣漂移以及发生漂移的位置。2、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述全局项目网络GIN为由所有项目^4居其相似性构建的全局网络,以所有项目作为顶点,以项目之间的相似性关系作为边。3、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述构建全局项目网络包括以下步骤根据项目的属性计算所述项目之间的相似度,,/,)=i>,x1尸"np"1,其中,"为项目的第〖个属性的权重,表示该属性在项目相似性方面的作用大小,^'n^J表示项目/,的属性斗和项目/,的属性P,.,交集的值的个数,i表示项目/,的属性&'和项目/,的属性^并集的值的个数;将计算所得的所述项目之间的相似度与预先设定的阔值S0进行比较,如果所述相似度大于阈值SO,则在两个项目之间建立一条边,否则不建立边,构建得所述全局项目网络GIN。4、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述检测用户是否为噪声用户,包括以下步骤按照用户id的排列顺序,依次选择未经处理的用户作为目标用户;从所述全局项目网络GIN中提取所述目标用户的用户访问项目网络UVIN;根据所述UVIN边的情况计算稠密度,根据用户访问项目的时间顺序计算连续度;将计算所得的所述稠密度值和连续度值与预先设定的稠密度阈值DO和连续度阈值CO进行比较,如果所述稠密度和连续度的值均小于DO和CO,则所述目标用户为噪声用户,否则为普通用户。5、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述用户id为用户的唯一标识符,可为整形数值和字符串。6、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述用户访问项目网络UVIN为全局项目网络GIN的一个子网,所述UVIN中的顶点为用户访问过的项目代表的顶点,所述UVIN中的边与GIN中相应顶点之间的边相对应。7、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述稠密度表示用户兴趣的集中程度,计算公式为(/e腦'(y=e/(v(v-l)/2)=2e/v(v-1),其中,e为UVIN中边的数目,V为用户访问过的项目个数。8、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述连续度表示用户兴趣的持续程度,计算公式为cw7rim^y=e/(v-1),其中,e为按用户访问项目的时间先后顺序将项目排列成队列,只考虑队列中相邻两项目之间的边的条数,V为用户访问过的项目个数。9、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述噪声用户为注册使用推荐系统,但不根据自身兴趣访问项目,而是抱着娱乐的态度随机访问项目的用户。10、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述基于稠密度的切割算法,包括以下步骤计算输入项目序列构成的子图的稠密度d—total,记录输入序列中项目的个数item—num,即序列长度,并初始化检测节点的位置i=L0;判断检测位置是否还未到达倒数第L0个,即是否/S"e附w訓一Z/0J分别计算所述节点i左边的项目序列构成的子图的稠密度d—left和右边的项目序列构成的子图的稠密度d_right;计算所述节点i的稠密度切割增量T一i,并记录;计算完所有符合条件K"ewj,-丄0的节点i的T一i后,找到所有T一i中的最大值T—max,记录T—max对应的节点为P—max,获耳又从P—max处切割后的左边序列S_l和右边序列S_r;判断所述T—max是否不小于预先设定的兴趣漂移发生阈值T0,且所述S—l和S—r的长度是否不小于所述LO;判断所述S—1和S_r是否是独立的兴趣;如果上述条件都满足,则在所述P_max点处切割输入序列得到所述S—1和S—r,记录切割节点,然后分别对所述S—1和S—r递归调用本算法。11、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述输入项目序列构成的子图为所述全局项目网络GIN的一个子图,以输入的项目为顶点,以所述全局项目网络GIN中相应顶点之间的边为边。12、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述LO为切割后子序列的最小长度。13、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述稠密度切割增量T—i为从节点i处切割后得到的两段项目序列构成的子图的稠密度的平均值相对于不切割情况下的稠密度的增量,即T—,'=(<i—/e/+t/—"'g/0/2-t/」oto/。14、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,其特征在于,所述判断所述S—l和S一r是否是独立的兴趣,包括以下步骤检查所述S一l是否位于整个用户访问项目序列的开头,如果不是继续下一步,否则跳过下面两步,直接检查所述S—r是否位于序列末端;计算所述S一l与与之相邻的由之前的切割产生的子序列S—/'之间的稠密度切割增量r—/=+/')/2-//',其中,d—l表示所述SJ的稠密度,J」'表示所述S—/'的稠密度,//'表示所述S—1和S—/'两段序列合并后构成序列的稠密度;判断所述T—l是否不小于所述阈值TO,如果是继续检查,否则可断定所述SJ和S—r不是独立兴趣;检查所述S—r是否位于整个用户访问项目序列的末端,如果是,可断定所述SJ和S一r是独立兴趣,否则,继续检查;计算所述S—r和与之相邻的由之前的切割产生的子序列S—r之间的稠密度切害'j增量r—r=—r+c/_r)/2-厅,其中,d—r表示所述S—r的稠密度,d—r'表示所述S—/的稠密度,〃表示所述S—r和S—r这两段序列合并后构成序列的稠密度;检查所述T—r是否不小于所述阈值T0,如果是,则所述SJ和S—r为独立兴趣,否则不是独立兴趣,函数返回。15、如权利要求1所述的基于网络结构的用户兴趣漂移检测方法,则特征在于,所述基于稠密度的切割算法的复杂度为o(w2)。16、一种利用基于网络结构的用户兴趣漂移检测方法的个性化推荐方法,其特征在于,包括离线处理部分和在线推荐部分。17、如权利要求16所述的利用基于网络结构的用户兴趣漂移检测方法的个性化推荐方法,其特征在于,所述离线处理部分包括全局网络构建、用户数据预处理和推荐系统构建。18、如权利要求16所述的利用基于网络结构的用户兴趣漂移检测方法的个性化推荐方法,其特征在于,所述用户数据预处理,包括以下步骤判断所有用户是否均已经预处理完毕;按照用户id的排列顺序,依次选择未经处理的用户作为目标用户;检查所述目标用户是否为噪声用户,如果是,则去除所述目标用户,否则,继续;检查所述目标用户是否为兴趣漂移用户,如果是,则根据漂移发生的位置,把所述目标用户的访问数据分割成段,每一段表示用户的一类兴趣;将分割好的所述用户数据分别交付给推荐系统进行构建。19、如权利要求16所述的利用基于网络结构的用户兴趣漂移检测方法的个性化推荐方法,其特征在于,所述在线推荐部分包括以下步骤对用户数据进行检测,如果属于噪声数据,则给用户发出友善提醒,提示用户根据自己的兴趣选择项目,并推荐热门项目给用户;如果属于兴趣漂移用户,则根据基于稠密度的切割算法求出用户当前的最新兴趣,并根据该最新兴趣结合推荐系统的构建给出推荐项目;对用户数据进行更新,如果为噪声用户,记录该噪声用户;如果为兴趣漂移用户,记录该兴趣漂移用户及漂移发生的位置。20、一种利用基于网络结构的用户兴趣漂移检测方法的个性化推荐系统,其特征在于,包括GIN构建模块、噪声用户检测模块、兴趣漂移用户检测模块、包裹程序模块、在线推荐模块、推荐系统构建模块和推荐系统更新模块,所述GIN构建模块,用于根据项目之间的相似度构建全局项目网络GIN,将网络信息提供给所述噪声用户检测模块和兴趣漂移模块;所述噪声用户检测模块,用于根据稠密度和连续度检测用户是否为噪声用户,将检测结果提供给所述包裹模块和在线推荐模块;所述兴趣漂移用户检测模块,用于采用DBS算法检测用户兴趣是否发生漂移以及发生漂移的位置,将检测结果提供给所述包裹模块和在线推荐模块;所述包裹程序模块,用于对用户数据进行预处理,将处理结果提供给所述推荐系统构建模块;所述在线推荐模块,用于对用户数据进行检测并记录,将一些反馈更新信息提供给所述推荐系统更新模块;所述推荐系统构建模块,用于利用所述包裹程序模块提供的数据构建推荐系统;所述推荐系统更新模块,用于及时更新已构建的推荐系统。全文摘要本发明提出一种基于网络结构的用户兴趣漂移检测方法,包括以下步骤构建全局项目网络GIN;检测用户是否为噪声用户;去除噪声用户后,采用基于稠密度的切割算法,检测用户是否发生兴趣漂移以及发生漂移的位置。本发明大大缩减了计算量,实现了快速检测用户兴趣漂移的同时,避免了噪声用户对推荐系统稳定性的影响。文档编号H04L12/24GK101552689SQ20091014045公开日2009年10月7日申请日期2009年5月15日优先权日2009年5月15日发明者淇刘,宝腾飞,杰杨,陈恩红申请人:中国科学技术大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1