一种基于信任机制的协同过滤推荐方法_2

文档序号:9887741阅读:来源:国知局
荐正确与否,1 < y <m,若正确则 取值1,若错误则取值〇,具体计算方法见公式2,t h r e s h ο 1 d是设定的阀值:
.表示m向关于项目ity的推荐预测评分,其中&为用户 的平均评分,&为项目ity的平均得分;和心,,W分别为m和对项目ity的实际评 分;1(1^,11」,;^)表示推荐错误的情况,取值与?(1^,11」,;^)相反,8卩1^向11」在项目;[1^上的推 荐正确则取值0,若错误则取值1。
[0024]
[0025]
[0026] 则计算用户W对用户m的一阶信任度FT(Uj,m)时,既考虑m向进行推荐的正确 率,又考虑所有向叫做过推荐的用户中m的推荐数量比,两者的乘积得到一阶信任度FT( Uj, m),具体计算方法见公式3:
[0027]
[0028] (公式3)。
[0029]在具体实施例中,假定当前用户Uj为Ui(g卩j = l),而threshold = l。由于接下来计 算二阶信任度需要用到一阶信任度的值,所以表2给出了集合U中所有9个用户彼此之间的 一阶信任度:
[0030] 表2用户间的一阶信任度
[0031]
[0032] 步骤2:利用信任关系的传递特性,借助当前用户的直接信任用户(即一阶信任 用户)进行信任传递,计算u树系统用户集合U中所有其他用户m(l < i j)的二阶信 任度ST(Uhm)。二阶信任度反映了目标用户^对于其一阶信任用户所传递的可信用户(BP 一阶信任用户的一阶信任用户)的信任程度。
[0033]令Utrans(Uj,m)表示用户叫与用户m之间具有直接信任传递关系的用户的集合,其 具体计算方法见公式4(其中i矣j矣d):
[0034] Utrans(Uj,Ui) = {ud I (FT(Uj,Ud) >0) Λ (FT(Ud,Ui)关 0) Λ (UdEU) }(公式4) 〇
[0035] 则用户叫对用户m的二阶信任度ST(Uj,m)的具体计算方法见公式5:
[0036]
[0037] 在具体实施例中,当前用户m对其他用户m的二阶信任度如表3所示:
[0038] 表3当前用户m对其他各用户的二阶信任度
[0039]
[0040]步骤3:综合考虑一阶信任度和二阶信任度的作用,计算当前用户叫对系统用户集 合U中所有其他用户m(l < i <n,i矣j)的综合信任度CT(Uj,Ui)。综合信任度CT(Uj,Ui)的计 算依据是:若u^m的直接交互越频繁(即有较多的共同评分项目八则叫对出的行为就越了 解,那么^应该更依赖二者的一阶信任度;反之,当的一阶信任用户对m的信任传递越多 时,则叫应该相对更依赖二者的二阶信任度。CT( Uj,m)的具体计算方法见公式6:
[0041]
, ·' 、 J *-' - - J- *" ' · '· J I - - J f
[0042] 其中
,它反映了综合信任度对一阶信任度的依赖 程度,因为Ui向Uj的推荐次数越多,Uj对Ui就越了解;
[0043] 而
它实际上反映了综合信任度 对二阶信任度的依赖程度。
[0044] 在具体实施例中,当前用户m对其他用户m的综合信任度如表4所示:
[0045] 表4当前用户m对其他各用户的综合信任度
[0046]
[0047] 步骤4:将用户间综合信任度与用户间相似度相结合,计算复合推荐因子CF(Uj, m),其具体计算方法见公式7(其中的λ为复合系数):
[0048]
[0049]其中Sim(Uj,Ul)是用户和m之间的相似度,可采用皮尔森相关系数、欧几里德距 离相似度、修正余弦相似度(Adjusted Cosine)等方法,本实施例采用公式8所示的修正余 弦相似度进行计算:
[0050]
(公式 8)。
[0051] 其中&表示项目ity的平均得分。公式7中的λ为复合系数,具体取值根据对测试 集进行实验结果最优得到。具体计算时,要求针对训练集使误差MAE取值最小,即比较在特 定λ取值的情况下,预测评分和测试集中用户的真实评分的差值,使之最小,本实施例中具 体实施例中λ取值0.5。
[0052] 误差
分母为所有用户评分集合大小之和,分 子是每个用户对待预测项目的预测评分与真实评分的差值的绝对值之和,其中预测评分 的计算见后面公式9。
[0053]在具体实施例中,通过公式8计算得到的当前用户m与其他用户m的修正余弦相似 度如表5所示:
[0054]表5当前用户m与其他各用户的相似度 rnnssi
[0056] 通过公式7计算得到的复合推荐因子如表6所示:
[0057] 表6其他各用户针对当前用户m的复合推荐因子(λ=〇. 5)
[0058]
[0059] 步骤5:对待推荐项目集合Ire3。中每个项目,计算它对于用户的预测评分。 ,令Urely( Uj,K)表示按照复合推荐因子降序排列而得到的用户叫的前K个邻居用户 的集合:Urank(ity)表示对项目ity有过评分行为的所有用户的集合;;表示用户u x所有评 分的均分。采用公式9计算待预测项目ity对于当前用户1^而言的预测评分,它改进了 传统协同过滤推荐的预测评分计算方法,用复合推荐因子代替原来计算方法中的相似度。 通过计算,将得到I Ira。I个预测评分。
[0060]
(公式 9)。
[0061] 在具体实施例中,通过公式9计算得到当前用户m未评分的待推荐项目it4、it5、 i t6、i t7、i ts对于ui的预测评分,如表7所示:
[0062] 表7待推荐项目对于当前用户m的预测评分
[0063]
[0064] (3)基于权威信任度的新用户推荐计算过程。当前用户叫是系统中的新用户(即冷 启动用户,",0P),因此系统中没有叫的评分数据。此时,引入权威信任度概念,借助系统中 评分准确度和评分可靠度较高的权威用户作为新用户的邻居,来对新用户进行推荐。假定 集合I中的项目共分为c类,分别为类别项目集合Ι^Ιν、〗。,则山山,…,I。}构成集合I的 一个划分,令U(Ig)表示对类别项目集合I g中的项目进行过评分的所有用户的集合。则该过 程具体分为如下4个步骤:
[0065]步骤1:首先,对用户集合U中每一个用户m(l<i<n),计算m对于各类别项目集Ig (l<g")的权威信任度AT(Ig,m)。权威信任度AT(Ig,m)的计算依据是:从m对于类别项目 集I g的评分准确度和评分可靠度两个指标进行考虑,其中评分准确度是通过用户m对18中 项目的评分与其他所有用户对I g中项目的评分的差值来计算,差值越小表示用户m的评分 越准确;而评分可靠度通过用户m的评分数量与系统中评分最多用户的评分数量的比来刻 画,该值越大表明该用户越可靠。权威信任度AT(I g,m)是评分准确度和评分可靠度两个指 标的乘积,其具体计算方法见公式10:
[0066]
[0067] (公式 10)。
[0068] 公式10中等号右边第一项(方括号内的项)反映了用户m在类别项目集18中的评分 准确度,等号右边第二项则反映了用户m的评分可靠度。
[0069] 在具体实施例中,假定当前用户为u1Q,他是系统的新用户。系统的项目集合I中 的8个项目共分为4类,具体的项目分类如表8所示:
[0070] 表8项目分类情况
[0071]
[0072] 依据表1和表8,按照公式10计算系统中所有非新用户
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1