基于网络结构相似性的推荐系统评分预测与推荐算法

文档序号:10725098阅读:235来源:国知局
基于网络结构相似性的推荐系统评分预测与推荐算法
【专利摘要】本发明涉及一种基于网络结构相似性的推荐系统评分预测与推荐算法,基于用户和物品作为网络中节点,用户对物品的评分作为边,边的权值由用户对物品的评分大小决定,构造网络,将推荐系统中用户对物品的评分作为构造网络的基础,并以其网络结构相似性作为推荐选择的主要依据,通过全面考察推荐系统商品、电影等物品之间的联系,借助用户评分物品网络在结构上的相似性,提高了推荐系统推荐物品的多样性,并且使推荐的准确性得到提升。
【专利说明】
基于网络结构相似性的推荐系统评分预测与推荐算法
技术领域
[0001] 本发明涉及一种信息处理技术,特别涉及一种基于网络结构相似性的推荐系统评 分预测与推荐算法。
【背景技术】
[0002] 个性化服务作为热点问题被许多研究领域关注和研究。个性化服务的一个重要研 究内容是个性化推荐,它可以根据用户的兴趣寻找与之具有相似兴趣的物品集合,然后基 于物品之间的相似性推荐用户感兴趣的物品。使用个性化推荐技术向用户推荐适宜其自身 的电影、商品等等,使得用户可以迅速得到符合喜欢和选择倾向的物品信息,而这对于推荐 系统而言,既可以得到用户的信任,获得更多的青睐和使用,也使得系统推荐节省了用户在 大量浏览过程中所消耗的系统资源,从而节省带宽等运营成本,并更好的为用户服务。
[0003] 作为电子商务推荐系统中应用最成功的推荐技术,传统的协同过滤推荐算法存在 两方面问题。其仅仅依靠用户之间的相似度来选取目标用户的邻居,导致推荐精度较低,并 且在推荐时,存在推荐商品的多样性较差的缺点。
[0004] 因此,需要一种更为有效的且具有适当多样性的推荐系统,来实现方便而高效的 服务。

【发明内容】

