CN109885758B - 一种基于二部图的随机游走的推荐方法 - Google Patents
一种基于二部图的随机游走的推荐方法 Download PDFInfo
- Publication number
- CN109885758B CN109885758B CN201910037640.2A CN201910037640A CN109885758B CN 109885758 B CN109885758 B CN 109885758B CN 201910037640 A CN201910037640 A CN 201910037640A CN 109885758 B CN109885758 B CN 109885758B
- Authority
- CN
- China
- Prior art keywords
- matrix
- recommendation
- products
- similarity
- user
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于二部图的随机游走推荐方法。首先,构建用户‑产品二部图,即根据评分矩阵构造得到相似度矩阵,并进行拉普拉斯正则化处理;然后,采用随机游走思想,利用正则化后的相似度矩阵计算得到具有停止条件的转移矩阵;最后,计算得到推荐矩阵,并将推荐矩阵进行降序排序,得到推荐结果。本发明方法将推荐问题看作半监督的多标签分类问题,采用随机游走思想,可以提高稀疏数据的推荐准确率,并使推荐结果更符合实际应用的需求。
Description
技术领域
本发明属协同过滤推荐系统技术领域,具体涉及一种基于二部图的随机游走的推荐方法。
背景技术
互联网的普及和迅猛发展,使得信息以指数形式增长。用户在面对大量信息的时候,无法容易地得到自己需要的信息,从而导致对信息的利用率降低,这种现象就是信息超载。当前,很多搜索引擎和门户网站利用信息检索的技术来解决信息超载的问题,它们帮助用户在大量的网络信息中获取有用的信息。然而,用户使用相同的关键字搜索信息时,他们得到的结果是一致的,这就导致检索得到的信息个性化程度很低,不能满足用户的兴趣需求。而推荐系统能够有效地解决这个问题。推荐系统收集数据,然后利用推荐算法,预测用户对产品的喜好程度,最后对用户进行产品推荐。推荐系统主要收集用户和产品的特征信息,以及用户对产品的喜好(例如,用户对产品的评分)等。通过分析处理以上信息,推荐系统就可以给用户提供个性化的建议,帮助用户选择喜欢的产品,甚至是潜意识喜欢的产品。协同过滤是目前最成功的推荐技术,它仅利用用户对产品的喜好来做出推荐,在学术界和工业界都到了广泛的关注。
推荐系统的性能主要表现在推荐的准确性上,因此,有许多文献提出了大量的方法,致力于提高协同过滤推荐技术的准确性,包括基于近邻的方法、基于矩阵分解的方法、基于矩阵填充的方法等。Deshpande等人在文献“M.Deshpande and G.Karypis,Item-basedtop-N recommendation algorithms,ACM Trans.on Information System,vol.22,no.1,pp.143–177,2004.”中首先计算产品之间的相似度,然后将历史评分利用相似度加权求和得到用户对产品的推荐矩阵,进而做出推荐。Hu等人在文献“Y.Hu,Y.Koren,andC.Volinsky,Collaborative filtering for implicit feedback datasets,inProceedings of the8th IEEE International Conference on Data Mining,ICDM,2008,pp.263–272.”中认为用户对产品的评分仅仅由一些因素决定,将原始的评分矩阵分解为用户和产品特征矩阵,通过训练数据来拟合这两个矩阵,从而得到推荐结果。Kang等人在文献“Z.Kang,C.Peng,and Q.Cheng,Top-n recommender system via matrix completion,inProceedings of the 30th AAAI Conference on Artificial Intelligence,AAAI,2016,pp.179–185.”中将推荐问题看做矩阵填充问题,利用一个非凸的秩松弛来近似评分矩阵的秩,进而优化目标函数来得到推荐结果。
然而,这些方法都会面临稀疏性问题。在实际的场景中,用户和产品的数目往往是巨大的,大部分用户仅仅评价了极少的产品,同时大部分产品仅被极少数的用户评价,导致评分矩阵变得十分稀疏,使得这些方法的推荐准确率受到影响。虽然有很多混合的推荐方法利用额外的特征信息来解决这个问题,但针对协同过滤,尚没有一种有效的方法。
发明内容
为了克服现有技术的不足,本发明提供一种基于二部图的随机游走推荐方法。首先,构建用户-产品二部图,即根据评分矩阵构造得到相似度矩阵,并进行拉普拉斯正则化处理;然后,采用随机游走思想,利用正则化后的相似度矩阵计算得到具有停止条件的转移矩阵;最后,计算得到推荐矩阵,并将推荐矩阵进行降序排序,得到推荐结果。本发明方法将推荐问题看作半监督的多标签分类问题,可以解决推荐方法稀疏性的问题,使得推荐结果更符合实际应用的需求。
一种基于二部图的随机游走推荐方法,其特征在于步骤如下:
步骤1:设U={U1,U2,...,Um}为m个用户的集合,Ui表示用户,i=1,…,m,m为用户数量,I={I1,I2,...,In}为n个产品的集合,Ij表示产品,j=1,…,n,n为产品数量,首先,构造相似度矩阵W如下:
其中,下标表示矩阵的大小,R为评分矩阵,其矩阵元素Rij表示用户i对产品j的评分,i=1,…,m,j=1,…,n。
其中,D是相似度矩阵W的度矩阵。
其中,Iα和Iβ是对角矩阵,Iα的对角线元素αi满足:
Iβ的对角线元素βi满足:
其中,β为概率,取值范围为(0,1),α=1-β。
步骤3:按下式计算得到推荐矩阵Fm:
其中,D1为矩阵R的度矩阵,D2为矩阵RT的度矩阵,D3为矩阵的度矩阵,D4为矩阵的度矩阵,Im为大小为m×m的单位矩阵,为大小为n×n的对角矩阵,其对角元素为α,为大小为n×n的对角矩阵,其对角元素为β。
将推荐矩阵Fm的每一行元素按照从大到小排序,并剔除用户已经评价过的产品,即为最终的推荐结果。
步骤2中转移矩阵P还可以按下式计算得到:
本发明的有益效果是:由于采用随机游走方法,能够充分挖掘用户-产品二部图中的信息,从而提高稀疏数据上的推荐准确率;由于使用拉普拉斯正则化,降低了二部图中高度结点对个性化推荐的不利影响,提高了低度结点的游走概率,可以更好的挖掘稀疏二部图中的关联信息;由于采用解析解的方式得到推荐结果,不需要训练,大大地提升了推荐的效率。
附图说明
图1是本发明的一种基于二部图的随机游走推荐方法基本流程图
图2是本发明的随机游走思想示意图
图3是本发明的评分矩阵示意图
图4是本发明中拉普拉斯正则化作用示意图
具体实施方式
下面结合附图和实施例对本发明进一步说明,本发明包括但不仅限于下述实施例。
本发明提供了一种基于二部图的随机游走推荐方法,其基本实现过程如图1所示。本发明方法主要采用随机游走的思想,如图2所示,将用户与产品分别看作二部图的两个结点集,将评分值作为结点之间的权重。从目标用户结点出发,walker在此二部图上进行游走,在每一步,walker能够随机走向下一个与当前结点相连接的结点。权重代表了用户对产品的喜好程度,一个用户越喜欢某一个产品,他们之间的权重值就越高。因此,当walker选择下一步的结点时,使walker以较大概率走向与之连接权重值较大的结点,并设定一个停止条件,当walker目前在一个产品结点时,使之以概率β停止在此产品结点,并以概率1-β游走到下一个结点。当walker在二部图上这样游走无穷步后,就可以得到目标用户最喜欢的产品。
本发明方法的具体实现过程如下:
设U={U1,U2,...,Um}为m个用户的集合,Ui表示用户,i=1,…,m,m为用户数量,I={I1,I2,...,In}为n个产品的集合,Ij表示产品,j=1,…,n,n为产品数量。定义评分矩阵如图3所示,矩阵的每一行代表一个用户,矩阵的每一列代表一个产品,矩阵中的元素Rij表示用户i对产品j的评分,i=1,…,m,j=1,…,n,如果Rij=0,表示用户i没有对产品j进行评分。
1、构造相似度矩阵W:
相似度矩阵W用来表示二部图中结点之间的相似度,用户对产品越喜欢,评分越高,相似度越高,结点之间的游走概率越大。
其中,D是相似度矩阵W的度矩阵。对于矩阵中的每个元素,上式也可以写为:
在推荐系统中,根据评价产品的长尾分布,有一些流行的产品被频繁地评价。同样,有一些活跃的用户评价了很多产品。在二部图上,这些用户和产品是高度结点,他们会导致次优的推荐效果,即不是个性化的推荐结果。因为walker会很容易游走到这些结点上,从而导致大部分用户被推荐一些特定的产品。如图4所示,线越粗代表权重值越大,拉普拉斯正则化可以减小高度结点的边的权重值,并且可以增加低度结点的边的权重值。这样当walker在选择下一步的结点时,正则化化操作会弱化关注热度很高的产品,让walker有更高的可能性去游走到更个性化的结点,从而更精准地把握用户的兴趣点,来做出更好的推荐。
2、计算转移矩阵P:
将相似度矩阵按行归一化,得到转移矩阵P:
本发明称此时的矩阵P为概率转移矩阵,而基于此概率转移矩阵的算法称为RW算法。
但是对于推荐系统来说,系统关心的是每个用户对所有产品的一个喜好排列,而并不需要walker随机游走的准确的概率值。因此,还可以直接将正则化的相似度矩阵作为偏移矩阵,即:
本发明称此时的矩阵P为偏好转移矩阵,基于此偏好转移矩阵的算法称为I-RW算法。
因为用户顶点与产品结点的关联越大,用户就越可能喜欢这个产品,walker游走的步数越少,得到的转移矩阵中,walker游走到目标用户喜欢的产品的偏好值越大。因此,需要给每一步游走的结果分配一个权重值。为此,本发明设定了一个随机游走的停止条件,当walker目前在一个产品结点时,使之以概率β停止在此产品结点,并以概率α=1-β游走到下一个结点。因此,如下构造具有停止条件的转移矩阵
其中,Iα和Iβ是对角矩阵,Iα的对角线元素αi满足:
Iβ的对角线元素βi满足:
其中,β为概率,取值范围为(0,1),α=1-β。
3、为了得到随机游走的结果,定义G为:
其中,((IαP)kIβ)ij是walker从结点i出发在第k步停止到产品j的偏好值。
定义初始指示矩阵Y为:
其中,0m×n为大小为m×n的全零矩阵,In为大小为n的单位矩阵。
本发明将产品看作标签,用户的初始标签为0,产品的初始标签是其本身。
按照下式计算得到半监督多分类结果,即随机游走的结果矩阵F:
其中,Im+n为大小为m+n的单位矩阵,Fm为矩阵F的前m行,即为推荐矩阵,Fn为矩阵F的后n行。
对于RW算法,因为F1=1,其中因此,(Fm)ij是walker从用户i出发停止到标签j的概率;对于I-RW算法,(Fm)ij不再是一个概率值,而是代表用户i喜欢产品j的程度。因此,对于目标用户,本发明将推荐矩阵Fm的每一行进行降序排序,并剔除用户已经评价过的产品,即为推荐系统的推荐结果,还可以按需求取前N个产品推荐给用户。
为了减少不必要的计算,可以采用解析方式直接计算出推荐矩阵Fm。
因此,可以得到:
为了验证本发明方法在稀疏数据上的表现性,本发明在两个真实推荐数据集上进行实验,并选取了不同层次的稀疏度来划分实验数据,分别为1:10,1:15:1:20,1:25和1:30.同时,分别选取基于用户的协同过滤方法(U-KNN)、基于产品的协同过滤方法(I-KNN)、稀疏线性方法(SLIM)、低秩稀疏线性方法(LorSLIM)、加权矩阵分解方法(WRMF)、纯奇异值分解方法(PureSVD)、奇异值阈值方法(SVT)、基于行列式对数的矩阵填充方法(LDMC)、产品排列方法(ItemRank)、个性化记录排列方法(PPR)等十种方法进行效果对比,计算不同方法在两个数据集上的平均推荐精准度。表1为在数据集MovieLens上的计算结果数据,表2为在数据集Netflix上的计算结果。
平均推荐精准度Precision@N的定义为:
从表1与表2可以看出,随着稀疏程度的增加,大部分方法的推荐精准度都一定程度上都到了稀疏数据的影响,甚至不能够做出推荐。而对于本发明的I-RW算法几乎不受稀疏数据的影响,并且能做出很高的精准度的推荐。
表1
表2
Claims (2)
1.一种基于二部图的随机游走推荐方法,其特征在于步骤如下:
步骤1:设U={U1,U2,...,Um}为m个用户的集合,Ui表示用户,i=1,…,m,m为用户数量,I={I1,I2,...,In}为n个产品的集合,Ij表示产品,j=1,…,n,n为产品数量,首先,构造相似度矩阵W如下:
其中,下标表示矩阵的大小,R为评分矩阵,其矩阵元素Rij表示用户i对产品j的评分,i=1,…,m,j=1,…,n;
其中,D是相似度矩阵W的度矩阵;
其中,Iα和Iβ是对角矩阵,Iα的对角线元素αi满足:
Iβ的对角线元素βi满足:
其中,β为概率,取值范围为(0,1),α=1-β;
步骤3:按下式计算得到推荐矩阵Fm:
其中,D1为矩阵R的度矩阵,D2为矩阵RT的度矩阵,D3为矩阵的度矩阵,D4为矩阵的度矩阵,Im为大小为m×m的单位矩阵,为大小为n×n的对角矩阵,其对角元素为α,为大小为n×n的对角矩阵,其对角元素为β;
将推荐矩阵Fm的每一行元素按照从大到小排序,并剔除用户已经评价过的产品,即为最终的推荐结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910037640.2A CN109885758B (zh) | 2019-01-16 | 2019-01-16 | 一种基于二部图的随机游走的推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910037640.2A CN109885758B (zh) | 2019-01-16 | 2019-01-16 | 一种基于二部图的随机游走的推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109885758A CN109885758A (zh) | 2019-06-14 |
CN109885758B true CN109885758B (zh) | 2022-07-26 |
Family
ID=66926044
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910037640.2A Active CN109885758B (zh) | 2019-01-16 | 2019-01-16 | 一种基于二部图的随机游走的推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109885758B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111104606B (zh) * | 2019-12-06 | 2022-10-21 | 成都理工大学 | 一种基于权重的条件游走图推荐方法 |
CN112364252B (zh) * | 2021-01-12 | 2021-04-23 | 北京世纪好未来教育科技有限公司 | 内容推荐方法、装置、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103778145A (zh) * | 2012-10-22 | 2014-05-07 | 中国移动通信集团广东有限公司 | 一种信息推荐方法和系统 |
CN104699693A (zh) * | 2013-12-05 | 2015-06-10 | 中国移动通信集团广东有限公司 | 一种信息处理方法及装置 |
CN105913296A (zh) * | 2016-04-01 | 2016-08-31 | 北京理工大学 | 一种基于图的个性化推荐方法 |
WO2016191959A1 (zh) * | 2015-05-29 | 2016-12-08 | 深圳市汇游智慧旅游网络有限公司 | 一种时变的协同过滤推荐方法 |
KR101825046B1 (ko) * | 2016-07-29 | 2018-02-05 | 한양대학교 산학협력단 | 이직 순서를 고려한 구인 공고 추천 시스템 및 그 방법 |
CN108898459A (zh) * | 2018-06-25 | 2018-11-27 | 中国联合网络通信集团有限公司 | 一种商品推荐方法及装置 |
CN109190045A (zh) * | 2018-09-15 | 2019-01-11 | 新乡学院 | 一种基于二部图最近邻的个性化推荐方法 |
-
2019
- 2019-01-16 CN CN201910037640.2A patent/CN109885758B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103778145A (zh) * | 2012-10-22 | 2014-05-07 | 中国移动通信集团广东有限公司 | 一种信息推荐方法和系统 |
CN104699693A (zh) * | 2013-12-05 | 2015-06-10 | 中国移动通信集团广东有限公司 | 一种信息处理方法及装置 |
WO2016191959A1 (zh) * | 2015-05-29 | 2016-12-08 | 深圳市汇游智慧旅游网络有限公司 | 一种时变的协同过滤推荐方法 |
CN105913296A (zh) * | 2016-04-01 | 2016-08-31 | 北京理工大学 | 一种基于图的个性化推荐方法 |
KR101825046B1 (ko) * | 2016-07-29 | 2018-02-05 | 한양대학교 산학협력단 | 이직 순서를 고려한 구인 공고 추천 시스템 및 그 방법 |
CN108898459A (zh) * | 2018-06-25 | 2018-11-27 | 中国联合网络通信集团有限公司 | 一种商品推荐方法及装置 |
CN109190045A (zh) * | 2018-09-15 | 2019-01-11 | 新乡学院 | 一种基于二部图最近邻的个性化推荐方法 |
Non-Patent Citations (2)
Title |
---|
PERSONAL RECOMMENDATION USING WEIGHTED BIPARTITE GRAPH PROJECTION;MINGSHENG SHANG,YAN FU,DUAN-BIN CHEN;《Journal of Intelligent Systems》;20081231;全文 * |
基于条件型游走二部图协同过滤算法;王明佳等;《计算机应用研究》;20171231;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109885758A (zh) | 2019-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111797321B (zh) | 一种面向不同场景的个性化知识推荐方法及系统 | |
US10423648B2 (en) | Method, system, and computer readable medium for interest tag recommendation | |
KR100997541B1 (ko) | 신상품 추천문제 해결을 위한 내용기반 필터링과 협업 필터링을 혼합한 사용자 프로파일 기반 이미지 추천 방법 및 장치 | |
CN103258000B (zh) | 对网页中高频关键词进行聚类的方法及装置 | |
CN108228541B (zh) | 生成文档摘要的方法和装置 | |
CN112119388A (zh) | 训练图像嵌入模型和文本嵌入模型 | |
US20150066904A1 (en) | Integrating and extracting topics from content of heterogeneous sources | |
CN109840833B (zh) | 贝叶斯协同过滤推荐方法 | |
CN111428138A (zh) | 一种课程推荐方法、系统、设备及存储介质 | |
CN108197144B (zh) | 一种基于BTM和Single-pass的热点话题发现方法 | |
CN108595688A (zh) | 基于在线学习的潜在语义跨媒体哈希检索方法 | |
CN110909182A (zh) | 多媒体资源搜索方法、装置、计算机设备及存储介质 | |
CN112074828A (zh) | 训练图像嵌入模型和文本嵌入模型 | |
CN108427756B (zh) | 基于同类用户模型的个性化查询词补全推荐方法和装置 | |
Wang et al. | Aspect-ratio-preserving multi-patch image aesthetics score prediction | |
CN109885758B (zh) | 一种基于二部图的随机游走的推荐方法 | |
CN109034953B (zh) | 一种电影推荐方法 | |
CN111209469A (zh) | 一种个性化推荐方法、装置、计算机设备及存储介质 | |
CN113240111A (zh) | 基于离散余弦变换通道重要性得分的剪枝方法 | |
US11914638B2 (en) | Image selection from a database | |
CN110085292A (zh) | 药品推荐方法、装置及计算机可读存储介质 | |
Glowacka et al. | Content-based image retrieval with multinomial relevance feedback | |
Ramadhan et al. | Collaborative filtering recommender system based on memory based in twitter using decision tree learning classification (case study: Movie on netflix) | |
CN113033709A (zh) | 链路预测方法和装置 | |
CN112231579A (zh) | 基于隐式社群发现的社会化视频推荐系统与方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |