CN113010802B - 一种基于用户与物品多属性交互面向隐式反馈的推荐方法 - Google Patents
一种基于用户与物品多属性交互面向隐式反馈的推荐方法 Download PDFInfo
- Publication number
- CN113010802B CN113010802B CN202110318014.8A CN202110318014A CN113010802B CN 113010802 B CN113010802 B CN 113010802B CN 202110318014 A CN202110318014 A CN 202110318014A CN 113010802 B CN113010802 B CN 113010802B
- Authority
- CN
- China
- Prior art keywords
- user
- article
- attribute
- feature vector
- matrix
- 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.)
- Expired - Fee Related
Links
- 230000003993 interaction Effects 0.000 title claims abstract description 76
- 238000000034 method Methods 0.000 title claims abstract description 56
- 239000013598 vector Substances 0.000 claims abstract description 174
- 239000011159 matrix material Substances 0.000 claims abstract description 114
- 230000002452 interceptive effect Effects 0.000 claims abstract description 30
- 238000007781 pre-processing Methods 0.000 claims abstract description 12
- 238000012163 sequencing technique Methods 0.000 claims abstract description 4
- 238000004364 calculation method Methods 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 25
- 238000013528 artificial neural network Methods 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 20
- 230000004927 fusion Effects 0.000 claims description 16
- 238000013501 data transformation Methods 0.000 claims description 11
- 238000013527 convolutional neural network Methods 0.000 claims description 10
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 9
- 238000005457 optimization Methods 0.000 claims description 9
- 238000005070 sampling Methods 0.000 claims description 9
- 238000012549 training Methods 0.000 claims description 9
- 230000004913 activation Effects 0.000 claims description 6
- 150000001875 compounds Chemical class 0.000 claims description 3
- 238000001914 filtration Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 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/9536—Search customisation based on social or collaborative filtering
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于用户与物品多属性交互面向隐式反馈的推荐方法,包括步骤:1)对用户与物品多个属性的隐式反馈交互数据进行预处理;2)根据预处理后用户与物品每个属性的隐式反馈交互数据来初始化用户物品特征向量以及构造用户物品交互矩阵;3)根据每个属性的用户物品交互矩阵来更新对应的用户物品特征向量;4)对多个用户物品特征向量进行融合来获取最新的用户物品特征向量;5)根据最新的用户物品特征向量的内积计算用户对物品的兴趣值;6)根据用户对物品的兴趣值进行排序,生成推荐列表。本发明利用用户与物品多个属性的交互,获得更全面表示用户兴趣和物品特性的用户物品特征向量,从而实现更加精准的推荐。
Description
技术领域
本发明涉及推荐方法的技术领域,尤其是指一种基于用户与物品多属性交互面向隐式反馈的推荐方法。
背景技术
随着大数据时代的到来,互联网中的数据正呈指数级增长,人们从曾经的信息匮乏时代步入了信息过载时代。推荐技术是一种解决信息过载的有效方法,协同过滤是推荐技术中比较突出和常用的方法。传统的协同过滤方法,如矩阵分解技术将用户物品交互矩阵分解为关于用户和关于物品的两个低秩矩阵,然后使用用户和物品的低秩向量内积来预测用户对物品的兴趣值。不过这种方法由于只使用了用户的历史行为数据这一个方面的信息,在用户物品交互矩阵稀疏时的推荐效果并不是很好。
发明内容
本发明的目的在于解决传统协同过滤推荐技术的不足,提出了一种基于用户与物品多属性交互面向隐式反馈的推荐方法,能够在隐式反馈场景中实现更加精准的推荐,可以获得更全面表示用户兴趣和物品特性的用户物品特征向量。
为实现上述目的,本发明所提供的技术方案为:一种基于用户与物品多属性交互面向隐式反馈的推荐方法,包括以下步骤:
1)对用户与物品多个属性的隐式反馈交互数据进行数据变换预处理;
2)根据预处理后用户与物品每个属性的隐式反馈交互数据来初始化对应用户物品特征向量以及构造对应的用户物品交互矩阵;
3)根据每个属性的用户物品交互矩阵来更新对应的用户物品特征向量;
4)对多个用户物品特征向量进行融合来获取最新的用户物品特征向量;
5)根据最新的用户物品特征向量的内积计算用户对物品的兴趣值;
6)根据用户对物品的兴趣值进行排序,生成推荐列表。
在步骤1)中,对用户与物品多个属性的隐式反馈交互数据进行数据变换预处理是针对用户与物品每个属性的隐式反馈交互数据,通过字典映射的方式进行数据变换预处理;所述用户与物品多个属性的隐式反馈交互数据是指用户在推荐系统中对物品产生点击或观看行为,推荐系统生成的包括用户ID与对应物品多个属性值的记录;隐式反馈的特点在于:将用户交互的物品作为用户喜欢的正样本,但缺乏用户不喜欢的负样本,通过从用户未交互的物品中利用随机采样的方式获取预设量的负样本;数据变换预处理是指把用户与物品多个属性的隐式反馈交互数据中的用户ID和物品属性值通过字典进行一一映射,把所有用户ID映射到0至m-1范围内,表示总共有m个用户,从0开始计数,m-1表示第m-1个用户;物品属性个数表示为F,属性f表示物品第f个属性,f取值范围为1到F,把每个属性f的属性值映射到0至nf-1范围内,表示属性f总共有nf个属性值,从0开始计数,nf-1表示第nf-1个属性值。
在步骤2)中,根据预处理后用户与物品每个属性的隐式反馈交互数据来初始化对应用户物品特征向量以及构造对应的用户物品交互矩阵是指根据预处理后用户与物品每个属性的隐式反馈交互数据来对用户与物品每个属性组成的特征向量矩阵进行初始化,同时构造用户与物品每个属性的交互矩阵,具体情况如下:
根据预处理后用户与物品每个属性的隐式反馈交互数据来初始化用户与每个物品属性的特征向量矩阵,其中,物品属性个数表示为F,属性f表示物品第f个属性,f取值范围为1到F,用户与物品属性f的初始特征向量矩阵表示为E(0,f),其大小为表示(m+nf)行k列的实数矩阵,其中,k为预设的特征向量维数,m表示用户总数,nf物表示属性f的属性值个数,使用高斯随机初始化的方式对每个E(0,f)进行初始化赋值;
根据预处理后用户与物品每个属性的隐式反馈交互数据来构造用户与物品每个属性的交互矩阵,其中,用户与物品属性f的交互矩阵表示为Gf,Gf的大小为表示m行nf列的实数矩阵,矩阵Gf中的元素表示用户u和物品属性f的第i个属性值有交互,否则其中u表示第u个用户,其取值范围为0到m-1,if表示属性f的第i个属性值,其取值范围为0到nf-1,每个Gf中的值能够通过读取预处理后用户与物品每个属性的隐式反馈交互数据来进行相应的赋值。
在步骤3)中,根据每个属性的用户物品交互矩阵来更新对应的用户物品特征向量,具体过程为:首先,基于用户与物品每个属性的交互矩阵构造用户与物品对应属性的二部图邻接矩阵,然后使用多层轻量级卷积神经网络聚集用户与物品属性二部图的邻居信号来计算各层的用户物品特征向量,最后将各层获取用户物品特征向量进行加权融合来更新用户与物品对应属性的特征向量,包括以下步骤:
3.1)基于用户与物品每个属性的交互矩阵构造用户与物品对应属性的二部图邻接矩阵,其中,物品属性个数表示为F,属性f表示物品第f个属性,f取值范围为1到F,用户与物品属性f的二部图邻接矩阵表示Af,Af的计算公式为:
式中,Gf表示用户与物品属性f的交互矩阵,(Gf)T表示Gf的转置矩阵,0表示全0矩阵,Af为(m+nf)行(m+nf)列的方阵,其中m表示用户总数,nf物表示属性f的属性值个数;
3.2)使用多层轻量级卷积神经网络聚集用户物品属性二部图的邻居信号来计算各层的用户物品特征向量,其中,轻量级卷积神经网络层数表示为L,E(l,f)表示第l层用户与物品属性f的特征向量矩阵,其中l取值范围为0到L-1,E(l+1,f)表示第l+1层用户与物物品属性f的特征向量矩阵,E(l+1,f)的计算公式为:
3.3)将各层获取的用户物品特征向量进行加权融合来更新用户与物品属性f的特征向量,具体过程为:将轻量级卷积神经网络各层获取的用户物品特征向量矩阵进行融合,得到多层融合后用户与物品属性f后的特征向量矩阵E(f),E(f)的计算公式如下:
式中,E(l,f)表示第l层用户与物品属性f的特征向量矩阵,l取值范围为0到L,al表示通过加权求和来进行多层融合时,第l层用户与物品属性f的特征向量矩阵的权重,其通过两层前馈全连接神经网络组成的注意力网络计算获得,al为0到1范围内的浮点数,al的计算公式为:
式中,al'表示两层前馈全连接神经网络的输出;E(l,f)表示第l层用户与物品属性f的特征向量矩阵;和分别表示第一层和第二层前馈全连接神经网络的权重矩阵,b1、b2分别表示与对应的偏置参数;exp(a'l)表示对al'进行以e为底的指数运算;f(·)表示ReLU函数,ReLU函数的自变量表示为x,其公式为:
在步骤4)中,对多个用户物品特征向量进行融合来获取最新的用户物品特征向量是指将用户与物品多个属性的特征向量进行融合来获取最新的用户物品特征向量,然后通过贝叶斯个性化排序损失函数和Adam算法来迭代优化最新的用户物品特征向量,具体过程如下:
4.1)将用户与物品多个属性的特征向量进行融合来获取最新的用户物品特征向量,物品属性个数表示为F,属性f表示物品第f个属性,f取值范围为1到F,将F个属性对应的用户物品特征向量进行融合来获取最新的用户物品特征向量,最新的用户物品特征向量矩阵表示为E,E的大小为R(m+n)×k,R(m+n)×k表示(m+n)行k列的实数矩阵,其中m表示用户总数,n表示物品总数,k表示预设的特征向量维数;由于用户与物品不同属性的特征向量矩阵的行数不相同,所以采取逐行更新的方式更新E每一行用户或物品的特征向量,e表示矩阵E的行向量,e的计算公式为:
式中,f的取值范围为1到F,e(f)表示多层融合后用户与物品属性f的特征向量矩阵的行向量;af表示通过加权求和来将用户与物品多个属性的特征向量融合时e(f)所对应的权重,af通过两层前馈神经网络的注意力网络获得,af为0到1范围内的浮点数,af的计算公式为:
式中,a'f表示两层前馈全连接神经网络的输出;e(f)表示多层融合后用户与物品属性f的特征向量矩阵的行向量;和分别表示第一层和第二层前馈全连接神经网络的权重矩阵,bt1、bt2分别表示与对应的偏置参数;exp(a'f)表示对a'f进行以e为底的指数运算;f(·)表示ReLU函数,ReLU函数的自变量表示为x,其公式为:
4.2)通过贝叶斯个性化排序损失函数和Adam算法来迭代优化最新的用户物品特征向量,贝叶斯个性化排序损失函数loss为:
式中,S={(u,p,q)|(u,p)∈R+,(u,q)∈R-}表示多个(用户、交互物品、未交互物品)元组所组成的集合,其中u表示第u个用户,u取值范围为0到m-1,p和q分别表示第p个和第q个物品,p和q的取值范围都为0到n-1,R+表示观测到的用户物品交互记录,R-表示未观测到的用户物品交互记录;σ表示sigmoid激活函数,其表示式为其中z表示sigmoid激活函数的自变量;λ表示正则化参数;和分别表示用户u对物品p和物品q的兴趣值,它们通过用户与物品特征向量的内积计算获得,和的计算公式为:
Θ={E(0,f)|f∈1,2,...,F}
式中,E(0,f)表示用户与物品属性f的初始特征向量矩阵,f取值范围为1到F;上述loss函数使用批量形式的Adam算法进行迭代优化,在每一轮迭代中,首先从用户列表,和正负样本列表按批次读取预设量的用户物品;
其中,正样本列表表示用户交互物品的列表,用户列表和正样本列表能够通过用户与物品隐式反馈交互数据中获取,负样本列表表示用户未交互物品的列表,其通过随机采样获取,具体过程为:使用均匀随机采样从所有物品中随机选择一个物品,如果它未出现在用户物品隐式反馈交互数据中,则将其添加到相应用户的负样本列表中,然后循环采用同样的方法,最终获得与正样本列表同样大小的负样本列表;
然后将读取的用户物品所对应的用户物品特征向量经步骤4.1)进行更新,最后使用loss公式来训练优化相应的用户物品特征向量。
在步骤5)中,使用最新的用户物品特征向量的内积计算用户对物品的兴趣值,包括以下步骤:
5.1)在训练过程达到收敛状态时,获取多轮迭代优化后最新的用户物品特征向量矩阵E(final);
5.2)对任意一个用户u,其中u取值范围为0到m-1,m表示用户总数;从E(final)查找用户u的特征向量eu,计算eu与E(final)中所有物品特征向量的内积,来获得用户对所有物品的兴趣值列表,为了过滤用户之前交互的物品,将兴趣值列表中用户之前交互物品的兴趣值设置为负无穷。
在步骤6)中,将用户对所有物品的兴趣值列表按照从大到小排序,然后选取前N个物品生成推荐列表。
本发明与现有技术相比,具有如下优点与有益效果:
1、本发明为了充分利用用户与物品多个属性的交互,针对每种使用的物品属性信息,构造相应的用户物品属性二部图;同时,为了能利用每个用户物品属性二部图中高层邻居信息的协同信号,基于轻量级卷积神经网络来聚集用户和物品属性的邻居信息;最后为了能自适应学习用户和物品对不同层邻居信息和不同物品属性的关注度,基于注意力网络学习不同权重来加权融合轻量级卷积各层的用户物品特征向量,以及加权融合各个物品属性对应的用户物品特征向量。通过以上方法,可以获得更全面表示用户兴趣和物品特性的用户物品特征向量,在隐式反馈场景中,较大地提高了推荐的精确率和召回率指标,能够实现更加精准的推荐。
2、本发明能够利用用户与物品多个属性的交互,而不像传统协同矩阵分解方法只使用了用户历史行为数据这一个方面的信息。通过利用用户与物品多个属性的交互,能够改善传统协同过滤方法在用户物品交互矩阵稀疏时推荐效果不好的问题。
3、本发明方法在推荐系统领域具有广泛的使用空间,适用性强,可以应用到不同的推荐系统中,如新闻推荐,电影推荐,商品推荐等。同时,本发明方法通过改变损失函数也能适用于用户物品交互为显示反馈的场景,但因为在实际应用中更容易获取到的是隐式反馈数据,所以这里我们主要研究面向隐式反馈的场景。
附图说明
图1为本发明方法的逻辑流程图。
具体实施方式
下面结合实施例对本发明作进一步详细的描述,但本发明的实施方式不限于此。
如图1所示,本实施例所提供的基于用户与物品多属性交互面向隐式反馈的推荐方法,物品具体指代为电影,其包括以下步骤:
1)对用户与电影多个属性的隐式反馈交互数据,进行数据变换预处理,具体过程为:针对用户与电影每个属性的隐式反馈交互数据,通过字典映射的方式进行数据变换预处理;用户与电影多个属性的隐式反馈交互数据是指用户在电影推荐系统中对电影产生观看行为,电影推荐系统生成的包括用户ID与对应电影多个属性值的记录;隐式反馈的特点在于:将用户看过的电影作为用户喜欢的正样本,但缺乏用户不喜欢的负样本,通过从用户未看过的电影中利用随机采样的方式获取预设量的负样本;数据变换预处理是指把用户与电影多个属性的隐式反馈交互数据中的用户ID和电影属性值通过字典进行一一映射,把所有用户ID映射到0至m-1范围内,表示总共有m个用户,从0开始计数,m-1表示第m-1个用户;电影属性个数表示为F,这里取F=3,表示使用的电影属性包括:电影ID,电影导演和电影类别;属性f表示电影第f个属性,f取值范围为1到F,把每个属性f的属性值映射到0至nf-1范围内,表示属性f总共有nf个属性值,从0开始计数,nf-1表示第nf-1个属性值。
2)根据预处理后用户与电影每个属性的隐式反馈交互数据,来初始化对应用户电影特征向量,以及构造对应的用户电影交互矩阵,具体过程为:根据预处理后用户与电影每个属性的隐式反馈交互数据,来对用户与电影每个属性组成的特征向量矩阵进行初始化,同时构造用户与电影每个属性的交互矩阵,具体情况如下:
根据预处理后用户与电影每个属性的隐式反馈交互数据来初始化用户与每个电影属性的特征向量矩阵,具体过程为:电影属性个数表示为F,属性f表示电影第f个属性,f取值范围为1到F,用户与电影属性f的初始特征向量矩阵表示为E(0,f),其大小为表示(m+nf)行k列的实数矩阵,其中,k为预设的特征向量维数,m表示用户总数,nf物表示属性f的属性值个数,使用高斯随机初始化的方式对每个E(0,f)进行初始化赋值;
根据预处理后用户与电影每个属性的隐式反馈交互数据来构造用户与电影每个属性的交互矩阵,具体过程为:用户与电影属性f的交互矩阵表示为Gf,Gf的大小为表示m行nf列的实数矩阵,矩阵Gf中的元素表示用户u和电影属性f的第i个属性值有交互,否则其中u表示第u个用户,其取值范围为0到m-1,if表示属性f的第i个属性值,其取值范围为0到nf-1,每个Gf中的值可以通过读取预处理后用户与电影每个属性的隐式反馈交互数据来进行相应的赋值。
3)根据每个属性的用户电影交互矩阵来更新对应的用户电影特征向量,具体过程为:首先,基于用户与电影每个属性的交互矩阵构造用户与电影相应属性的二部图邻接矩阵,然后使用多层轻量级卷积神经网络聚集用户与电影属性二部图的邻居信号来计算各层的用户电影特征向量,最后将各层获取用户电影特征向量进行加权融合来更新用户与电影对应属性的特征向量,具体步骤如下:
3.1)基于用户与电影每个属性的交互矩阵构造用户与电影对应属性的二部图邻接矩阵,其中,电影属性个数表示为F,属性f表示电影第f个属性,f取值范围为1到F,用户与电影属性f的二部图邻接矩阵表示Af,Af的计算公式为:
式中,Gf表示用户与电影属性f的交互矩阵,(Gf)T表示Gf的转置矩阵,0表示全0矩阵,Af为(m+nf)行(m+nf)列的方阵,其中m表示用户总数,nf物表示属性f的属性值个数;
3.2)使用多层轻量级卷积神经网络聚集用户与电影属性二部图的邻居信号来计算各层的用户电影特征向量,其中,轻量级卷积神经网络层数表示为L,E(l,f)表示第l层用户与电影属性f的特征向量矩阵,其中l取值范围为0到L-1,E(l+1,f)表示第l+1层用户与物电影属性f的特征向量矩阵,E(l+1,f)的计算公式为:
3.3)将各层获取的用户电影特征向量进行加权融合来更新用户与电影属性f的特征向量,具体过程为:将轻量级卷积神经网络各层获取的用户电影特征向量矩阵进行融合,得到多层融合后用户与电影属性f的特征向量矩阵E(f),E(f)的计算公式如下:
式中,E(l,f)表示第l层用户与电影属性f的特征向量矩阵,l取值范围为0到L,al表示通过加权求和来进行多层融合时,第l层用户与电影属性f的特征向量矩阵的权重,其通过两层前馈全连接神经网络组成的注意力网络计算获得,al为0到1范围内的浮点数,al的计算公式为:
式中,al'表示两层前馈全连接神经网络的输出;E(l,f)表示第l层用户与电影属性f的特征向量矩阵;和分别表示第一层和第二层前馈全连接神经网络的权重矩阵,b1、b2分别表示与对应的偏置参数;exp(a'l)表示对al'进行以e为底的指数运算;f(·)表示ReLU函数,ReLU函数的自变量表示为x,其公式为:
4)对多个用户电影特征向量进行融合来获取最新的用户电影特征向量,具体过程为:将用户与电影多个属性的特征向量进行融合来获取最新的用户电影特征向量,然后通过贝叶斯个性化排序损失函数和Adam算法来迭代优化最新的用户电影特征向量,具体步骤如下:
4.1)将用户与电影多个属性的特征向量进行融合来获取最新的用户电影特征向量,电影属性个数表示为F,属性f表示电影第f个属性,f取值范围为1到F,将F个属性对应的用户电影特征向量进行融合来获取最新的用户电影特征向量,最新的用户电影特征向量矩阵表示为E,E的大小为R(m+n)×k,R(m+n)×k表示(m+n)行k列的实数矩阵,其中m表示用户总数,n表示电影总数,k表示预设的特征向量维数;由于用户与电影不同属性的特征向量矩阵的行数不相同,所以采取逐行更新的方式更新E每一行用户或电影的特征向量,e表示矩阵E的行向量,e的计算公式为:
式中,f的取值范围为1到F,e(f)表示多层融合后用户与电影属性f的特征向量矩阵的行向量;af表示通过加权求和来将用户与电影多个属性的特征向量融合时,e(f)所对应的权重,af通过两层前馈神经网络的注意力网络获得,af为0到1范围内的浮点数,af的计算公式为:
式中,a'f表示两层前馈全连接神经网络的输出;e(f)表示多层融合后用户与电影属性f的特征向量矩阵的行向量;和分别表示第一层和第二层前馈全连接神经网络的权重矩阵,bt1、bt2分别表示与对应的偏置参数;exp(a'f)表示对a'f进行以e为底的指数运算;f(·)表示ReLU函数,ReLU函数的自变量表示为x,其公式为:
4.2)通过贝叶斯个性化排序损失函数和Adam算法来迭代优化最新的用户电影特征向量,贝叶斯个性化排序损失函数loss为:
式中,S={(u,p,q)|(u,p)∈R+,(u,q)∈R-}表示多个(用户,看过电影,未看过电影)元组所组成的集合,其中u表示第u个用户,u取值范围为0到m-1,p和q分别表示第p个和第q个电影,p与q的取值范围都为0到n-1,R+表示观测到的用户电影交互记录,R-表示未观测到的用户电影交互记录;σ表示sigmoid激活函数,其表示式为其中z表示sigmoid激活函数的自变量;λ表示正则化参数;和分别表示用户u对电影p和电影q的兴趣值,它们通过用户与电影特征向量的内积计算获得,和的计算公式为:
Θ={E(0,f)|f∈1,2,...,F}
式中,E(0,f)表示用户与电影属性f的初始特征向量矩阵,f取值范围为1到F;上述loss函数使用批量形式的Adam算法进行迭代优化,在每一轮迭代中,首先从用户列表,和正负样本列表按批次读取预设量的用户电影;
其中,正样本列表表示用户看过电影的列表,用户列表和正样本列表能够通过用户与电影隐式反馈交互数据中获取,负样本列表表示用户未看过电影的列表,其通过随机采样获取,具体过程为:使用均匀随机采样从所有电影中随机选择一个电影,如果它未出现在用户电影隐式反馈交互数据中,则将其添加到相应用户的负样本列表中,然后循环采用同样的方法,最终获得与正样本列表同样大小的负样本列表;
然后将读取的用户电影所对应的用户电影特征向量经步骤4.1)进行更新,最后使用loss公式来训练优化相应的用户电影特征向量。
5)使用最新的用户电影特征向量的内积计算用户对电影的兴趣值,包括如下步骤:
5.1)在步骤4.2)训练过程达到收敛状态时,获取多轮迭代优化后最新的用户电影特征向量矩阵E(final);
5.2)对任意一个用户u,其中u取值范围为0到m-1,m表示用户总数;从E(final)查找用户u的特征向量eu,计算eu与E(final)中所有电影特征向量的内积,来获得用户对所有电影的兴趣值列表,为了过滤用户看过的电影,将兴趣值列表中用户看过电影的兴趣值设置为负无穷。
6)根据用户对电影的兴趣值进行排序,生成推荐列表,具体过程为:读取步骤5.2)中用户对所有电影的兴趣值列表,将用户对所有电影的兴趣值列表按照从大到小排序,然后选取前N个电影生成推荐列表。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (6)
1.一种基于用户与物品多属性交互面向隐式反馈的推荐方法,其特征在于,包括以下步骤:
1)对用户与物品多个属性的隐式反馈交互数据进行数据变换预处理;
2)根据预处理后用户与物品每个属性的隐式反馈交互数据来初始化对应用户物品特征向量以及构造对应的用户物品交互矩阵;
3)根据每个属性的用户物品交互矩阵来更新对应的用户物品特征向量,具体过程为:首先,基于用户与物品每个属性的交互矩阵构造用户与物品对应属性的二部图邻接矩阵,然后使用多层轻量级卷积神经网络聚集用户与物品属性二部图的邻居信号来计算各层的用户物品特征向量,最后将各层获取用户物品特征向量进行加权融合来更新用户与物品对应属性的特征向量,包括以下步骤:
3.1)基于用户与物品每个属性的交互矩阵构造用户与物品对应属性的二部图邻接矩阵,其中,物品属性个数表示为F,属性f表示物品第f个属性,f取值范围为1到F,用户与物品属性f的二部图邻接矩阵表示Af,Af的计算公式为:
式中,Gf表示用户与物品属性f的交互矩阵,(Gf)T表示Gf的转置矩阵,0表示全0矩阵,Af为(m+nf)行(m+nf)列的方阵,其中m表示用户总数,nf物表示属性f的属性值个数;
3.2)使用多层轻量级卷积神经网络聚集用户物品属性二部图的邻居信号来计算各层的用户物品特征向量,其中,轻量级卷积神经网络层数表示为L,E(l,f)表示第l层用户与物品属性f的特征向量矩阵,其中l取值范围为0到L-1,E(l+1,f)表示第l+1层用户与物品属性f的特征向量矩阵,E(l+1,f)的计算公式为:
3.3)将各层获取的用户物品特征向量进行加权融合来更新用户与物品属性f的特征向量,具体过程为:将轻量级卷积神经网络各层获取的用户物品特征向量矩阵进行融合,得到多层融合后用户与物品属性f后的特征向量矩阵E(f),E(f)的计算公式如下:
式中,E(l,f)表示第l层用户与物品属性f的特征向量矩阵,l取值范围为0到L,al表示通过加权求和来进行多层融合时,第l层用户与物品属性f的特征向量矩阵的权重,其通过两层前馈全连接神经网络组成的注意力网络计算获得,al为0到1范围内的浮点数,al的计算公式为:
式中,al'表示两层前馈全连接神经网络的输出;E(l,f)表示第l层用户与物品属性f的特征向量矩阵;W1 T和W2 T分别表示第一层和第二层前馈全连接神经网络的权重矩阵,b1、b2分别表示与W1 T、W2 T对应的偏置参数;exp(a'l)表示对a′l进行以e为底的指数运算;f(·)表示ReLU函数,ReLU函数的自变量表示为x,其公式为:
4)对多个用户物品特征向量进行融合来获取最新的用户物品特征向量;
5)根据最新的用户物品特征向量的内积计算用户对物品的兴趣值;
6)根据用户对物品的兴趣值进行排序,生成推荐列表。
2.根据权利要求1所述的一种基于用户与物品多属性交互面向隐式反馈的推荐方法,其特征在于:在步骤1)中,对用户与物品多个属性的隐式反馈交互数据进行数据变换预处理是针对用户与物品每个属性的隐式反馈交互数据,通过字典映射的方式进行数据变换预处理;所述用户与物品多个属性的隐式反馈交互数据是指用户在推荐系统中对物品产生点击或观看行为,推荐系统生成的包括用户ID与对应物品多个属性值的记录;隐式反馈的特点在于:将用户交互的物品作为用户喜欢的正样本,但缺乏用户不喜欢的负样本,通过从用户未交互的物品中利用随机采样的方式获取预设量的负样本;数据变换预处理是指把用户与物品多个属性的隐式反馈交互数据中的用户ID和物品属性值通过字典进行一一映射,把所有用户ID映射到0至m-1范围内,表示总共有m个用户,从0开始计数,m-1表示第m-1个用户;物品属性个数表示为F,属性f表示物品第f个属性,f取值范围为1到F,把每个属性f的属性值映射到0至nf-1范围内,表示属性f总共有nf个属性值,从0开始计数,nf-1表示第nf-1个属性值。
3.根据权利要求1所述的一种基于用户与物品多属性交互面向隐式反馈的推荐方法,其特征在于:在步骤2)中,根据预处理后用户与物品每个属性的隐式反馈交互数据来初始化对应用户物品特征向量以及构造对应的用户物品交互矩阵是指根据预处理后用户与物品每个属性的隐式反馈交互数据来对用户与物品每个属性组成的特征向量矩阵进行初始化,同时构造用户与物品每个属性的交互矩阵,具体情况如下:
根据预处理后用户与物品每个属性的隐式反馈交互数据来初始化用户与每个物品属性的特征向量矩阵,其中,物品属性个数表示为F,属性f表示物品第f个属性,f取值范围为1到F,用户与物品属性f的初始特征向量矩阵表示为E(0,f),其大小为 表示(m+nf)行k列的实数矩阵,其中,k为预设的特征向量维数,m表示用户总数,nf物表示属性f的属性值个数,使用高斯随机初始化的方式对每个E(0,f)进行初始化赋值;
4.根据权利要求1所述的一种基于用户与物品多属性交互面向隐式反馈的推荐方法,其特征在于:在步骤4)中,对多个用户物品特征向量进行融合来获取最新的用户物品特征向量是指将用户与物品多个属性的特征向量进行融合来获取最新的用户物品特征向量,然后通过贝叶斯个性化排序损失函数和Adam算法来迭代优化最新的用户物品特征向量,具体过程如下:
4.1)将用户与物品多个属性的特征向量进行融合来获取最新的用户物品特征向量,物品属性个数表示为F,属性f表示物品第f个属性,f取值范围为1到F,将F个属性对应的用户物品特征向量进行融合来获取最新的用户物品特征向量,最新的用户物品特征向量矩阵表示为E,E的大小为R(m+n)×k,R(m+n)×k表示(m+n)行k列的实数矩阵,其中m表示用户总数,n表示物品总数,k表示预设的特征向量维数;由于用户与物品不同属性的特征向量矩阵的行数不相同,所以采取逐行更新的方式更新E每一行用户或物品的特征向量,e表示矩阵E的行向量,e的计算公式为:
式中,f的取值范围为1到F,e(f)表示多层融合后用户与物品属性f的特征向量矩阵的行向量;af表示通过加权求和来将用户与物品多个属性的特征向量融合时e(f)所对应的权重,af通过两层前馈神经网络的注意力网络获得,af为0到1范围内的浮点数,af的计算公式为:
式中,a'f表示两层前馈全连接神经网络的输出;e(f)表示多层融合后用户与物品属性f的特征向量矩阵的行向量;和Wt2 T分别表示第一层和第二层前馈全连接神经网络的权重矩阵,bt1、bt2分别表示与Wt2 T对应的偏置参数;exp(a'f)表示对a'f进行以e为底的指数运算;f(·)表示ReLU函数,ReLU函数的自变量表示为x,其公式为:
4.2)通过贝叶斯个性化排序损失函数和Adam算法来迭代优化最新的用户物品特征向量,贝叶斯个性化排序损失函数loss为:
式中,S={(u,p,q)|(u,p)∈R+,(u,q)∈R-}表示多个用户、交互物品、未交互物品元组所组成的集合,其中u表示第u个用户,u取值范围为0到m-1,p和q分别表示第p个和第q个物品,p和q的取值范围都为0到n-1,R+表示观测到的用户物品交互记录,R-表示未观测到的用户物品交互记录;σ表示sigmoid激活函数,其表示式为其中z表示sigmoid激活函数的自变量;λ表示正则化参数;和分别表示用户u对物品p和物品q的兴趣值,它们通过用户与物品特征向量的内积计算获得,和的计算公式为:
Θ={E(0,f)|f∈1,2,...,F}
式中,E(0,f)表示用户与物品属性f的初始特征向量矩阵,f取值范围为1到F;上述loss函数使用批量形式的Adam算法进行迭代优化,在每一轮迭代中,首先从用户列表,和正负样本列表按批次读取预设量的用户物品;
其中,正样本列表表示用户交互物品的列表,用户列表和正样本列表能够通过用户与物品隐式反馈交互数据中获取,负样本列表表示用户未交互物品的列表,其通过随机采样获取,具体过程为:使用均匀随机采样从所有物品中随机选择一个物品,如果它未出现在用户物品隐式反馈交互数据中,则将其添加到相应用户的负样本列表中,然后循环采用同样的方法,最终获得与正样本列表同样大小的负样本列表;
然后将读取的用户物品所对应的用户物品特征向量经步骤4.1)进行更新,最后使用loss公式来训练优化相应的用户物品特征向量。
5.根据权利要求1所述的一种基于用户与物品多属性交互面向隐式反馈的推荐方法,其特征在于:在步骤5)中,使用最新的用户物品特征向量的内积计算用户对物品的兴趣值,包括以下步骤:
5.1)在训练过程达到收敛状态时,获取多轮迭代优化后最新的用户物品特征向量矩阵E(final);
5.2)对任意一个用户u,其中u取值范围为0到m-1,m表示用户总数;从E(final)查找用户u的特征向量eu,计算eu与E(final)中所有物品特征向量的内积,来获得用户对所有物品的兴趣值列表,为了过滤用户之前交互的物品,将兴趣值列表中用户之前交互物品的兴趣值设置为负无穷。
6.根据权利要求1所述的一种基于用户与物品多属性交互面向隐式反馈的推荐方法,其特征在于:在步骤6)中,将用户对所有物品的兴趣值列表按照从大到小排序,然后选取前N个物品生成推荐列表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110318014.8A CN113010802B (zh) | 2021-03-25 | 2021-03-25 | 一种基于用户与物品多属性交互面向隐式反馈的推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110318014.8A CN113010802B (zh) | 2021-03-25 | 2021-03-25 | 一种基于用户与物品多属性交互面向隐式反馈的推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113010802A CN113010802A (zh) | 2021-06-22 |
CN113010802B true CN113010802B (zh) | 2022-09-20 |
Family
ID=76406909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110318014.8A Expired - Fee Related CN113010802B (zh) | 2021-03-25 | 2021-03-25 | 一种基于用户与物品多属性交互面向隐式反馈的推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113010802B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113704441B (zh) * | 2021-09-06 | 2022-06-10 | 中国计量大学 | 一种考虑物品和物品属性特征级别重要性的会话推荐方法 |
CN114528497B (zh) * | 2022-01-18 | 2024-09-24 | 华南理工大学 | 一种面向物品多指标评分数据的推荐方法 |
CN114756762B (zh) * | 2022-06-13 | 2022-09-02 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460619A (zh) * | 2018-01-16 | 2018-08-28 | 杭州电子科技大学 | 一种融合显隐式反馈的协同推荐模型 |
CN109190030A (zh) * | 2018-08-22 | 2019-01-11 | 南京工业大学 | 融合node2vec和深度神经网络的隐式反馈推荐方法 |
CN109299253A (zh) * | 2018-09-03 | 2019-02-01 | 华南理工大学 | 一种基于深度融合神经网络的中文社交文本情绪识别模型构造方法 |
CN111177580A (zh) * | 2019-12-21 | 2020-05-19 | 杭州电子科技大学 | 一种利用多重隐式反馈实现个性化推荐的方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150187024A1 (en) * | 2013-12-27 | 2015-07-02 | Telefonica Digital España, S.L.U. | System and Method for Socially Aware Recommendations Based on Implicit User Feedback |
US10977322B2 (en) * | 2015-11-09 | 2021-04-13 | WP Company, LLC | Systems and methods for recommending temporally relevant news content using implicit feedback data |
CN109241440A (zh) * | 2018-09-29 | 2019-01-18 | 北京工业大学 | 一种基于深度学习的面向隐式反馈推荐方法 |
-
2021
- 2021-03-25 CN CN202110318014.8A patent/CN113010802B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460619A (zh) * | 2018-01-16 | 2018-08-28 | 杭州电子科技大学 | 一种融合显隐式反馈的协同推荐模型 |
CN109190030A (zh) * | 2018-08-22 | 2019-01-11 | 南京工业大学 | 融合node2vec和深度神经网络的隐式反馈推荐方法 |
CN109299253A (zh) * | 2018-09-03 | 2019-02-01 | 华南理工大学 | 一种基于深度融合神经网络的中文社交文本情绪识别模型构造方法 |
CN111177580A (zh) * | 2019-12-21 | 2020-05-19 | 杭州电子科技大学 | 一种利用多重隐式反馈实现个性化推荐的方法 |
Non-Patent Citations (1)
Title |
---|
Leveraging Multiple Implicit Feedback for Personalized Recommendation with Neural Network;Hongfa Wen et;《AIAM》;20191017;第1-6页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113010802A (zh) | 2021-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113010802B (zh) | 一种基于用户与物品多属性交互面向隐式反馈的推荐方法 | |
Yang et al. | Click-through rate prediction in online advertising: A literature review | |
CN110717098B (zh) | 基于元路径的上下文感知用户建模方法、序列推荐方法 | |
CN111127142B (zh) | 一种基于广义神经注意力的物品推荐方法 | |
CN109087178B (zh) | 商品推荐方法和装置 | |
CN108829763B (zh) | 一种基于深度神经网络的影评网站用户的属性预测方法 | |
WO2020147594A1 (zh) | 获取实体间关系表达的方法、系统和设备、广告召回系统 | |
CN107105320B (zh) | 一种基于用户情绪的在线视频热度预测方法及系统 | |
CN112364976B (zh) | 基于会话推荐系统的用户偏好预测方法 | |
CN107909421A (zh) | 一种基于用户空间的多gru层神经网络的隐含反馈推荐方法及系统 | |
CN106897404B (zh) | 一种基于多gru层神经网络的推荐方法与系统 | |
CN113505294A (zh) | 一种融合元路径的异质网络表示推荐算法 | |
CN114036406A (zh) | 一种基于图对比学习和社交网络增强的推荐方法及系统 | |
CN112950324A (zh) | 一种知识图谱辅助的成对排序个性化电商推荐方法及系统 | |
CN110263236B (zh) | 基于动态多视图学习模型的社交网络用户多标签分类方法 | |
CN116204729B (zh) | 一种基于超图神经网络的跨领域群组智能推荐方法 | |
CN112434184B (zh) | 基于历史影视海报的深度兴趣网络的排序方法 | |
CN114065048A (zh) | 基于多异构图图神经网络的物品推荐方法 | |
CN115658864A (zh) | 一种基于图神经网络和兴趣注意力网络的会话推荐方法 | |
CN112765461A (zh) | 一种基于多兴趣胶囊网络的会话推荐方法 | |
CN112948625A (zh) | 一种基于属性异质信息网络嵌入的电影推荐方法 | |
CN113869404A (zh) | 面向论文网络数据的自适应图卷积聚类方法 | |
CN112905886B (zh) | 一种基于多兴趣重复网络的会话推荐方法 | |
Zhang et al. | Knowledge graph driven recommendation model of graph neural network | |
CN113744023A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220920 |