[0005] 本发明是针对传统的推荐算法准确度低、系统易受攻击的问题,提出了一种基于 网络结构相似性的推荐系统评分预测与推荐算法,通过全面考察推荐系统商品、电影等物 品之间的联系,借助用户评分物品网络在结构上的相似性,实现更加精准的评分计算和推 荐服务。
[0006] 本发明的技术方案为:一种基于网络结构相似性的推荐系统评分预测与推荐算 法,具体包括如下步骤:
[0007] 1)建立当前推荐系统中的用户评分库:遍历当前用户,获得每个用户对所有物品 的评分记录,列出其中部分用户评分数据;
[0008] 2)用下面公式将用户评分数据归一化:
[00?0] 其中ria为用户Ui对物品a的评分,rimax和rimiIMf表用户Ui评分记录中的最高分和 最低分,若最高分与最低分相等,可将归一化值赋为〇,eiae [-1,1],eia为归一化后用户Ui 对电影a的评分值;
[0011] 3)目标用户山搜索物品a;
[0012] 4)基于用户和物品作为网络中节点,用户对物品的评分作为边,边的权值由用户 对物品的评分大小决定,构造网络;
[0013] 5)计算物品之间的相似性,对于任意两个物品α和β,其相关性计算公式为:
[0017] Sap为物品α和物品β的相似性,其中Cap表示物品α和物品β被共同的用户评分过的 共同用户集合中的用户个数,Ca表示所有对物品a评分过的用户集合中用户的数量,μ'和(/ 同样是通过计算得到的两个系数,物品a和物品β共同评分过的用户集合Β中有t个用户, 表示其中第q个用户对物品a的评分,表示其中第q个用户对物品β的评分,σ'表示评分B 集合的离散程度,σ'越大,评分离散程度越高,物品a和物品β的相似性程度越低,Ca不一定 等于Cf!,Safi与Sficc不一定相等;
[0018] 6)对于任意两个用户Ui和Uj,其相似性计算公式为:
[0022]其中Sij为用户Ui和Uj的相似性,Cij表示用户Ui和用户Uj共同评分过的物品集合 中物品的个数,(^表示用户Ui评分过所有的物品集合中物品的数量,以和〇是通过计算得到 的两个系数。假设用户Ui和用户Uj共同评分过的物品集合A中有V个物品,则表示用户 Ui对其中第p个物品的评分,义^表示用户Uj对其中第p个物品的评分,〇表示评分A集合的离 散程度,σ越大,评分离散程度越高,用户Ui和用户Uj的相似性程度越低,G不一定等于Q,因 此Sij与Sji不一定相等;
[0023] 7)依据下面公式,基于物品相似性,对用户仏搜索或评分物品a进行计算:
[0025] 其中g和分别是物品a与物品邱勺历史平均评分,η是物品a的邻居个数,是用 户Ui对物品a的预测评分值,β代表a物品的邻居集合从1至η,r ifs为用户U i对该集合中物品β 的评分,Sea是物品β与物品a的相似性,由步骤5)公式进行计算,;取η=1时,a物品的邻居集 合与其相似性最高的邻居并没有被用户Ui评分,不符合条件,则增大n,直到新的邻居集合 中被Ui评分的邻居数量等于1,计算;
[0026] 8)依据下面公式,基于用户相似性,对用户仏搜索或评分物品a进行计算:
[0028] 其中f和f分别是用户Ui和Uj的历史平均评分,m是用户Ui的邻居个数,也是用 户Ui对物品a的预测评分值,j代表用户Ui的邻居集合从1至m,r扣为集合中用户Uj对该集合 中物品a的评分,Sjl是用户Uj和用户Ui的相似性,由步骤6)公式进行计算,取m=l时,最先获 取的邻居Uj对物品a未进行过评分,则增大m的值,直到出现符合要求的一个邻居,计算;
[0029] 9)最终用户仏搜索或评分物品a的结果为两者的加权和,计算公式如下:
[0031] 10)将物品a的所有邻居中,评分预测最高的h项,按照预测评分从高到低推荐给用 户Ui。
[0032] 本发明的有益效果在于:本发明基于网络结构相似性的推荐系统评分预测与推荐 算法,将推荐系统中用户对物品的评分作为构造网络的基础,并以其网络结构相似性作为 推荐选择的主要依据,提高了推荐系统推荐物品的多样性,并且使推荐的准确性得到提升。
【附图说明】
[0033] 图1为本发明基于网络结构相似性的推荐系统评分预测与推荐算法流程图;
[0034] 图2为本发明用户对物品评分所构造的网络结构图。
【具体实施方式】
[0035] 假设仏(在公式中用下标i表示)为电影推荐系统的用户,曾经对网站数据库中的 若干电影予以评分,分值分布在1-5之间。
[0036] 如图1所示基于网络结构相似性的推荐系统评分预测与推荐算法流程图,以用户 仏搜索物品a为例,其他物品步骤相同,具体步骤如下:
[0037] S1:建立当前推荐系统中的用户评分库:
[0038] 遍历当前用户,获得每个用户对所有电影的评分记录,列出其中部分用户评分数 据,如表1所示。
[0041] S2:用下面公式将用户评分数据归一化:
[0043] 其中ria为用户Ui对电影a的评分,nmax和 rimin代表用户Ui评分记录中的最高分和 最低分,若最高分与最低分相等,可将归一化值赋为〇,eiae [-1,1],eicc为归一化后用户Ui 对电影a的评分值,与原值不同之处在于:其值域分布在正负1之间,并考虑了用户对不同电 影的总体评分数量,修正了用户对电影可能存在的偏见;得到如表2所示数据;
[0044]表 2
[0046] S3:目标用户Ui搜索物品a(设a为电影3);
[0047] S4:基于用户和物品作为网络中节点,用户对物品的评分作为边,边的权值由用户 对物品的评分大小决定,构造网络的如图2所示;
[0048] S5:计算物品之间的相似性,对于任意两个物品α和β,其相关性计算公式为:

[0052] Safi为物品α和物品β的相似性,其中Cap表示物品a和物品β被共同的用户评分过的 共同用户集合中的用户个数,C。表示所有对物品α评分过的用户集合中用户的数量,μ'和(/ 同样是通过计算得到的两个系数。物品α和物品β共同评分过的用户集合Β中有t个用户, 表示其中第q个用户对物品α的评分,表示其中第q个用户对物品β的评分。(/表示评分B 集合的离散程度,σ'越大,评分离散程度越高,物品α和物品邱勺相似性程度越低。同理,因为 Ccc不一定等于Cf!,所以Sccf!与Sficc不一定相等;
[0053]按照相关性计算公式,进行电影相关性计算,可得电影之间相关性如表3所示:
[0054]表 3
[0056] S6:对于任意两个用户Ui和U j,其相似性计算公式为:
[0060]其中Sij为用户Ui和Uj的相似性,Cij表示用户Ui和用户Uj共同评分过的物品集合 中物品的个数,(^表示用户Ui评分过所有的物品集合中物品的数量,以和〇是通过计算得到 的两个系数。假设用户Ui和用户Uj共同评分过的物品集合A中有V个物品,则表示用户Ui 对其中第P个物品的评分,表示用户Uj对其中第p个物品的评分。〇表示评分A集合的离散 程度,σ越大,评分离散程度越高,用户Ui和用户Uj的相似性程度越低。需要注意的是,因为 G不一定等于Q,所以5^与&1不一定相等。计算结果如表4所示;
[0063] S7:依据下面公式,基于物品相似性,对用户仏搜索或评分物品a进行计算:
[0065] 其中U和&分别是物品a与物品邱勺历史平均评分,η是物品a的邻居个数,?f是用 户Ui对物品a的预测评分值,β代表a物品的邻居集合从1至η,r ifs为用户U i对该集合中物品β 的评分,Sea是物品β与物品a的相似性,由步骤S5公式进行计算;取η=1时,a物品的邻居集合 与其相似性最高的邻居并没有被用户Ui评分,不符合条件,因此需要增大n,直到新的邻居 集合中被Ui评分的邻居数量等于1,此时,阳扣的预测评分为=2; ItZ ·.
[0066] S8:依据下面公式,基于用户相似性,对用户仏搜索或评分物品a进行计算:
[0068] 其中1和f分别是用户Ui和Uj的历史平均评分,m是用户Ui的邻居个数,?点也是用 户Ui对物品a的预测评分值,j代表用户Ui的邻居集合从1至m,r扣为集合中用户Uj对该集合 中物品a的评分, Sjl是用户Uj和用户Ui的相似性,由步骤S6公式进行计算;取m=l时,最先获 取的邻居Uj对物品a未进行过评分,因此需要增大m的值,直到出现符合要求的一个邻居,此 时阳扣的预测评分为# =4,2: ??Ζ )
[0069] S9:最终用户Ui搜索或评分物品a的结果为两者的加权和,计算公式如下: 贝lJUi对a的最终预测评分为< =3山
[0070] S10:将a的所有邻居中,评分预测最高的h项(通常按照推荐系统的需求给定,一般 在1至20之间),按照预测评分从高到低推荐给用户Ui。对物品a的邻居进行相似的预测,可 得仏对电影4的评分为5,仏对电影5的评分为4.9,因此想用户仏推荐电影的顺序为电影4、电 影5、电影3。
【主权项】
1. 一种基于网络结构相似性的推荐系统评分预测与推荐算法,其特征在于,具体包括 如下步骤: 1) 建立当前推荐系统中的用户评分库:遍历当前用户,获得每个用户对所有物品的评 分记录,列出其中部分用户评分数据; 2) 用下面公式将用户评分数据归一化:其中ria为用户化对物品a的评分和^min代表用户化评分记录中的最高分和最低 分,若最高分与最低分相等,可将归一化值赋为〇,eiae [-1,1],eia为归一化后用户化对电 影a的评分值; 3) 目标用户化捜索物品a; 4) 基于用户和物品作为网络中节点,用户对物品的评分作为边,边的权值由用户对物 品的评分大小决定,构造网络; 5) 计算物品之间的相似性,对于任意两个物品α和β,其相关性计算公式为:Sue为物品α和物品β的相似性,其中Cap表示物品α和物品β被共同的用户评分过的共同用 户集合中的用户个数,Ca表示所有对物品α评分过的用户集合中用户的数量,μ/和(/同样是 通过计算得到的两个系数,物品α和物品β共同评分过的用户集合Β中有t个用户,表示其 中第q个用户对物品α的评分,及gf表示其中第q个用户对物品β的评分,〇/表示评分B集合的 离散程度,〇/越大,评分离散程度越高,物品α和物品β的相似性程度越低,Ca不一定等于Ce, Safi与站α不一定相等; 6) 对于任意两个用户化和Uj,其相似性计算公式为:其中Su为用户化和Uj的相似性,Cu表示用户化和用户Uj共同评分过的物品集合中物品 的个数,。表示用户化评分过所有的物品集合中物品的数量,4和〇是通过计算得到的两个 系数。假设用户化和用户Uj共同评分过的物品集合A中有V个物品,则表示用户化对其 中第P个物品的评分,表示用户Uj对其中第P个物品的评分,〇表示评分A集合的离散程 度,σ越大,评分离散程度越高,用户化和用户Uj的相似性程度越低,Cl不一定等于Cj,因此 Sij与Sji不一定相等; 7) 依据下面公式,基于物品相似性,对用户化捜索或评分物品a进行计算:其中^和^'分别是物品°与物品0的历史平均评分,η是物品°的邻居个数,;?是用户 化对物品α的预测评分值,β代表a物品的邻居集合从1至n,r巧为用户化对该集合中物品β的 评分,Sfta是物品β与物品a的相似性,由步骤5)公式进行计算,;取n = l时,a物品的邻居集合 与其相似性最高的邻居并没有被用户化评分,不符合条件,则增大n,直到新的邻居集合中 被化评分的邻居数量等于1,计算; 8) 依据下面公式,基于用户相似性,对用户化捜索或评分物品a进行计算:其中巧和f分别是用户化和Uj的历史平均评分,m是用户化的邻居个数,?也是用户化 对物品α的预测评分值,j代表用户化的邻居集合从1至m,r扣为集合中用户Uj对该集合中物 品a的评分,是用户Uj和用户Ui的相似性,由步骤6)公式进行计算,取m=l时,最先获取的 邻居Uj对物品α未进行过评分,则增大m的值,直到出现符合要求的一个邻居,计算 9) 最终用户化捜索或评分物品a的结果为两者的加权和,计算公式如下:10) 将物品a的所有邻居中,评分预测最高的h项,按照预测评分从高到低推荐给用户 Uio
【文档编号】G06Q30/06GK106095974SQ201610442816
【公开日】2016年11月9日
【申请日】2016年6月20日
【发明人】苏湛, 艾均
【申请人】上海理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1