CN103064856B - 一种基于信度网的资源推荐方法和装置 - Google Patents
一种基于信度网的资源推荐方法和装置 Download PDFInfo
- Publication number
- CN103064856B CN103064856B CN201110322317.3A CN201110322317A CN103064856B CN 103064856 B CN103064856 B CN 103064856B CN 201110322317 A CN201110322317 A CN 201110322317A CN 103064856 B CN103064856 B CN 103064856B
- Authority
- CN
- China
- Prior art keywords
- resource
- belief network
- user
- node
- recommended
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于信度网的资源推荐方法,包括:A、在用户访问系统资源的过程中,当每次满足推荐条件时,则执行步骤B;B、为用户建立基于信度网的用户兴趣模型;根据所建立的用户兴趣模型确定待推荐资源;按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户。本发明同时公开了一种基于信度网的资源推荐装置。应用本发明所述的方法和装置,能够提高推荐结果的个性化程度。
Description
技术领域
本发明涉及资源推荐技术,特别涉及一种基于信度网的资源推荐方法和装置。
背景技术
推荐技术是指在用户访问系统资源时,通过研究用户的兴趣等,主动为其推荐还未访问的资源的技术。
目前几乎所有的大型电子商务系统都不同程度的使用了推荐技术,该技术有助于提高电子商务服务质量和用户的忠诚度等。
现有推荐方式主要为:根据特定领域的领域知识或通过数据挖掘方法生成规则,当用户访问系统资源时,根据用户已访问的资源情况以及所述规则推理出用户还未访问过但可能感兴趣的资源,根据规则的强度等进行排序后推荐给用户。
但是,上述方式在实际应用中会存在一定的问题,如:基本上所有的用户都使用统一的规则,因此推荐结果的个性化程度较低。
发明内容
有鉴于此,本发明提供了一种基于信度网的资源推荐方法和装置,能够提高推荐结果的个性化程度。
为达到上述目的,本发明的技术方案是这样实现的:
一种基于信度网的资源推荐方法,包括:
A、在用户访问系统资源的过程中,当每次满足推荐条件时,则执行步骤B;
B、为用户建立基于信度网的用户兴趣模型;根据所建立的用户兴趣模型确定待推荐资源;按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户。
一种基于信度网的资源推荐装置,包括:
控制模块,用于在用户访问系统资源的过程中,当每次满足推荐条件时,通知推荐模块执行自身功能;
所述推荐模块,用于为用户建立基于信度网的用户兴趣模型;根据所建立的用户兴趣模型确定待推荐资源;按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户。
可见,采用本发明的技术方案,针对每个用户,分别为其建立基于信度网的用户兴趣模型,并根据所建立的用户兴趣模型进行资源推荐,从而提高了推荐结果的个性化程度。
附图说明
图1为本发明基于信度网的资源推荐方法实施例的流程图。
图2为一个有向无环图结构的示意图。
图3为另一个有向无环图结构的示意图。
图4为为某一用户建立的用户兴趣模型的示意图。
图5为本发明基于信度网的资源推荐装置实施例的组成结构示意图。
具体实施方式
针对现有技术中存在的问题,本发明中提出一种基于信度网的资源推荐方案,能够提高推荐结果的个性化程度。
为使本发明的技术方案更加清楚、明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。
图1为本发明基于信度网的资源推荐方法实施例的流程图。如图1所示,包括以下步骤:
步骤101:在用户访问系统资源的过程中,当每次满足推荐条件时,则执行步骤102。
当用户每访问一个新的资源时,即可生成一个数据,所述数据用于描述用户对系统中各资源的访问或评价情况。
假设系统中共存在3个资源,分别为资源1、资源2、资源3,用户访问了资源2,那么所生成的数据即可为(0,1,0),如果用户同时访问了资源2和资源3,那么所生成的数据即可为(0,1,1)。
上述是以二值的0、1来表示资源是否被访问的,如果要体现对资源的评价情况,则需要用多值来表示,具体实现为本领域公知。
以下均以二值为例。
当每生成M个数据时,则执行一次步骤102,M为正整数。
步骤102:为用户建立基于信度网的用户兴趣模型;根据所建立的用户兴趣模型确定待推荐资源;按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户。
本步骤的实现主要包括三个过程,第一个过程为建立基于信度网的用户兴趣模型,第二个过程为根据所建立的用户兴趣模型确定待推荐资源,第三个过程为按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户。
所建立的用户兴趣模型的个数可以为一个,也可为多个,即两个以上,以下以建立一个用户兴趣模型为例,分别对上述各过程的具体实现进行详细说明。
1)第一个过程
信度网包括两部分:有向无环图结构和各节点的条件概率分布,可表示为一个二元组S=<G,P>,G表示有向无环图结构,P表示各节点的条件概率分布。图2为一个有向无环图结构的示意图,如图2所示,节点B和节点A之间存在连接,表示节点B和节点A之间存在依赖关系,箭头方向表示节点B对节点A有直接的因果影响,P={P(A|π(A))}表示节点A的父节点对节点A的因果影响的强度,π(A)表示节点A的父节点集合,节点B和节点E即为节点A的父节点。
为方便计算,可对信度网的有向无环图结构进行编码,即表示为容易处理的数据结构,编码后主要包括三部分:第一部分、第二部分和第三部分。
其中,第一部分表示信度网中的各节点的排序,任何节点的父节点都必须排在该节点的后面;第二部分表示每个节点的父节点在第一部分中的排序位置分布情况,共包括n-1段,第1段表示第一部分中排在第1位的节点的父节点在第一部分中的排序位置分布情况,第2段表示第一部分中排在第2位的节点的父节点在第一部分中的排序位置分布情况,依次类推;第三部分为自适应步长σ,σ为整数。
图3为另一个有向无环图结构的示意图。假设针对该结构进行编码,那么得到的编码可为[5423123434540σ],“54231”为第一部分,“23434540”为第二部分,“σ”为第三部分。可以看出,节点4、节点2和节点3为节点5的父节点,因此节点4、节点2和节点3排在节点5的后面,节点2和节点3为节点4的父节点,因此节点2和节点3排在节点4的后面,节点3又为节点2的父节点,因此节点3排在节点2的后面,节点1也为节点4的父节点,因此也排在节点4的后面。另外,对于第一部分中排在第1位的节点5,其父节点4在第一部分中的排序位置为2,父节点2在第一部分中的排序位置为3,父节点3在第一部分中的排序位置为4,因此,节点5对应的第二部分中的第1段可为“234”,同理,第一部分中排在第2位的节点4对应的第二部分中的第2段可为“345”,第一部分中排在第3位的节点2对应的第二部分中的第3段可为“4”,第一部分中排在第4位的节点3没有父节点,那么其对应的第二部分中的第4段可为“0”(如果有父节点则不是0),而第一部分中排在最后一位,即第5位的节点1一定是没有父节点的,因此其在第二部分无对应的段。
通常来说,每个节点的父节点的个数会限制为不超过一定数目,那么第二部分中的每段的长度也不会超过该数目。
基于上述介绍,建立基于信度网的用户兴趣模型的过程可如下所示。
11)随机生成μ个不同的信度网,并从中选出一个作为最优信度网Sb,μ为大于1的正整数;每个信度网中的每个节点分别对应系统中的一个资源,每个信度网中的节点数均等于系统中的资源数;
本步骤中,可随机选出一个信度网作为Sb。
12)根据Sb分别计算出所生成的各信度网的评分函数值。
13)如果计算出的μ个评分函数值中的最大值与最小值之差小于预定阈值,或者,本步骤的重复执行次数已经达到预定阈值,则将取值最大的评分函数值对应的信度网作为Sb,并将Sb作为用户兴趣模型,结束流程,否则,将取值最大的评分函数值对应的信度网作为Sb,执行步骤14)。
14)根据最新一次生成的μ个信度网生成λ个新的信度网,λ为大于1的正整数,且大于μ。
15)根据新的Sb分别计算出各新的信度网的评分函数值,并按照评分函数值由大到小的顺序从中选出μ个信度网,重复执行步骤13)。
在计算各信度网的评分函数值时,各信度网的有向无环图结构以编码的形式参与运算。
上述步骤12)和15)中所提到的信度网的评分函数值的计算主要涉及到三部分,即信度网与新数据的匹配程度(适用程度)、信度网与旧数据的匹配程度,以及惩罚因子。
评分函数值的计算过程中应考虑网络结构的简洁度,越简单的网络结构用于预测和推理时的计算复杂度越低,因此可引入惩罚因子,用于惩罚复杂度高的网络结构,从而使得评分函数值倾向于简单的网络结构。
具体来说,针对每个信度网S,可分别计算其与新数据的匹配程度、与旧数据的匹配程度以及其惩罚因子,用与新数据的匹配程度减去预定系数与旧数据的匹配程度的乘积,再减去惩罚因子,即可得到信度网S的评分函数值。所述新数据可为以下之一:最新N次生成的数据、截止时间为当前时间的一段预定时长内生成的数据;除新数据以外的数据即为旧数据(针对该用户生成的所有数据中除新数据以外的数据)。
其中,信度网S与新数据的匹配程度可通过计算信度网S与新数据之间的似然度log(D|S)来得到,D表示新数据。
信度网S与旧数据的匹配程度可通过计算信度网S与上一次进行推荐时所建立的用户兴趣模型之间的距离 来得到,Z表示问题域Rn={X1,X2....Xn}中所有变量的一次赋值,Xi表示系统中的任一资源,1≤i≤n,n表示系统中的资源数,表示上一次进行推荐时所建立的用户兴趣模型。假设n的取值为2,那么Rn中的赋值可包括(00)、(01)、(10)、(11),另外,如果不存在上一次推荐,即当前推荐为第一次推荐,那么可随机生成一个信度网作为
信度网S的惩罚因子 L表示旧数据的个数,K表示新数据的个数,πi表示资源Xi在信度网S中对应的节点的父节点的集合,||||表示可能的取值数。如||Xi||的取值为2(0、1),如果Xi对应的节点的父节点的个数为3个,那么||πi||的取值将为8(000、001、010、011、100、101、110、111)。
在实际应用中,当计算时,如果n的取值较大,那么该式的计算量会非常大,为此,可进行一定的简化处理,即只从Rn中随机选出M个样本,M为大于1的正整数,根据这M个样本计算
为此,信度网S的评分函数值的计算方式可表示为:
其中, yl表示新数据D中的第l个数据;
其它情况下,可在信度网S中利用Sb通过信度网推理算法计算得到具体实现为现有技术;
1≤i≤n,n表示系统中的资源数,即信度网S中的节点数;
1≤k≤ri,ri表示Xi的可能的取值数,如Xi的可能取值为0、1,那么ri的取值即为2;
1≤j≤qi,,qi表示父节点集合πi的可能的取值数;
表示Xi的第k个可能的取值,表示πi的第j个可能的取值;
假设n的取值为5,yl的取值为10010,表示用户访问了第1和第4个资源,并假设i=1,Xi对应的节点的父节点为节点4和节点5,即πi为{4,5},如果 那么 如果的取值为1那么
对于数据来说,有可能会由于某种原因导致其不完备,如n的取值为4,一个数据为(0,0,*,1),即不知道第3个资源是否被访问,那么该数据即为不完备数据;另外,当向系统中加入新资源时,也会产生不完备数据,如n的取值为4时,生成了一个数据(0,0,1,1),之后系统中加入了一个新资源,那么n的取值就变为了5,而数据(0,0,1,1)没有表示出新加入的资源的访问情况,因此该数据即为不完备数据;对于这类不完备数据,在计算评分函数值时即会用到上面所提到的其它情况。
步骤14)中,可通过重组、变异等操作来生成λ个新的信度网,具体实现可如下所示。
141)从最新一次生成的μ个信度网中随机选出两个不同的信度网,针对选出的两个信度网的第一部分,借鉴遗传算法中的“部分匹配交叉”思想,随机产生两个交叉点,将每个第一部分中处于这两个交叉点之间的区域定义为匹配区域,并通过位置交换操作交换两个第一部分中的匹配区域,然后,针对每个第一部分,分别将匹配区域以外出现的与匹配区域内重复的字符按照匹配区域内的位置映射关系进行映射;之后,随机选择一个第一部分作为新的信度网的第一部分。
举例说明:
假设两个信度网的第一部分分别为:A=65178、B=89651,匹配区域为第2到第4位,即下面方框内所标示的区域:
之后,交换方框内所标示的区域,从而得到:
可以看出,在A′中,方框内出现了6,方框外也出现了6,即匹配区域外的字符和匹配区域内的字符出现了重复,因此按照匹配区域内的位置映射关系5→9、1→6、7→5将匹配区域外出现的6映射为1,同理,将B′中的匹配区域外出现的1映射为6,即有:
后续,可将A″或B″作为新的信度网的第一部分。
142)针对选出的两个信度网的第二部分,以段为单位,分别随机选择两个第二部分中的一段作为新的信度网的第二部分中的一段。
举例说明:
假设两个信度网的第二部分分别为:C=123456、D=789123,那么,可将123或789作为新的信度网的第二部分中的第1段,将45或12作为第2段,将6或3作为第3段。
143)针对选出的两个信度网的第三部分,将(σ1+σ2)/2作为新的信度网的第三部分σ,σ1和σ2分别表示选出的两个信度网的第三部分。
144)针对新的信度网,对其施加|σ·N(0,1)|次变异因子,所述变异因子包括:增加一条边、减少一条边,以及反转一条边,N(0,1)表示均值为0,方差为1的正态分布随机变量。
所述增加、减少以及反转等操作均可针对随机选取的任意一条边进行。
之后,重复执行步骤141)~144),直到得到λ个新的信度网。
至此,即完成了关于第一过程的介绍。可以看出,在建立用户兴趣模型时,采用了一种增量式学习方式,既兼顾了新数据,从而能够及时发现用户兴趣的变化,又不会丢弃已有的旧模型,即尽可能地保留了已有的学习成果。
2)第二个过程
本过程的目的是找出与用户已访问的资源关系密切的资源,并将其作为待推荐资源。
在信度网中,与某一节点关系密切的节点,就是与该节点有边直接相连的节点,即该节点的父节点和子节点,因此,可从各用户兴趣模型中找出与用户已访问的资源对应的节点存在父节点和子节点关系的节点对应的资源,并从找出的资源中删除重复以及用户已访问的资源,将剩下的资源作为待推荐资源。
其中,如果将最新N次生成的数据作为新数据,则用户已访问的资源为用户最新N次访问的资源;如果将截止时间为当前时间的一段预定时长内生成的数据作为新数据,则用户已访问的资源为该预定时长内用户访问的资源。
3)第三个过程
该过程中,针对每个待推荐资源X,可分别根据信度网推理算法计算其在用户兴趣模型中的条件概率值;将各条件概率值按照取值由大到小的顺序进行排序,将排序后的结果推荐给用户。
其中,条件概率值=P(X|R),R表示用户已访问的资源的集合,P(X|R)表示在已访问R中的全部资源的条件下,还会访问X的条件概率。
信度网推理算法可为Zhang和Poole等提出的变量消元算法,具体实现为现有技术。
在实际应用中,排序完成后,还可进一步确定出排序后的资源数是否大于预先设定的阈值Q,Q为大于1的正整数,如果是,则仅将排序后处于前Q位的资源推荐给用户,否则,将排序后的全部资源推荐给用户。
上述各过程可总体举例说明如下:
假设系统中共有18个资源,分别为X1~X18,Q=5,图4为为某一用户建立的用户兴趣模型(有向无环图结构)的示意图,假设用户已访问的资源为X7、X12和X15,那么,可以看出,与X7存在父子关系的节点为X4、X6、X10、X8、X9、X12,与X12存在父子关系的节点为X7、X11、X13、X18,与X15存在父子关系的节点为X18,因此,待推荐资源为:X4、X6、X10、X8、X9、X11、X13、X18;之后,分别计算各待推荐资源的条件概率值P(X4|X7,X12,X15)、P(X6|X7,X12,X15)、P(X10|X7,X12,X15)、…、P(X18|X7,X12,X15),并根据计算结果由大到小的顺序进行排序,假设排序结果为:X6、X9、X18、X10、X4、X8、X13、X11,将X6、X9、X18、X10、X4推荐给用户。
上述介绍中,以所建立的用户兴趣模型的个数为一个进行说明,在实际应用中,其个数也可为多个,每个的建立方式均可与只建立一个时的建立方式相同。
当所建立的用户兴趣模型的个数为多个时,后续的一些处理方式会略有不同,主要体现在以下两方面。
1)在根据所建立的用户兴趣模型确定待推荐资源时,从所建立的各用户兴趣模型中找出与用户已访问的资源对应的节点存在父节点和子节点关系的节点对应的资源,从找出的资源中删除重复以及用户已访问的资源,将剩下的资源作为待推荐资源;其中,用户已访问的资源为以下之一:用户最新N次访问的资源、截止时间为当前时间的一段预定时长内用户访问的资源。
2)在按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序时,针对每个待推荐资源X,分别根据信度网推理算法计算其在各用户兴趣模型中的条件概率值,将计算结果取平均,作为最终的条件概率值,将各最终的条件概率值按照取值由大到小的顺序进行排序,将排序后的结果推荐给用户;其中,条件概率值=P(X|R),R表示用户已访问的资源的集合。
基于上述介绍,图5为本发明基于信度网的资源推荐装置实施例的组成结构示意图。如图5所示,包括:
控制模块51,用于在用户访问系统资源的过程中,当每次满足推荐条件时,通知推荐模块52执行自身功能;
推荐模块52,用于为用户建立基于信度网的用户兴趣模型;根据所建立的用户兴趣模型确定待推荐资源;按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户。
当用户每访问一个新的资源时,控制模块51即生成一个数据,所述数据用于描述用户对系统中各资源的访问或评价情况,并且,当每生成M个数据时,控制模块51即通知推荐模块52执行一次自身功能,M为正整数。
其中,推荐模块52中可具体包括:
建立单元521,用于为用户建立一个基于信度网的用户兴趣模型;
推荐单元522,用于根据所建立的用户兴趣模型确定待推荐资源,并按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户。
建立单元521中又可进一步包括(为简化附图,未图示):
第一处理子单元,用于随机生成μ个不同的信度网,并从中选出一个作为最优信度网Sb,μ为大于1的正整数,每个信度网中的每个节点分别对应系统中的一个资源,每个信度网中的节点数均等于系统中的资源数;根据Sb分别计算出所生成的各信度网的评分函数值,并通知第二处理子单元执行自身功能;
第二处理子单元,用于当计算出的μ个评分函数值中的最大值与最小值之差小于预定阈值,或自身的重复执行次数已经达到预定阈值时,将取值最大的评分函数值对应的信度网作为Sb,并将Sb作为用户兴趣模型,结束处理,否则,将取值最大的评分函数值对应的信度网作为Sb,通知第三处理子单元执行自身功能;
第三处理子单元,用于根据最新一次生成的μ个信度网生成λ个新的信度网,λ为大于1的正整数,且大于μ,并根据新的Sb分别计算出各新的信度网的评分函数值,按照评分函数值由大到小的顺序从中选出μ个信度网,之后通知所述第二处理子单元重复执行自身功能。
每个信度网S的评分函数值为:信度网S与新数据的匹配程度减去预定系数与信度网S与旧数据的匹配程度的乘积,再减去惩罚因子;其中,所述新数据为以下之一:最新N次生成的数据、截止时间为当前时间的一段预定时长内生成的数据;除新数据以外的数据即为旧数据。
另外,信度网S包括两部分:有向无环图结构和各节点的条件概率分布;在计算信度网S的评分函数值时,有向无环图结构以编码的形式参与运算;
其中,有向无环图结构的编码包括三部分:第一部分、第二部分和第三部分;
第一部分表示信度网S中的各节点的排序,任何节点的父节点都必须排在该节点的后面;
第二部分表示每个节点的父节点在第一部分中的排序位置分布情况,共包括n-1段,第1段表示第一部分中排在第1位的节点的父节点在第一部分中的排序位置分布情况,第2段表示第一部分中排在第2位的节点的父节点在第一部分中的排序位置分布情况,依次类推;
第三部分为自适应步长σ,σ为整数。
第三处理子单元可按照以下方式生成每个新的信度网:
从最新一次生成的μ个信度网中随机选出两个不同的信度网,针对选出的两个信度网的第一部分,随机产生两个交叉点,将每个第一部分中处于这两个交叉点之间的区域定义为匹配区域,并交换两个第一部分中的匹配区域,然后,针对每个第一部分,分别将匹配区域以外出现的与匹配区域内重复的字符按照匹配区域内的位置映射关系进行映射;之后,随机选择一个第一部分作为新的信度网的第一部分;
针对选出的两个信度网的第二部分,以段为单位,分别随机选择两个第二部分中的一段作为新的信度网的第二部分中的一段;
针对选出的两个信度网的第三部分,将(σ1+σ2)/2作为新的信度网的第三部分σ,σ1和σ2分别表示选出的两个信度网的第三部分;
针对新的信度网,对其施加|σ·N(0,1)|次变异因子,所述变异因子包括:增加一条边、减少一条边,以及反转一条边,N(0,1)表示均值为0,方差为1的正态分布随机变量。
推荐单元522中可进一步包括(为简化附图,未图示):
第四处理子单元,用于从所建立的用户兴趣模型中找出与用户已访问的资源对应的节点存在父节点和子节点关系的节点对应的资源,从找出的资源中删除重复以及用户已访问的资源,将剩下的资源作为待推荐资源;其中,如果将最新N次生成的数据作为新数据,则用户已访问的资源为用户最新N次访问的资源,如果将截止时间为当前时间的一段预定时长内生成的数据作为新数据,则用户已访问的资源为该预定时长内用户访问的资源;
第五处理子单元,用于针对每个待推荐资源X,分别根据信度网推理算法计算其在用户兴趣模型中的条件概率值;将各条件概率值按照取值由大到小的顺序进行排序;其中,条件概率值=P(X|R),R表示用户已访问的资源的集合。
或者,
建立单元521,用于为用户建立两个以上基于信度网的用户兴趣模型,各用户兴趣模型的建立方式相同;
推荐单元522,用于根据所建立的用户兴趣模型确定待推荐资源,并按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户。
其中,推荐单元522中又可进一步包括(为简化附图,未图示):
第四处理子单元,用于从所建立的各用户兴趣模型中找出与用户已访问的资源对应的节点存在父节点和子节点关系的节点对应的资源,从找出的资源中删除重复以及用户已访问的资源,将剩下的资源作为待推荐资源;其中,用户已访问的资源为以下之一:用户最新N次访问的资源、截止时间为当前时间的一段预定时长内用户访问的资源;
第五处理子单元,用于针对每个待推荐资源X,分别根据信度网推理算法计算其在各用户兴趣模型中的条件概率值,将计算结果取平均,作为最终的条件概率值,将各最终的条件概率值按照取值由大到小的顺序进行排序,将排序后的结果推荐给用户;其中,条件概率值=P(X|R),R表示用户已访问的资源的集合。
图5所示装置实施例的具体工作流程请参照图1所示方法实施例中的相应说明,此处不再赘述。
需要说明的是,上述各实施例中涉及到的阈值、系数、参数(如μ、λ)等的具体取值均可根据实际需要而定。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (12)
1.一种基于信度网的资源推荐方法,其特征在于,包括:
A、在用户访问系统资源的过程中,用户每访问一个新的资源,则生成一个数据,所述数据用于描述用户对系统中各资源的访问或评价情况;
当每生成M个数据时,则执行一次步骤B,M为正整数;
B、为用户建立基于信度网的用户兴趣模型;根据所建立的用户兴趣模型确定待推荐资源;按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户;
其中,当所建立的用户兴趣模型的个数为一个,建立方式包括:
B11、随机生成μ个不同的信度网,并从中选出一个作为最优信度网Sb,μ为大于1的正整数;每个信度网中的每个节点分别对应系统中的一个资源,每个信度网中的节点数均等于系统中的资源数;
B12、根据Sb分别计算出所生成的各信度网的评分函数值;
B13、如果计算出的μ个评分函数值中的最大值与最小值之差小于预定阈值,或者,本步骤的重复执行次数已经达到预定阈值,则将取值最大的评分函数值对应的信度网作为Sb,并将Sb作为用户兴趣模型,结束流程,否则,将取值最大的评分函数值对应的信度网作为Sb,执行步骤B14;
B14、根据最新一次生成的μ个信度网生成λ个新的信度网,λ为大于1的正整数,且大于μ;
B15、根据新的Sb分别计算出各新的信度网的评分函数值,并按照评分函数值由大到小的顺序从中选出μ个信度网,重复执行步骤B13;
其中,所述计算每个信度网的评分函数值包括:
针对每个信度网S,分别计算其与新数据的匹配程度、与旧数据的匹配程度以及惩罚因子;用与新数据的匹配程度减去预定系数与旧数据的匹配程度的乘积,再减去惩罚因子,则得到信度网S的评分函数值;
其中,所述新数据为以下之一:最新N次生成的数据、截止时间为当前时间的一段预定时长内生成的数据;除新数据以外的数据即为旧数据;
其中,所述计算信度网S与新数据的匹配程度包括:计算信度网S与新数据之间的似然度log(D|S),D表示新数据;
所述计算信度网S与旧数据的匹配程度包括:计算信度网S与上一次进行推荐时所建立的用户兴趣模型之间的距离 其中,Z表示问题域Rn={X1,X2....Xn}中所有变量的一次赋值,Xi表示系统中的任一资源,1≤i≤n,n表示系统中的资源数,表示上一次进行推荐时所建立的用户兴趣模型;
所述计算信度网S的惩罚因子包括:计算其中,Pen(S)表示惩罚因子,L表示旧数据的个数,K表示新数据的个数,πi表示资源Xi在信度网S中对应的节点的父节点的集合,||||表示可能的取值数。
2.根据权利要求1所述的方法,其特征在于,所述信度网S包括两部分:有向无环图结构和各节点的条件概率分布;在计算信度网S的评分函数值时,有向无环图结构以编码的形式参与运算;
其中,有向无环图结构的编码包括三部分:第一部分、第二部分和第三部分;
第一部分表示信度网S中的各节点的排序,任何节点的父节点都必须排在该节点的后面;
第二部分表示每个节点的父节点在第一部分中的排序位置分布情况,共包括n-1段,第1段表示第一部分中排在第1位的节点的父节点在第一部分中的排序位置分布情况,第2段表示第一部分中排在第2位的节点的父节点在第一部分中的排序位置分布情况,依次类推;
第三部分为自适应步长σ,σ为整数。
3.根据权利要求2所述的方法,其特征在于,所述步骤B14包括:
B141、从最新一次生成的μ个信度网中随机选出两个不同的信度网,针对选出的两个信度网的第一部分,随机产生两个交叉点,将每个第一部分中处于这两个交叉点之间的区域定义为匹配区域,并交换两个第一部分中的匹配区域,然后,针对每个第一部分,分别将匹配区域以外出现的与匹配区域内重复的字符按照匹配区域内的位置映射关系进行映射;之后,随机选择一个第一部分作为新的信度网的第一部分;
B142、针对选出的两个信度网的第二部分,以段为单位,分别随机选择两个第二部分中的一段作为新的信度网的第二部分中的一段;
B143、针对选出的两个信度网的第三部分,将(σ1+σ2)/2作为新的信度网的第三部分σ,σ1和σ2分别表示选出的两个信度网的第三部分;
B144、针对新的信度网,对其施加|σ·N(0,1)|次变异因子,所述变异因子包括:增加一条边、减少一条边,以及反转一条边,N(0,1)表示均值为0,方差为1的正态分布随机变量;
之后,重复执行步骤B141,直到得到λ个新的信度网。
4.根据权利要求1~3中任一项所述的方法,其特征在于,所述根据所建立的用户兴趣模型确定待推荐资源包括:
从所建立的用户兴趣模型中找出与用户已访问的资源对应的节点存在父节点和子节点关系的节点对应的资源;
从找出的资源中删除重复以及用户已访问的资源,将剩下的资源作为待推荐资源;
其中,如果将最新N次生成的数据作为新数据,则用户已访问的资源为用户最新N次访问的资源;如果将截止时间为当前时间的一段预定时长内生成的数据作为新数据,则用户已访问的资源为该预定时长内用户访问的资源。
5.根据权利要求4所述的方法,其特征在于,所述按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序包括:
针对每个待推荐资源X,分别根据信度网推理算法计算其在用户兴趣模型中的条件概率值;将各条件概率值按照取值由大到小的顺序进行排序;
其中,条件概率值=P(X|R),R表示用户已访问的资源的集合。
6.根据权利要求1所述的方法,其特征在于,所建立的用户兴趣模型的个数为两个以上,每个用户兴趣模型的建立方式均与只建立一个用户兴趣模型时的建立方式相同;
所述根据所建立的用户兴趣模型确定待推荐资源包括:从所建立的各用户兴趣模型中找出与用户已访问的资源对应的节点存在父节点和子节点关系的节点对应的资源,从找出的资源中删除重复以及用户已访问的资源,将剩下的资源作为待推荐资源;其中,用户已访问的资源为以下之一:用户最新N次访问的资源、截止时间为当前时间的一段预定时长内用户访问的资源;
所述按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序包括:针对每个待推荐资源X,分别根据信度网推理算法计算其在各用户兴趣模型中的条件概率值,将计算结果取平均,作为最终的条件概率值,将各最终的条件概率值按照取值由大到小的顺序进行排序,将排序后的结果推荐给用户;其中,条件概率值=P(X|R),R表示用户已访问的资源的集合。
7.一种基于信度网的资源推荐装置,其特征在于,包括:
控制模块,用于在用户访问系统资源的过程中,当用户每访问一个新的资源时,所述控制模块即生成一个数据,所述数据用于描述用户对系统中各资源的访问或评价情况,并且,当每生成M个数据时,所述控制模块即通知推荐模块执行一次自身功能,M为正整数;
推荐模块,用于为用户建立基于信度网的用户兴趣模型;根据所建立的用户兴趣模型确定待推荐资源;按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户;
其中,所述推荐模块中包括:
建立单元,用于为用户建立一个基于信度网的用户兴趣模型;
推荐单元,用于根据所建立的用户兴趣模型确定待推荐资源,并按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户;
其中,所述建立单元中包括:
第一处理子单元,用于随机生成μ个不同的信度网,并从中选出一个作为最优信度网Sb,μ为大于1的正整数,每个信度网中的每个节点分别对应系统中的一个资源,每个信度网中的节点数均等于系统中的资源数;根据Sb分别计算出所生成的各信度网的评分函数值,并通知第二处理子单元执行自身功能;
所述第二处理子单元,用于当计算出的μ个评分函数值中的最大值与最小值之差小于预定阈值,或自身的重复执行次数已经达到预定阈值时,将取值最大的评分函数值对应的信度网作为Sb,并将Sb作为用户兴趣模型,结束处理,否则,将取值最大的评分函数值对应的信度网作为Sb,通知第三处理子单元执行自身功能;
所述第三处理子单元,用于根据最新一次生成的μ个信度网生成λ个新的信度网,λ为大于1的正整数,且大于μ,并根据新的Sb分别计算出各新的信度网的评分函数值,按照评分函数值由大到小的顺序从中选出μ个信度网,之后通知所述第二处理子单元重复执行自身功能;
其中,每个信度网S的评分函数值为:信度网S与新数据的匹配程度减去预定系数与信度网S与旧数据的匹配程度的乘积,再减去惩罚因子;
其中,所述新数据为以下之一:最新N次生成的数据、截止时间为当前时间的一段预定时长内生成的数据;除新数据以外的数据即为旧数据;
其中,计算信度网S与新数据的匹配程度包括:计算信度网S与新数据之间的似然度log(D|S),D表示新数据;
计算信度网S与旧数据的匹配程度包括:计算信度网S与上一次进行推荐时所建立的用户兴趣模型之间的距离 其中,Z表示问题域Rn={X1,X2....Xn}中所有变量的一次赋值,Xi表示系统中的任一资源,1≤i≤n,n表示系统中的资源数,表示上一次进行推荐时所建立的用户兴趣模型;
计算信度网S的惩罚因子包括:计算其中,Pen(S)表示惩罚因子,L表示旧数据的个数,K表示新数据的个数,πi表示资源Xi在信度网S中对应的节点的父节点的集合,||||表示可能的取值数。
8.根据权利要求7所述的装置,其特征在于,所述信度网S包括两部分:有向无环图结构和各节点的条件概率分布;在计算信度网S的评分函数值时,有向无环图结构以编码的形式参与运算;
其中,有向无环图结构的编码包括三部分:第一部分、第二部分和第三部分;
第一部分表示信度网S中的各节点的排序,任何节点的父节点都必须排在该节点的后面;
第二部分表示每个节点的父节点在第一部分中的排序位置分布情况,共包括n-1段,第1段表示第一部分中排在第1位的节点的父节点在第一部分中的排序位置分布情况,第2段表示第一部分中排在第2位的节点的父节点在第一部分中的排序位置分布情况,依次类推;
第三部分为自适应步长σ,σ为整数。
9.根据权利要求8所述的装置,其特征在于,所述第三处理子单元按照以下方式生成每个新的信度网:
从最新一次生成的μ个信度网中随机选出两个不同的信度网,针对选出的两个信度网的第一部分,随机产生两个交叉点,将每个第一部分中处于这两个交叉点之间的区域定义为匹配区域,并交换两个第一部分中的匹配区域,然后,针对每个第一部分,分别将匹配区域以外出现的与匹配区域内重复的字符按照匹配区域内的位置映射关系进行映射;之后,随机选择一个第一部分作为新的信度网的第一部分;
针对选出的两个信度网的第二部分,以段为单位,分别随机选择两个第二部分中的一段作为新的信度网的第二部分中的一段;
针对选出的两个信度网的第三部分,将(σ1+σ2)/2作为新的信度网的第三部分σ,σ1和σ2分别表示选出的两个信度网的第三部分;
针对新的信度网,对其施加|σ·N(0,1)|次变异因子,所述变异因子包括:增加一条边、减少一条边,以及反转一条边,N(0,1)表示均值为0,方差为1的正态分布随机变量。
10.根据权利要求7~9中任一项所述的装置,其特征在于,所述推荐单元中包括:
第四处理子单元,用于从所建立的用户兴趣模型中找出与用户已访问的资源对应的节点存在父节点和子节点关系的节点对应的资源,从找出的资源中删除重复以及用户已访问的资源,将剩下的资源作为待推荐资源;其中,如果将最新N次生成的数据作为新数据,则用户已访问的资源为用户最新N次访问的资源,如果将截止时间为当前时间的一段预定时长内生成的数据作为新数据,则用户已访问的资源为该预定时长内用户访问的资源;
第五处理子单元,用于针对每个待推荐资源X,分别根据信度网推理算法计算其在用户兴趣模型中的条件概率值;将各条件概率值按照取值由大到小的顺序进行排序;其中,条件概率值=P(X|R),R表示用户已访问的资源的集合。
11.根据权利要求7所述的装置,其特征在于,所述推荐模块中包括:
建立单元,用于为用户建立两个以上基于信度网的用户兴趣模型,每个用户兴趣模型的建立方式均与只建立一个用户兴趣模型时的建立方式相同;
推荐单元,用于根据所建立的用户兴趣模型确定待推荐资源,并按照用户感兴趣的程度由高到低的顺序对各待推荐资源进行排序,将排序后的结果推荐给用户。
12.根据权利要求11所述的装置,其特征在于,所述推荐单元中包括:
第四处理子单元,用于从所建立的各用户兴趣模型中找出与用户已访问的资源对应的节点存在父节点和子节点关系的节点对应的资源,从找出的资源中删除重复以及用户已访问的资源,将剩下的资源作为待推荐资源;其中,用户已访问的资源为以下之一:用户最新N次访问的资源、截止时间为当前时间的一段预定时长内用户访问的资源;
第五处理子单元,用于针对每个待推荐资源X,分别根据信度网推理算法计算其在各用户兴趣模型中的条件概率值,将计算结果取平均,作为最终的条件概率值,将各最终的条件概率值按照取值由大到小的顺序进行排序,将排序后的结果推荐给用户;其中,条件概率值=P(X|R),R表示用户已访问的资源的集合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110322317.3A CN103064856B (zh) | 2011-10-21 | 2011-10-21 | 一种基于信度网的资源推荐方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110322317.3A CN103064856B (zh) | 2011-10-21 | 2011-10-21 | 一种基于信度网的资源推荐方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103064856A CN103064856A (zh) | 2013-04-24 |
CN103064856B true CN103064856B (zh) | 2016-03-30 |
Family
ID=48107486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110322317.3A Active CN103064856B (zh) | 2011-10-21 | 2011-10-21 | 一种基于信度网的资源推荐方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103064856B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108132963A (zh) * | 2017-11-23 | 2018-06-08 | 广州优视网络科技有限公司 | 资源推荐方法和装置、计算设备和存储介质 |
CN109785064A (zh) * | 2019-01-14 | 2019-05-21 | 南京信息工程大学 | 一种基于多源信息融合的移动电子商务推荐方法和系统 |
CN110442612B (zh) * | 2019-06-20 | 2022-04-15 | 上海赜睿信息科技有限公司 | 一种数据查询方法、电子设备及计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101271558A (zh) * | 2008-05-16 | 2008-09-24 | 华东师范大学 | 基于上下文信息的多策略商品推荐系统 |
CN101326532A (zh) * | 2006-01-27 | 2008-12-17 | 三菱电机株式会社 | 检测物理环境中的活动的系统和检测环境中的活动的方法 |
CN101694652A (zh) * | 2009-09-30 | 2010-04-14 | 西安交通大学 | 一种基于极速神经网络的网络资源个性化推荐方法 |
CN101984437A (zh) * | 2010-11-23 | 2011-03-09 | 亿览在线网络技术(北京)有限公司 | 音乐资源个性化推荐方法及系统 |
CN102054003A (zh) * | 2009-11-04 | 2011-05-11 | 北京搜狗科技发展有限公司 | 网络信息推荐、建立网络资源索引的方法及系统 |
-
2011
- 2011-10-21 CN CN201110322317.3A patent/CN103064856B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101326532A (zh) * | 2006-01-27 | 2008-12-17 | 三菱电机株式会社 | 检测物理环境中的活动的系统和检测环境中的活动的方法 |
CN101271558A (zh) * | 2008-05-16 | 2008-09-24 | 华东师范大学 | 基于上下文信息的多策略商品推荐系统 |
CN101694652A (zh) * | 2009-09-30 | 2010-04-14 | 西安交通大学 | 一种基于极速神经网络的网络资源个性化推荐方法 |
CN102054003A (zh) * | 2009-11-04 | 2011-05-11 | 北京搜狗科技发展有限公司 | 网络信息推荐、建立网络资源索引的方法及系统 |
CN101984437A (zh) * | 2010-11-23 | 2011-03-09 | 亿览在线网络技术(北京)有限公司 | 音乐资源个性化推荐方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103064856A (zh) | 2013-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hassanzadeh et al. | A genetic algorithm for solving fuzzy shortest path problems with mixed fuzzy arc lengths | |
Vidal et al. | Fuzzy Cognitive Map-based selection of TRIZ (Theory of Inventive Problem Solving) trends for eco-innovation of ceramic industry products | |
Aliev et al. | Z‐number‐based linear programming | |
Martínez-Martínez et al. | Quantum stochastic walks on networks for decision-making | |
CN106022614A (zh) | 一种基于最近邻聚类的神经网络数据挖掘方法 | |
Abdelfattah | Data envelopment analysis with neutrosophic inputs and outputs | |
Dede et al. | Convergence properties and practical estimation of the probability of rank reversal in pairwise comparisons for multi-criteria decision making problems | |
Wahyuni et al. | Rainfall prediction in Tengger, Indonesia using hybrid tsukamoto FIS and genetic algorithm method | |
Sun et al. | Probabilistic load flow calculation based on sparse polynomial chaos expansion | |
Sun et al. | Effects of wind speed probabilistic and possibilistic uncertainties on generation system adequacy | |
CN103064856B (zh) | 一种基于信度网的资源推荐方法和装置 | |
Bergmeir et al. | Time series modeling and forecasting using memetic algorithms for regime-switching models | |
Johns et al. | Knowledge-based multi-objective genetic algorithms for the design of water distribution networks | |
Li et al. | On combination rule in Dempster–Shafer theory using OWA‐based soft likelihood functions and its applications in environmental impact assessment | |
Fazlollahtabar et al. | An optimal path in a bi-criteria AGV-based flexible jobshop manufacturing system having uncertain parameters | |
Lindsten et al. | Graphical model inference: Sequential Monte Carlo meets deterministic approximations | |
Li et al. | Softened symbol grounding for neuro-symbolic systems | |
Rodriguez-Tello et al. | Dynamic multi-armed bandit algorithm for the cyclic bandwidth sum problem | |
CN104933103A (zh) | 整合结构聚类和属性分类的多目标社区发现方法 | |
Bustince et al. | The origin of fuzzy extensions | |
Peng et al. | A fuzzy‐dependent chance multi‐objective programming for water resources planning of a coastal city under fuzzy environment | |
Zhao et al. | Multi-level forecasting model of coal mine water inrush based on self-adaptive evolutionary extreme learning machine | |
Huang et al. | Study on the Application of Fuzzy TOPSIS to the Multi-objective Decision Making | |
Jourdan et al. | Hybridising rule induction and multi-objective evolutionary search for optimising water distribution systems | |
Stavinova et al. | Link predictability classes in complex networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |