CN116186384A - 一种基于物品隐含特征相似度的物品推荐方法及系统 - Google Patents
一种基于物品隐含特征相似度的物品推荐方法及系统 Download PDFInfo
- Publication number
- CN116186384A CN116186384A CN202211613885.3A CN202211613885A CN116186384A CN 116186384 A CN116186384 A CN 116186384A CN 202211613885 A CN202211613885 A CN 202211613885A CN 116186384 A CN116186384 A CN 116186384A
- Authority
- CN
- China
- Prior art keywords
- user
- similarity
- matrix
- item
- articles
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 71
- 239000011159 matrix material Substances 0.000 claims abstract description 100
- 230000006870 function Effects 0.000 claims abstract description 69
- 238000012549 training Methods 0.000 claims abstract description 38
- 238000000354 decomposition reaction Methods 0.000 claims abstract description 34
- 230000003993 interaction Effects 0.000 claims description 33
- 239000013598 vector Substances 0.000 claims description 28
- 238000004364 calculation method Methods 0.000 claims description 13
- YBJHBAHKTGYVGT-ZKWXMUAHSA-N (+)-Biotin Chemical compound N1C(=O)N[C@@H]2[C@H](CCCCC(=O)O)SC[C@@H]21 YBJHBAHKTGYVGT-ZKWXMUAHSA-N 0.000 claims description 7
- FEPMHVLSLDOMQC-UHFFFAOYSA-N virginiamycin-S1 Natural products CC1OC(=O)C(C=2C=CC=CC=2)NC(=O)C2CC(=O)CCN2C(=O)C(CC=2C=CC=CC=2)N(C)C(=O)C2CCCN2C(=O)C(CC)NC(=O)C1NC(=O)C1=NC=CC=C1O FEPMHVLSLDOMQC-UHFFFAOYSA-N 0.000 claims description 7
- 238000007781 pre-processing Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 2
- 238000012217 deletion Methods 0.000 claims description 2
- 230000037430 deletion Effects 0.000 claims description 2
- 238000005070 sampling Methods 0.000 abstract description 11
- 238000010276 construction Methods 0.000 abstract description 5
- 230000000694 effects Effects 0.000 description 6
- 238000012163 sequencing technique Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- CLOMYZFHNHFSIQ-UHFFFAOYSA-N clonixin Chemical compound CC1=C(Cl)C=CC=C1NC1=NC=CC=C1C(O)=O CLOMYZFHNHFSIQ-UHFFFAOYSA-N 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000003313 weakening effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种基于物品隐含特征相似度的物品推荐方法及系统。本发明通过无偏矩阵分解得到物品隐含特征,使用物品隐含特征计算物品相似度。进一步地,基于物品相似度完成贝叶斯个性化排序中三元组和目标函数的构造优化了负样本采样问题并且提高了方法的可解释性。此外,本发明引入了倾向性加权评分,解决了训练样本不随机缺失的问题,能够减少因为物品流行度带来的偏差。
Description
技术领域
本发明属于个性化推荐领域,具体涉及一种基于物品隐含特征相似度的物品推荐方法及系统。
背景技术
贝叶斯个性化排序是一种常用于处理隐式反馈数据的推荐方法。其通过构造算三元组来解决隐式反馈数据中负样本不可观察问题。三元组假设用户对交互过的物品会比没有交互过的物品更感兴趣。
传统贝叶斯个性化排序存在以下问题:首先,三元组中负样本的采样过于随机,这将导致用户潜在的偏好物品被当作负样本进行训练,使得训练出的模型出现偏差。其次,受推荐系统影响,用户往往更容易接触到更流行的物品,这会导致采集到的训练样本不随机缺失的问题。最后,传统贝叶斯个性化排序方法缺少可解释性,即用户不清楚一个物品被推荐给他们的理由和原因。
针对传统贝叶斯个性化排序上述存在的问题,本发明提出一种基于物品隐含特征相似度的物品推荐方法及系统,意图解决现有方法中存在的不足。
发明内容
针对传统贝叶斯个性化排序存在的问题,本发明公开了一种基于物品隐含特征相似度的物品推荐方法及系统。本发明通过无偏矩阵分解得到物品隐含特征,使用物品隐含特征计算物品相似度。进一步地,基于物品相似度完成贝叶斯个性化排序中三元组和目标函数的构造优化了负样本采样问题并且提高了方法的可解释性。此外,本发明引入了倾向性加权评分,解决了训练样本不随机缺失的问题,能够减少因为物品流行度带来的偏差。
为了解决现有问题,本发明的具体技术方案如下:
第一方面,提供一种基于物品隐含特征相似度的物品推荐方法,包括以下步骤:
步骤(1):获取用户与物品交互的隐式反馈数据集,并将上述数据集进行预处理;
步骤(1)包含以下步骤:
步骤(1.1):对数据进行二值化处理,得到交互矩阵MT;
交互矩阵MT中的元素Tu,i为0或1,代表用户是否与物品发生交互;矩阵MT具体是:
其中u代表用户集U={1,2,3,...,m}中的一个用户,i代表物品集I={1,2,3,...,n}中的一个物品,Du,i表示数据集D中某个元素;
基于上述计算逻辑可得用户物品交互矩阵MT∈{0,1}m×n。
步骤(1.2):切分数据集;
以比例η将隐式数据集D=U×I分割为DS=US×I和DB=UB×I,US∪UB=U。其中DS用于计算物品隐含特征,数据DB用于训练推荐模型。
步骤(2):矩阵分解获得物品隐含特征;
使用数据集DS作为矩阵分解模型中的数据,在矩阵分解模型学习后保存学习产生的物品隐含特征。
具体的,步骤(2)使用到引入倾向性加权评分的无偏矩阵分解,步骤如下:
步骤(2.1):计算倾向性加权评分;
以物品在用户面前曝光的概率作为倾向性评分,根据交互与曝光概率和用户偏好之间的关系可知,只有当用户即偏好该物品且物品暴露在了用户面前才能与之产生交互,因此在矩阵分解模型中要针对曝光概率这一因素调整模型,避免出现不随见缺失的问题。交互与曝光和用户的偏好的关系如下:
P(Tu,i=1)=P(eu,i=1,ru,i=1) 式(2)
Tu,i=eu,i·ru,i 式(3)
其中eu,i和ru,i均为伯努利随机变量,并且假设二者相互独立,eu,i=1时物品i暴露在用户u前,eu,i=0代表i没有出现在用户u面前过。ru,i=1代表用户u偏好物品i,ru,i=0代表用户u不偏好物品i;
用Ei表示物品的曝光概率,在数据集中物品的曝光概率Ei可以通过统计一个物品与不同用户的交互次数来确定。具体计算公式如下:
其中τ为超参数通常≤1,此处设为0.5,m为用户的总数量,g为与不同用户交互次数最多的物品。
步骤(2.2)构造目标函数;
因此原交互矩阵MT可表示为:
MT=WS×(QS)T 式(5)
其中(QS)T为QS的转置矩阵;
一个物品的用户偏好程度可表示为:
ru,i=wu·qi 式(6)
综上,根据矩阵分解逻辑模型构造目标函数并在目标函数中引入倾向性加权评分来减少曝光度带来的误差,进一步提高了所得物品隐含特征的准确度;
无偏矩阵分解的目标函数如下:
步骤(2.3)矩阵分解模型训练;
在目标函数中加入正则项避免训练过拟合,并且使用梯度下降更新目标函数中用户隐含特征向量wu和物品隐含特征向量qi。当目标函数收敛,更新完成后的QS即为步骤(3)中所需的物品隐含特征矩阵。加入正则的目标函数如下:
其中λs为正则项系数。
步骤(3):根据保存的物品隐含特征计算物品的隐含特征相似度,并构造物品之间的隐含特征相似矩阵;具体如下:
步骤(3.1):计算物品隐含特征相似度;
使用物品隐含特征矩阵QS计算各物品间的相似度。相似度的计算使用到余弦相似度,其计算公式如下:
其中qi,qj均为物品隐含相似度矩阵QS中某个物品的隐含特征向量,qi,qj的长度为θ。f为向量中的一个维度。函数中加一是为了让相似度不为负数,因此sim(i,j)∈[0,2]。
步骤(3.2):构造隐含特征相似矩阵与相似度矩阵;
根据所得的物品相似度,构造相似度矩阵Msim,记录n个物品间的相似度sim(i,j);然后通过相似度矩阵Msim构造隐含特征相似矩阵Msi,判断物品i与物品j是否为相同物品,若是则不作为相似物品,即i=j时sii,j=0,若否则继续判断物品i与物品j是否满足sim(i,j)≥v,若是则认为两个物品i、j相似sii,j=1,反之则认为物品i、j不相似sii,j=0,并在矩阵中更新相应元素;具体如下:
其中v为判断两物品是否相似的阈值,sii,j为矩阵Msi中的一个元素,不将相同的物品作为相似物品,矩阵Msi大小为n×n;
基于上述步骤得到物品隐含特征相似矩阵Msi和物品隐含特征相似度矩阵Msim,矩阵Msim大小为n×n。
步骤(4):训练基于物品隐含特征相似度的贝叶斯个性化排序方法模型;具体步骤如下:
步骤(4.1):构造三元组;
<u,i,j>,u∈UB,i,j∈I 式(11)
步骤(4.2):根据三元组构造基于物品隐含特征相似度的贝叶斯个性化排序方法的目标函数;
区别于传统贝叶斯个性化排序的目标函数,本发明引入了倾向性加权评分削弱流行度带来的曝光误差,并创新性地引入相似度影响因子S控制目标函数的训练方向;改进后的贝叶斯个性化排序目标函数如下:
其中|UB|,|I|前者表示数据集DB中用户的个数,后者表示DB中物品的个数。σ(·)为simoid函数。Δru,i,j为用户u对i预测的偏好程度与用户u对j预测的偏好程度的差值。预测值由矩阵分解得到,同理得到的预测值;
相似度影响因子S数学逻辑如下:
在影响因子S的影响下,目标函数会由三元组的不同发生改变,并且对训练的方向产生影响,变化后的目标函数如下:
基于物品隐含特征相似度的贝叶斯个性化排序依据相似因子S与倾向性加权评分Ei对目标函数进行了调整,以物品i与物品j的相似性改变了目标函数产生了不同的训练结果。
由式(14)可得当物品i,j相似时,且用户未曾与物品j产生交互时,目标函数不将Δru,i,j扩大,而是根据i与j之间的相似度sim(i,j)缩小物品i与物品j之间的偏好差距Δru,i,j。使得用户潜在的偏好物品j更容易被推荐给用户;
当物品i,j不相似时,函数扩大Δru,i,j,即相当于把与物品i不相似且未交互过的物品j作为负样本进行训练;
进一步的,当Tu,j=1时即用户与物品i与物品j均有交互时,改进后的模型同样进行训练,由于物品的曝光度Ei≤1因此(1-Tu,j)会在此时小于等于0,目标函数的目的又变为了缩小偏好差距Δru,i,j,使得用户u感兴趣的物品的预测偏好更接近。这充分利用了隐式数据集中数量少且珍贵的正样本。
步骤(4.3):根据目标函数训练推荐模型;
在目标函数中加入正则项并且根随机梯度下降更新隐含特征wu,qi,qj;加入正则项后的目标函数如下:
分别对目标函数中的向量wu,qi,qj求其梯度:
使用随机梯度下降SGD更新向量wu,qi,qj:
循环执行步骤步骤(4.3),当wu,qi,qj收敛时,则得到了最优的向量wu,qi,qj,至此基于物品隐含特征相似度的贝叶斯个性化排序模型训练完成。
步骤(5):根据训练后的推荐模型计算用户对物品的偏好度并排序,并根据该序列将物品推荐给用户;
步骤(5)的具体步骤如下:
步骤(5.1):计算用户对物品的偏好程度;
其中UB为DB数据集中的用户集合,I则为所有的物品集合。
步骤(5.2):生成推荐序列;
选择一个用户u,将所得的用户u对各个物品的偏好程度进行排序,并将前N个物品推荐给用户u。
第二方面,提供基于物品隐含特征相似度的物品推荐系统,其特征在于包括训练后的基于物品隐含特征相似度的贝叶斯个性化排序模型。
第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行所述的方法。
第四方面,提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现所述的方法。
相比于现有方法,本发明在以下几点有更好的效果:
1、准确性和合理性。本发明负样本采样及模型训练更合理,传统贝叶斯个性化排序负样本选择过于随机,会将用户潜在的偏好对象当作负样本进行训练。而本发明通过引入相似因子及倾向性加权评分,提供了更合理的负样本采样策略和模型目标函数,并针对三元组中物品i与物品j的关系让目标函数产生不同的训练方向,提升了贝叶斯个性化排序方法的合理性和准确性。
2、适用性。本发明相似度计算不依赖额外数据集,其他方法提供的负样本采样策略常常要使用到额外采集到的特征,如用户特点,物品特征等来实现隐式反馈数据集中的负采样。本发明使用到的物品相似度计算策略不再依赖额外采集的数据,而是基于隐式反馈数据计算物品相似度,增加了方法的适用面和部署效率,可用于更多现实数据。
3、可解释性。本发明基于物品的相似度构造目标函数,这使得用户可以得知他们被推荐给一个物品的原因是他们曾与某一与该物品相似的物品产生过交互行为。这一定程度上提高了用户对推荐系统的信任,让用户获得更好的推荐体验。
附图说明
图1为本方法的流程图。
图2为本方法的数据处理流程图。
图3为矩阵分解方法的基本原理。
图4为三元组构造对目标函数训练的影响。
图5为本发明在MAP@K指标下与其它两种方法的效果对比。
图6为本发明在NDCG@K指标下与其它两种方法的效果对比。
具体实施方式
下面将结合发明附图对本发明一种基于物品隐含特征相似度的物品推荐方法作进一步说明。
一种基于物品隐含特征相似度的物品推荐方法,图1包括以下步骤:
步骤(1):获取用户与物品交互的隐式反馈数据。实验使用MoviesLen 100K数据集。
步骤(2):切分数据与数据预处理;
MoviesLen 100K数据集数据主要形式为用户对电影的评分,并不是本发明所使用到的隐式反馈数据集,因此根据图2对数据进行相应处理;具体步骤如下:
步骤(2.1):除去数据集中交互信息外的多余信息;
去除数据集中用户的评分时间等其它多余信息,仅保留用户id物品id以及用户评分。
步骤(2.2):根据用户的隐式交互行为构造交互矩阵;
根据用户是否有与物品交互构造二值化交互矩阵MT,MT∈{0,1}m×n,其中m为数据集D中所有用户的数量,n为数据集中所有物品的数量。交互矩阵MT中的元素Tu,i的计算逻辑如下:
其中u为用户集U中的一个用户id,i为物品集I中的一个物品id,U={1,2,3,...,m},I={1,2,3,...,n}。
步骤(2.3):基于交互矩阵计算物品的曝光度;
基于MT计算物品曝光度Ei,计算公式如下:
统计一个物品与多少个不同用户进行过交互,其中物品g为与不同用户交互过最多次的物品。变量τ为超参数,此处设置为0.5。
步骤(2.4):切分数据集;
切分数据集D,将数据集按照比率η切分为DS与DB。DS作为产生物品隐含特征数据集,DB用于训练推荐模型;在MoviesLen 100K数据集中使用测试集作为DS,训练集为DB;
DS与DB关系如下:
DS=US×I,DB=UB×I,US∪UB=U 式(3)
其中US为DS中的用户集,UB为DB中的用户集。
步骤(3):无偏矩阵分解计算物品隐含特征;
基于数据集DS计算物品隐含特征QS。
步骤(3.1):随机选取负样本用于矩阵分解;
使用无偏矩阵分解的方法计算物品隐含特征。正样本的选择上使用所有与用户有过交集Tu,i=1的物品作为正样本定义为<u,i>+,且设Z+为正样本数,Z-未负样本数。负样本的选择上随机选取未与用户交互过的物品作为负样本<u,i>-,其数量Z-∞Z+。
步骤(3.2):矩阵分解原理;
矩阵分解即将原矩阵分解为与两个矩阵,其中θ为隐含特征的维度,|US|为数据集DB中的用户个数;矩阵分解原理如图3所示;矩阵WS记录了|US|个用户的θ维隐含特征向量,矩阵QS记录了个n物品的θ维隐含特征向量;交互矩阵MT可表示为为MT=WS×(QS)T,进一步地,用户对物品的偏好程度ru,i可表示为其中:
步骤(3.3):定义倾向性加权评分;
用户与一个物品发生交互需要用户既偏好物品的同时,物品又要曝光在用户前,因此交互与曝光和用户的偏好的关系如下:
P(Tu,i=1)=P(eu,i=1,ru,i=1) 式(5)
Tu,i=eu,i·ru,i 式(6)
其中eu,i和ru,i均为伯努利随机变量,并且假设二者相互独立,eu,i=1时物品i暴露在用户u前,eu,i=0代表i没有出现在用户u面前过;ru,i=1代表用户u偏好物品i,ru,i=0代表用户u不偏好物品i;
基于上述关系,引入逆向倾向性加权评分Ei来消除由物品的流行度产生的不随机缺失问题,进一步优化了模型训练的准确度。
步骤(3.4)构造无偏矩阵分解的目标函数;
构造引入了倾向性加权评分的无偏矩阵分解目标函数:
步骤(3.5)训练引入倾向性加权评分的无偏矩阵分解模型;
基于上述目标函数Optsim,使用随机梯度下降迭代更新目标函数中用户隐含特征向量wu和物品隐含特征向量qi,当向量wu与向量qi收敛时训练完成;由qi,i∈I组成的物品隐含特征向量矩阵将用于步骤(4)中的相似度计算。
步骤(4):基于隐含特征计算物品相似度并构造相似矩阵与相似度矩阵。
步骤(4.1):计算物品隐含特征余弦相似度;
使用余弦相似度计算物品间的相似度,其公式为:
其中qi,qj均为物品隐含特征矩阵Qs中某个物品的隐含特征向量,qi,qj的长度为θ。f为向量中的一个维度。函数中加一是为了让相似度不为负数,因此sim(i,j)∈[0,2]。
步骤(4.2):计算相似度矩阵与相似矩阵;
其中sii,j为相似矩阵Msi中的一个元素,即当相似度大于等于阈值v时则判断两物品相似,且不将相同的物品作为相似物品。
步骤(5):使用改进后的贝叶斯个性化排序方法训练推荐模型;
步骤(5.1):构造三元组;
基于数据集DB构造三元组,三元组的构造逻辑如下:
<u,i,j>,u∈UB,i,j∈I 式(10)
<u,i,j>为构造的三元组,UB为数据集DB中的所有用户集合;以集合存放构造好的三元组,可以看出三元组中正样本与负样本的选择空间是所有物品,这与传统贝叶斯个性化排序不同,具体原因将结合图4与目标函数进行解释。
步骤(5.2):构造目标函数;
传统贝叶斯个性化排序的思想是假设用户对交互过的物品i会比未交互过的物品j更感兴趣,目标函数的目的是加大交互过物品与为交互过物品的差值;但这样的假设也会使得潜在的用户偏好物品被当作负样本训练,依据这样的模型进行推荐会使得流行度高的物品更容易被推荐给用户,也会使得一些用户的偏好物品不能被正确地推荐给用户;针对以上问题本发明基于相似矩阵Msi与相似度矩阵Msim以及倾向性加权评分Ei重新构造个性化排序模型的目标函数;函数如下:
其中|U|,|I|前者表示数据集DB中用户的个数,后者表示DB中物品的个数,σ(·)为simoid函数,Δru,i,j为用户u对i预测的偏好程度与用户u对j预测的偏好程度的差值。预测值由矩阵分解得到;目标函数会根据正负样本的取样以及相似因素S的改变发生变化。具体变化如下:
①当物品i与j相似且用户未与物品j发生交互目标函数如下:
②当物品i与j不相似且用户未与物品j发生交互目标函数如下:
③当用户与i和j均发生交互时,目标函数如下:
④其他情况:
OptB=0,Tu,i=0 式(15)
在情况①时,目标函数缩小了Δru,i,j,减少了i和j之间的偏好差距使得相似物品j的预测偏好更接近用户交互过的物品i;
在情况②时,目标函数如传统贝叶斯个性化排序,扩大了Δru,i,j,使得物品i和与物品i不相似的物品j之间的偏好度扩大;
在情况③中,目标函数虽然与情况②相同但是因为逆向倾向性加权评分使得目标函数目的发生变化;由于物品曝光度Ei∈[0,1],使得的符号产生变化,这也导致目标函数缩小了Δru,i,j,让同为用户交互过的物品i与j偏好度更加接近;
情况④即i为用户未交互过的物品时,函数不更新向量;
图4展示了在四种能对训练产生影响的三元组对训练结果的影响;
当用户与物品j有交互且物品j相似于物品i则缩小Δru,i,j;当用户与物品j有交互且物品j不相似于物品i则缩小Δru,i,j;当用户与物品j无交互且物品j不相似于物品i也缩小Δru,i,j;当用户与物品j无交互且物品j不相似于物品i则扩大Δru,i,j。
步骤(5.3):训练基于物品隐含特征相似度物品推荐模型;
使用随机梯度下降方法更新向量wu,qi,qj;
向量wu,qi,qj的梯度如下:
基于向量wu,qi,qj的梯度更新向量wu,qi,qj;
循环执行步骤步骤(5.3),当wu,qi,qj收敛时,则完成了基于物品隐含特征相似度的物品推荐模型的训练。
步骤(6):生成推荐序列;
根据模型计算用户对物品的偏好度,并按照降序排序,将前N个物品推荐给用户;
具体的,步骤(6)详细步骤如下:
步骤(6.1):将用户矩阵与物品矩阵中的向量做内积即wu·qi,后得到用户u对物品i的偏好程度。
步骤(6.2):计算用户与所有物品的偏好程度并按偏好程度的大小进行排序,并将前N个物品作为该用户的推荐列表。
本实验平台配置为显卡为Nvidia Geforce RTX3060 8G,处理器为AMD Ryzen 52600 Six-Core Processor,内存RAM16GB,Windows10 64位操作系统。
在测试集的构造上,将切分后的数据集DB中百分之二十的用户与物品交互的数据抽取作为测试集;在评估度量上选用平均精度均值MAP@K与归一化折损累计增益NDCG@K作为评估算法好坏的指标,其中MAP@K的数学公式如下:
NDCG@K评价度量的计算公式如下:
在横向对比算法上,选择传统贝叶斯个性化排序(BPR)与常用于解决隐式反馈问题的加权矩阵分解(WMF)。
如图5所示,MAP@K指标反映了在长度为K的推荐序列中用户与序列中多少个物品产生了交互,在MAP@K指标下本发明在K=1,K=3,K=5,K=7四种长度序列中分别取得了0.19,0.28,0.30,0.32的准确率均高于贝叶斯个性化排序(BPR)与加权矩阵分解(WMF)这两种方法。这说明本发明引入的倾向性加权评分,削弱了物品的流行程度对推荐模型的影响,减少了推荐模型训练过程中的曝光偏差。此外本发明基于物品隐含特征相似度的负采样策略,有依据的选择不相似物品作为负样本解决了贝叶斯个性化排序负采样过于随机的问题,使得更多用户潜在的偏好物品能作为正样本进行训练。以上方法使得本发明的推荐准确率有显著提高。
图6展示了本发明与其他两种方法在NDCG@K指标下的比较。NDCG@K指标除了反映准确率外,还反映了用户是否对推荐到的物品感兴趣。在序列长度K=1,K=3,K=5,K=7中本发明准确率分别为0.23,0.47,0.58,0.61。且均高于叶斯个性化排序(BPR)与加权矩阵分解(WMF)两种方法。本发明基于一组三元组中物品间的交互关系以及它们的隐含特征相似关系进一步细分了贝叶斯个性化排序的目标函数,使得贝叶斯个性化排序基于不同的三元组物品关系有不同的训练方向,这让推荐模型的训练更为合理,推荐序列中的物品用户更感兴趣。本发明的合理性得到验证。
由实验结果表明,本发明在准确率与负样本采样合理性上均得到了提高。同时本发明基于物品隐含特征相似度计算的相似矩阵可作为方法接口提高方法的可解释性。物品相似度的计算不依赖额外数据,提高了算法的适用面和部署效率,能够满足现实生活中的应用。
Claims (7)
1.一种基于物品隐含特征相似度的物品推荐方法,其特征在于包括以下步骤:
步骤(1):获取用户与物品交互的隐式反馈数据集D,并将上述数据集进行预处理;
步骤(2):使用数据集DS作为矩阵分解模型中的数据,矩阵分解获得物品隐含特征;具体是:
步骤(2.1):计算倾向性加权评分;
以物品在用户面前曝光的概率作为倾向性评分,根据交互与曝光概率和用户偏好之间的关系可知,只有当用户即偏好该物品且物品暴露在了用户面前才能与之产生交互,因此在矩阵分解模型中要针对曝光概率这一因素调整模型,避免出现不随见缺失的问题;交互与曝光和用户的偏好的关系如下:
P(Tu,i=1)=P(eu,i=1,ru,i=1) 式(1)
Tu,i=eu,i·ru,i 式(2)
其中eu,i和ru,i均为伯努利随机变量,并且假设二者相互独立,eu,i=1时物品i暴露在用户u前,eu,i=0代表i没有出现在用户u面前过;ru,i=1代表用户u偏好物品i,ru,i=0代表用户u不偏好物品i;
用Ei表示物品的曝光概率,在数据集中物品的曝光概率Ei通过统计一个物品与不同用户的交互次数来确定;具体计算公式如下:
其中τ为超参数,m为用户的总数量,g为与不同用户交互次数最多的物品;
步骤(2.2):构造目标函数;
因此原矩阵MT表示为:
MT=WS×(QS)T 式(4)
其中(QS)T为QS的转置矩阵;
一个物品的用户偏好程度表示为:
ru,i=wu·qi 式(5)
综上,根据矩阵分解逻辑模型构造目标函数并在目标函数中引入倾向性加权评分来减少曝光度带来的误差,进一步提高了所得物品隐含特征的准确度;
无偏矩阵分解的目标函数如下:
步骤(2.3)矩阵分解模型训练;
在目标函数中加入正则项避免训练过拟合,并且使用梯度下降更新目标函数中用户隐含特征向量wu和物品隐含特征向量qi;当目标函数收敛,更新完成后的QS即为步骤(3)中所需的物品隐含特征矩阵;加入正则的目标函数如下:
其中λs为正则项系数;
步骤(3):根据保存的物品隐含特征计算物品的隐含特征相似度,并构造物品之间的隐含特征相似矩阵与相似度矩阵;具体如下:
步骤(3.1):计算物品隐含特征相似度;
使用物品隐含特征矩阵QS计算各物品间的相似度;相似度的计算使用到余弦相似度,其计算公式如下:
其中qi,qj均为物品隐含相似度矩阵QS中某个物品的隐含特征向量,qi,qj的长度为θ;f为向量中的一个维度;函数中加一是为了让相似度不为负数,因此sim(i,j)∈[0,2];
步骤(3.2):构造隐含特征相似矩阵与相似度矩阵;
根据所得的物品相似度,构造相似度矩阵Msim,记录n个物品间的相似度sim(i,j);然后通过相似度矩阵Msim构造隐含特征相似矩阵Msi,判断物品i与物品j是否为相同物品,若是则不作为相似物品,即i=j时sii,j=0,若否则继续判断物品i与物品j是否满足sim(i,j)≥v,若是则认为两个物品i、j相似sii,j=1,反之则认为物品i、j不相似sii,j=0,并在矩阵中更新相应元素;具体如下:
其中v为阈值,sii,j为矩阵Msi中的一个元素;
步骤(4):训练基于物品隐含特征相似度的贝叶斯个性化排序模型;具体步骤如下:
步骤(4.1):构造三元组;
<u,i,j>,u∈UB,i,j∈I 式(10)
步骤(4.2):根据三元组构造基于物品隐含特征相似度的贝叶斯个性化排序模型的目标函数;
其中|UB|表示数据集DB中用户的个数,|I|表示DB中物品的个数;σ(·)为simoid函数;Δru,i,j为用户u对i预测的偏好程度与用户u对j预测的偏好程度的差值;预测值由矩阵分解得到,同理得到的预测值;
相似度影响因子S的计算如下:
在影响因子S的影响下,目标函数会由三元组的不同发生改变,并且对训练的方向产生影响,变化后的目标函数如下:
步骤(4.3):训练基于物品隐含特征相似度的贝叶斯个性化排序模型:在目标函数中加入正则项并且根随机梯度下降更新隐含特征wu,qi,qj;
步骤(5):根据训练后的基于物品隐含特征相似度的贝叶斯个性化排序模型计算用户对物品的偏好度并排序,并根据该序列将物品推荐给用户。
5.实现权利要求1-4中任一项所述方法的基于物品隐含特征相似度的物品推荐系统,其特征在于包括训练后的基于物品隐含特征相似度的贝叶斯个性化排序模型。
6.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-4中任一项所述的方法。
7.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211613885.3A CN116186384A (zh) | 2022-12-15 | 2022-12-15 | 一种基于物品隐含特征相似度的物品推荐方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211613885.3A CN116186384A (zh) | 2022-12-15 | 2022-12-15 | 一种基于物品隐含特征相似度的物品推荐方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116186384A true CN116186384A (zh) | 2023-05-30 |
Family
ID=86445168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211613885.3A Pending CN116186384A (zh) | 2022-12-15 | 2022-12-15 | 一种基于物品隐含特征相似度的物品推荐方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116186384A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116720003A (zh) * | 2023-08-08 | 2023-09-08 | 腾讯科技(深圳)有限公司 | 排序处理方法、装置、计算机设备、及存储介质 |
-
2022
- 2022-12-15 CN CN202211613885.3A patent/CN116186384A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116720003A (zh) * | 2023-08-08 | 2023-09-08 | 腾讯科技(深圳)有限公司 | 排序处理方法、装置、计算机设备、及存储介质 |
CN116720003B (zh) * | 2023-08-08 | 2023-11-10 | 腾讯科技(深圳)有限公司 | 排序处理方法、装置、计算机设备、及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109087178B (zh) | 商品推荐方法和装置 | |
WO2019015246A1 (zh) | 图像特征获取 | |
CN112232413B (zh) | 基于图神经网络与谱聚类的高维数据特征选择方法 | |
CN110889747B (zh) | 商品推荐方法、装置、系统、计算机设备及存储介质 | |
CN108536784B (zh) | 评论信息情感分析方法、装置、计算机存储介质和服务器 | |
CN110879864A (zh) | 一种基于图神经网络和注意力机制的上下文推荐方法 | |
CN105740327B (zh) | 一种基于用户偏好的自适应采样方法 | |
CN110717103B (zh) | 基于堆栈降噪编码器改进的协同过滤方法 | |
CN114693397A (zh) | 一种基于注意力神经网络的多视角多模态商品推荐方法 | |
CN112395487A (zh) | 信息推荐方法、装置、计算机可读存储介质及电子设备 | |
CN112256971A (zh) | 一种序列推荐方法及计算机可读存储介质 | |
CN111651576A (zh) | 一种基于迁移学习的多轮阅读理解方法 | |
CN116186384A (zh) | 一种基于物品隐含特征相似度的物品推荐方法及系统 | |
CN115618101A (zh) | 基于负反馈的流媒体内容推荐方法、装置及电子设备 | |
CN115760270A (zh) | 一种基于知识图谱的新颖性增强推荐方法 | |
CN116993548A (zh) | 基于增量学习的LightGBM-SVM的教育培训机构信用评估方法及系统 | |
CN113641907B (zh) | 一种基于进化算法的超参数自适应深度推荐方法及装置 | |
CN111079011A (zh) | 一种基于深度学习的信息推荐方法 | |
CN110727872A (zh) | 基于隐式反馈进行不明确选择行为挖掘的方法及装置 | |
CN114936890A (zh) | 一种基于逆倾向加权方法的反事实公平的推荐方法 | |
CN114972959A (zh) | 深度学习中样本生成和类内排序损失的遥感图像检索方法 | |
CN115345248A (zh) | 一种面向深度学习的数据去偏方法及装置 | |
CN113139624A (zh) | 基于机器学习的网络用户分类方法 | |
CN110956528A (zh) | 一种电商平台的推荐方法及系统 | |
CN112765458B (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 |