CN109522474A - 基于交互序列数据挖掘深度用户相似性的推荐方法 - Google Patents
基于交互序列数据挖掘深度用户相似性的推荐方法 Download PDFInfo
- Publication number
- CN109522474A CN109522474A CN201811224350.0A CN201811224350A CN109522474A CN 109522474 A CN109522474 A CN 109522474A CN 201811224350 A CN201811224350 A CN 201811224350A CN 109522474 A CN109522474 A CN 109522474A
- Authority
- CN
- China
- Prior art keywords
- user
- preference
- matrix
- gram
- model
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 230000003993 interaction Effects 0.000 title claims abstract description 63
- 238000007418 data mining Methods 0.000 title claims abstract 9
- 239000011159 matrix material Substances 0.000 claims abstract description 92
- 230000002452 interceptive effect Effects 0.000 claims abstract description 41
- 238000012549 training Methods 0.000 claims abstract description 19
- 230000008569 process Effects 0.000 claims abstract description 10
- 239000013598 vector Substances 0.000 claims description 55
- 238000005065 mining Methods 0.000 claims description 35
- 238000003062 neural network model Methods 0.000 claims description 33
- 230000014509 gene expression Effects 0.000 claims description 18
- 238000013528 artificial neural network Methods 0.000 claims description 15
- 238000000354 decomposition reaction Methods 0.000 claims description 14
- 230000004913 activation Effects 0.000 claims description 6
- 238000007477 logistic regression Methods 0.000 claims description 6
- 238000007781 pre-processing Methods 0.000 claims description 6
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 230000010354 integration Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 26
- 238000001914 filtration Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种基于交互序列数据挖掘深度用户相似性的推荐方法,所述推荐方法包括对用户与物品交互的原始记录数据进行预处理,以获得用户与物品的交互序列数据,并根据所述交互序列数据生成用户‑物品交互矩阵和用户‑gram矩阵;根据所述用户‑物品交互矩阵和所述用户‑gram矩阵构建推荐模型,并训练所述推荐模型;基于经过训练的推荐模型,计算出每个用户对所有物品的偏好,并根据偏好值由高到低对所有物品进行排序;去除用户已交互过的物品,将剩余物品中预定个偏好值最高的物品作为个性化推荐的结果推荐给对应用户。本发明将用户对物品的偏好情况和用户间的相似性应用于推荐方法中,解决了数据稀疏性的问题,提高了推荐准确率。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种基于交互序列数据挖掘深度用户相似性的推荐方法。
背景技术
随着互联网的发展,人们正面临着信息爆炸的问题。一方面,大量的信息能够为人们提供了更多的选择,例如人们可以选择自己喜欢的电影。但是另一方面,太多的信息会花费人们大量的时间在互联网上进行搜索和选择。因此推荐系统作为可以解决信息过载的一种方法,就显得尤其重要,而且推荐系统已经被很多在线服务所广泛采用,如在线的音乐、视频、电商、社交网络等。建立个性化推荐系统的关键在于根据用户的偏好,对每个用户推荐少量的物品。在推荐领域,最受欢迎的方法是基于用户对物品评分矩阵的协同过滤方法。但是显式的评分很难获得,这会导致训练数据稀疏的问题。为了解决这个问题,很多研究人员开始根据用户和物品的交互记录抽取隐式反馈,如点击、查看、下载等。基于隐式反馈,构建用户-物品的交互矩阵,然后应用协同过滤的方法进行推荐。然而,这种用户-物品的交互矩阵只记录了用户和物品的交互次数,丢失了原始交互序列记录里包含的物品依赖关系、用户相似性等信息。
为了利用序列数据进行物品推荐,很多研究都提出了一个假设,即用户下一个要交互的物品依赖于前n-1个交互的物品。例如,马尔科夫链假设下一个交互的物品只依赖于前一个物品,利用序列数据学习获得物品之间的转移概率矩阵。最新的研究是根据序列数据为每个物品学习低维的向量表达,这些向量可以用来计算物品之间的相似性。这些方法都是基于物品在序列数据中的依赖关系进行建模推荐物品的。但是,这些方法的目标往往依赖于上一个物品作为模型输入。如果两个记录之间的时间间隔比较大,则这些方法的前提假设,即物品之间的依赖关系,有可能失效。另外一个缺陷是,这些方法只考虑了物品之间的依赖性,没有根据序列数据研究用户相似性的工作。
针对现有的个性化推荐系统存在的不足,本领域技术人员一直在寻找解决的方法。
发明内容
本发明的目的在于提供一种基于交互序列数据挖掘深度用户相似性的推荐方法,以解决使用现有技术中个性化推荐系统存在的不足。
为解决上述技术问题,本发明提供一种基于交互序列数据挖掘深度用户相似性的推荐方法,所述基于交互序列数据挖掘深度用户相似性的推荐方法包括:
对用户与物品交互的原始记录数据进行预处理,以获得用户与物品的交互序列数据,并根据所述交互序列数据生成用户-物品交互矩阵和用户-gram矩阵;
根据所述用户-物品交互矩阵和所述用户-gram矩阵构建推荐模型,并训练所述推荐模型;
基于经过训练的推荐模型,计算出每个用户对所有物品的偏好,并根据偏好值由高到低对所有物品进行排序;
去除用户已交互过的物品,将剩余物品中预定个偏好值最高的物品作为个性化推荐的结果推荐给对应用户。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,所述对用户与物品交互的原始记录数据进行预处理,以获得用户与物品的交互序列数据的过程如下:
将每个用户与物品交互的原始记录数据转换成n-gram,根据n-gram挖掘用户的相似性;
对每个用户,将原始记录数据根据时间戳进行排序形成一序列,对所述序列进行修正,并去除修正后序列的时间戳,以获得用户与物品的交互序列数据。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,所述对所述序列进行修正过程如下:
检查相邻两个交互记录的时间间隔,如果时间间隔大于预定阈值,则所述序列需要在这两个记录之间切分成两个子序列。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,所述用户-物品交互矩阵中元素的取值基于如下公式确定:
其中,rui表示用户-物品交互矩阵中的元素;u和i分别表示用户和物品;当rui取值为1时,表明用户u喜欢物品i;当rui取值为0时,表明用户u不喜欢物品i或者用户u还未发现物品i。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,所述用户-gram矩阵中元素的取值基于如下公式确定:
其中,表示用户-gram矩阵中元素;u和j分别表示用户和n-gram。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,所述根据所述用户-物品交互矩阵和所述用户-gram矩阵构建推荐模型过程包括:
根据所述用户-物品交互矩阵构建用户对物品偏好预测模型;
根据所述用户-gram矩阵构建用户对n-gram偏好预测模型;
将用户、物品和n-gram的ID的高维one-hot稀疏向量转化成低维向量;
利用矩阵分解模型预测用户对物品的偏好和用户对n-gram的偏好;
利用神经网络模型预测用户对物品的偏好和用户对n-gram的偏好;
使用逻辑回归模型整合利用矩阵分解模型预测的结果和利用神经网络模型预测的结果,以构建推荐模型。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,所述用户对物品偏好预测模型采用如下公式表示:
其中,u和i分别表示用户和物品;P和Q分别表示用户u的向量表达矩阵和物品i的向量表达矩阵,θ表示预测模型的其他参数。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,所述用户对n-gram偏好预测模型采用如下公式表示:
其中,u和j分别表示用户和n-gram;P和O分别表示用户u的向量表达矩阵和n-gramj的向量表达矩阵,θ'表示预测模型的其他参数。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,所述将用户、物品和n-gram的ID的高维one-hot稀疏向量转化成低维向量,分别采用如下公式表示:
其中,P、Q和O分别表示用户、物品和n-gram的向量表达矩阵;pu表示用户u的低维向量,qi表示物品i的低维向量,oj表示n-gramj的低维向量;和分别表示用户u、物品i和n-gramj的one-hot向量表达。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,利用矩阵分解模型预测用户对物品的偏好和用户对n-gram的偏好,分别采用如下公式表示:
其中,u、i和j分别表示用户、物品和n-gram;pu表示用户u的低维向量,qi表示物品i的低维向量,oj表示n-gramj的低维向量。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,利用神经网络模型预测用户对物品的偏好采用如下公式表示:
其中,h是权重矩阵;σ是sigmoid函数;zL表示第L层隐藏层的输出;φL(·)表示第L层隐藏层的神经网络函数;W和b分别表示神经网络的权重和偏置参数;aL是第L层隐藏层的激活函数;
利用神经网络模型预测用户对n-gram的偏好采用如下公式表示:
其中,h是权重矩阵;σ是sigmoid函数;zL表示第L层隐藏层的输出;φL(·)表示第L层隐藏层的神经网络函数;W和b分别表示神经网络的权重和偏置参数;aL是第L层隐藏层的激活函数。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,在训练所述推荐模型过程中,采用的神经网络模型的约束条件用公式表示如下:
其中,和分别表示用户对物品偏好预测神经网络模型中第l层隐藏层的权值和偏置。和表示用户对n-gram偏好预测神经网络模型中第l层隐藏层的权值和偏置。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,所述使用逻辑回归模型整合利用矩阵分解模型预测的用户对物品的偏好和利用神经网络模型预测的用户对物品的偏好,采用公式如下:
其中,c(·)表示整合函数;rm和rn分别表示矩阵分解模型和神经网络模型预测的用户对物品的偏好;σ是sigmoid函数,W是分配给矩阵分解模型和神经网络模型这两个模型的权重。
可选的,在所述的基于交互序列数据挖掘深度用户相似性的推荐方法中,在训练所述推荐模型过程中,定义损失函数采用如下公式表示:
L=Lr+αLg;
其中,Lr和Lg分别为用户对物品的偏好的损失函数和用户对n-gram的偏好的损失函数;α表示权重;表示训练数据集,是正样本集合,即{(u,i)|rui=1},是负样本集,即{(u,i′)|rui′=0};与类似;β和λ分别是参数约束和正则化项的权重;|·|2表示L2的范数。
在本发明所提供的基于交互序列数据挖掘深度用户相似性的推荐方法中,所述推荐方法包括对用户与物品交互的原始记录数据进行预处理,以获得用户与物品的交互序列数据,并根据所述交互序列数据生成用户-物品交互矩阵和用户-gram矩阵;根据所述用户-物品交互矩阵和所述用户-gram矩阵构建推荐模型,并训练所述推荐模型;基于经过训练的推荐模型,计算出每个用户对所有物品的偏好,并根据偏好值由高到低对所有物品进行排序;去除用户已交互过的物品,将剩余物品中预定个偏好值最高的物品作为个性化推荐的结果推荐给对应用户。本发明将用户对物品的偏好情况和用户间的相似性应用于推荐方法中,解决了数据稀疏性的问题,提高了推荐准确率。
附图说明
图1是本发明一实施例中基于交互序列数据挖掘深度用户相似性的推荐方法的流程图;
图2是本发明一实施例中构建的推荐模型的示意图。
具体实施方式
以下结合附图和具体实施例对本发明提出的基于交互序列数据挖掘深度用户相似性的推荐方法作进一步详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
遍及说明书和权利要求书使用了表示特定系统组件的某些术语。如本领域的技术人员将理解的,不同公司可能用不同的名称来表示一组件。本文不期望在名称不同但功能相同的组件之间进行区分。在说明书和权利要求书中,术语“包括”和“包含”按开放式的方式使用,且因此应被解释为“包括,但不限于…”。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。
另外,以下说明内容的各个实施例分别具有一或多个技术特征,然此并不意味着使用本发明者必需同时实施任一实施例中的所有技术特征,或仅能分开实施不同实施例中的一部或全部技术特征。换句话说,在实施为可能的前提下,本领域技术人员可依据本发明的公开内容,并视设计规范或实作需求,选择性地实施任一实施例中部分或全部的技术特征,或者选择性地实施多个实施例中部分或全部的技术特征的组合,借此增加本发明实施时的弹性。
为使本发明的目的、特征更明显易懂,下面结合附图对本发明的具体实施方式作进一步的说明,然而,本发明可以用不同的形式实现,不应认为只是局限在所述的实施例。
请参考图1,其为本发明的基于交互序列数据挖掘深度用户相似性的推荐方法的流程图。如图1所示,所述基于交互序列数据挖掘深度用户相似性的推荐方法包括如下步骤:
首先,执行步骤S1,对用户与物品交互的原始记录数据进行预处理,以获得用户与物品的交互序列数据,并根据所述交互序列数据生成用户-物品交互矩阵和用户-gram矩阵。
本发明主要考虑从序列数据中挖掘深层次的用户相似性,来提高个性化推荐的准确性。首先需要解决的挑战是不同用户的序列数据长度不相等,每个用户与物品交互的时间和种类也有差别。而用户的相似性主要由用户与物品交互的顺序以及某些物品在序列中共同出现的情况体现的。本发明首先将每个用户的数据转换成n-gram,然后根据n-gram挖掘用户的相似性。一个n-gram是序列数据中连续出现的n个物品形成的整体,例如有购物序列[铅笔,钢笔,笔记本],当n=1时则可以转换成三个1-gram的集合{“铅笔”,“钢笔”,“笔记本”},当n=2时转换成2个2-gram的集合{“铅笔,钢笔”,“钢笔,笔记本”},每个2-gram包括两个物品。使用n-gram的优势包括将不等长的序列比较,转换成了可以高效计算的较短的n-gram比较。
具体的,所述对用户与物品交互的原始记录数据进行预处理,以获得用户与物品的交互序列数据的过程如下:
S10:将每个用户与物品交互的原始记录数据转换成n-gram,根据n-gram挖掘用户的相似性;
S11:对每个用户,将原始记录数据根据时间戳进行排序形成一序列,对所述序列进行修正,并去除修正后序列的时间戳,以获得用户与物品的交互序列数据。较佳的,对所述序列进行修正过程如下:检查相邻两个交互记录的时间间隔,如果时间间隔大于预定阈值,则所述序列需要在这两个记录之间切分成两个子序列。修正原理为:因为如果时间间隔太长,则两个记录之间不存在依赖关系,是相对独立的。然后去除掉时间戳,每个用户就获得了很多如[I1,I2,…,In]的物品序列。具体的,用户与物品交互的原始记录数据可以用(u,i,t)三元组表示,其中,的元素分别表示用户、物品和交互的时间戳。
其中,所述用户-物品交互矩阵中元素的取值基于如下公式确定:
式中,rui表示用户-物品交互矩阵中的元素;u和i分别表示用户和物品;当rui取值为1时,表明用户u喜欢物品i;当rui取值为0时,表明用户u不喜欢物品i或者用户u还未发现物品i。
其中,所述用户-gram矩阵中元素的取值基于如下公式确定:
式中,表示用户-gram矩阵中元素;u和j分别表示用户和n-gram,后续为了描述简单,以n=2为例,即只考虑2-gram,后面简记为guj。本领域技术人员可以理解的,n的取值包括但不局限于2,还可以扩展到其他值的情况。
接着,执行步骤S2,根据所述用户-物品交互矩阵和所述用户-gram矩阵构建推荐模型,并训练所述推荐模型;优选的,本实施例中使用梯度下降方法训练所述推荐模型。
请参考图2,其为本实施例中构建的推荐模型的示意图。如图2所示,首先用户、物品和n-gram的ID的one-hot稀疏向量通过模型,转换成低维向量表达。然后分别通过用户对物品偏好预测模型和用户对n-gram偏好预测模型,估计用户对物品和n-gram的偏好情况。为了提高推荐模型的性能,本发明融合了矩阵分解的方法和神经网络的模型。同时,用户对物品的预测模型和用户对n-gram偏好的预测模型有相似的结构。下面对推荐模型的细节进行介绍。
具体的,所述根据所述用户-物品交互矩阵和所述用户-gram矩阵构建推荐模型过程包括:
S20:根据所述用户-物品交互矩阵构建用户对物品偏好预测模型;其中,所述用户对物品偏好预测模型采用如下公式表示:
其中,u和i分别表示用户和物品;P和Q分别表示用户u的向量表达矩阵和物品i的向量表达矩阵,θ表示预测模型的其他参数。
S21:根据所述用户-gram矩阵构建用户对n-gram偏好预测模型;其中,所述用户对n-gram偏好预测模型采用如下公式表示:
其中,u和j分别表示用户和n-gram;P和O分别表示用户u的向量表达矩阵和n-gramj的向量表达矩阵,θ'表示预测模型的其他参数。
S22:将用户、物品和n-gram的ID的高维one-hot稀疏向量转化成低维向量,分别采用如下公式表示:
其中,P、Q和O分别表示用户、物品和n-gram的向量表达矩阵;pu表示用户u的低维向量,qi表示物品i的低维向量,oj表示n-gram j的低维向量;和分别表示用户u、物品i和n-gramj的one-hot向量表达。
S23:利用矩阵分解模型预测用户对物品的偏好和用户对n-gram的偏好,分别采用如下公式表示:
其中,u、i和j分别表示用户、物品和n-gram;pu表示用户u的低维向量,qi表示物品i的低维向量,oj表示n-gramj的低维向量。
基于上述公式可知,两个矩阵分解模型共享用户向量,这样用户、物品、n-gram都被映射到同一空间中。同时共享更多n-gram的用户距离会更近,因此序列中深度的用户相似性就被应用到了推荐任务中。
S24:利用神经网络模型预测用户对物品的偏好和用户对n-gram的偏好;基于内积的矩阵分解模型对刻画线性的关系比较好,但是对非线性的关系刻画则不如神经网络模型,因此本发明进一步提出使用两个神经网络分别预测用户对物品和n-gram的偏好。
其中,利用神经网络模型预测用户对物品的偏好采用如下公式表示:
其中,h是权重矩阵;σ是sigmoid函数;zL表示第L层隐藏层的输出;φL(·)表示第L层隐藏层的神经网络函数;W和b分别表示神经网络的权重和偏置参数;aL是第L层隐藏层的激活函数;
利用神经网络模型预测用户对n-gram的偏好采用如下公式表示:
其中,h是权重矩阵;σ是sigmoid函数;zL表示第L层隐藏层的输出;φL(·)表示第L层隐藏层的神经网络函数;W和b分别表示神经网络的权重和偏置参数;aL是第L层隐藏层的激活函数,这里统一使用ReLu。
在模型的构建中,本发明使用了共享用户向量的形式,把从n-gram中挖掘出的用户相似性作用到推荐上。但是,基于神经网络的方法中,偏好的预测不仅取决于用户和物品的输入向量表达,还取决于神经网络的参数。考虑到两种偏好(即用户对物品的偏好和用户对n-gram的偏好)的预测模型具有类似的结构,同时n-gram也是由物品构成的,本发明对神经网络模型增加了如下两项约束,约束条件用公式表示如下:
其中,和分别表示用户对物品偏好预测神经网络模型中第l层隐藏层的权值和偏置。和表示用户对n-gram偏好预测神经网络模型中第l层隐藏层的权值和偏置。
S25:使用逻辑回归模型整合利用矩阵分解模型预测的结果和利用神经网络模型预测的结果,以构建推荐模型。
以使用逻辑回归模型整合利用矩阵分解模型预测的用户对物品的偏好和利用神经网络模型预测的用户对物品的偏好为例,具体采用公式如下:
其中,c(·)表示整合函数;rm和rn分别表示矩阵分解模型和神经网络模型预测的用户对物品的偏好;σ是sigmoid函数,W是分配给矩阵分解模型和神经网络模型这两个模型的权重。
此外,由于用户对于n-gram的偏好预测有相似的整合方法,这里不再叙述。
基于S25可获知用户对物品的偏好和n-gram的偏好,考虑到两种预测模型的损失值都包括三个部分,第一部分是预测结果与真实值的偏差,第二部分是神经网络模型参数的约束,第三部分是模型参数的正则化项,防止过拟合。考虑到预测结果是0或1的形式,这里采用了交叉熵损失函数,定义损失函数采用如下公式表示:
L=Lr+αLg;
其中,Lr和Lg分别为用户对物品的偏好的损失函数和用户对n-gram的偏好的损失函数;α表示权重;表示训练数据集,是正样本集合,即{(u,i)|rui=1},是负样本集,即{(u,i′)|rui′=1};与类似;β和λ分别是参数约束和正则化项的权重;|·|2表示L2的范数。
本发明使用梯度下降方法训练所述推荐模型,训练算法如下:
输入:用户-物品交互矩阵R,用户-gram矩阵G,学习速率η,权重αβλ,
推荐物品的个数k,嵌入向量的长度d,最大循环次数MI
输出:预测模型
1)设置i=0;
2)使用随机数初始化用户、物品和n-gram的向量表达,以及模型中的参数;
3)i=i+1;
4)从交互矩阵R生成一批训练样本
5)使用训练样本学习速率η,和损失函数Lr进行梯度下降,更新模型参数;
6)从n-gram矩阵G生成一批训练样本
7)使用训练样本学习速率α*η,和损失函数Lg进行梯度下降,更新模型参数;
8)计算损失值L;
9)如果L<δ或者i>MI循环结束;否则跳转至3)。
接着,执行步骤S3,基于经过训练的推荐模型,计算出每个用户对所有物品的偏好,并根据偏好值由高到低对所有物品进行排序;
接着,执行步骤S4,去除用户已交互过的物品,将剩余物品中预定个偏好值最高的物品作为个性化推荐的结果推荐给对应用户。
本发明所提出的基于交互序列数据挖掘深度用户相似性的推荐方法可以应用于多种推荐领域,应用场景:如音乐、视频、兴趣点、购物等的推荐。
综上内容,本发明所提出的基于交互序列数据挖掘深度用户相似性的推荐方法可以解决如下技术问题:
(1)数据稀疏性问题。根据用户与物品之间的交互历史记录得到的用户-物品交互矩阵是比较稀疏的。这是因为每个用户交互的物品都是有限的。如果仅使用该交互矩阵来进行物品推荐,推荐效果会比较差。本发明结合了用户对物品的偏好情况和用户间的相似性,解决了数据稀疏性的问题,并提高了推荐准确率。
(2)序列数据衡量用户相似性。用户与物品的交互序列反映了用户的一些个人信息,如行为习惯、偏好等。因此,可以根据交互序列衡量用户间行为的相似性。但是,用户与物品的交互序列是一个随时间增长的,不同用户的交互序列长度是不相等的。如何根据不等长的序列数据,衡量用户的相似性是一个挑战。本发明将序列数据转化成n-gram,然后根据n-gram计算用户的相似性,提高了计算的效率和准确性。
(3)用户相似性作用于推荐。用户的相似性表征了用户间的关系,而推荐系统是希望获得用户和物品之间的关系。用户相似性作用于推荐。本发明通过共享用户向量的方法,将n-gram学习到的用户相似性作用到协同过滤方法上,作为模型训练的一种限制条件,提高了推荐准确性。
上述描述仅是对本发明较佳实施例的描述,并非对本发明范围的任何限定,本发明领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护范围。
Claims (14)
1.一种基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,包括:
对用户与物品交互的原始记录数据进行预处理,以获得用户与物品的交互序列数据,并根据所述交互序列数据生成用户-物品交互矩阵和用户-gram矩阵;
根据所述用户-物品交互矩阵和所述用户-gram矩阵构建推荐模型,并训练所述推荐模型;
基于经过训练的推荐模型,计算出每个用户对所有物品的偏好,并根据偏好值由高到低对所有物品进行排序;
去除用户已交互过的物品,将剩余物品中预定个偏好值最高的物品作为个性化推荐的结果推荐给对应用户。
2.如权利要求1所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,所述对用户与物品交互的原始记录数据进行预处理,以获得用户与物品的交互序列数据的过程如下:
将每个用户与物品交互的原始记录数据转换成n-gram,根据n-gram挖掘用户的相似性;
对每个用户,将原始记录数据根据时间戳进行排序形成一序列,对所述序列进行修正,并去除修正后序列的时间戳,以获得用户与物品的交互序列数据。
3.如权利要求2所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,所述对所述序列进行修正过程如下:
检查相邻两个交互记录的时间间隔,如果时间间隔大于预定阈值,则所述序列需要在这两个记录之间切分成两个子序列。
4.如权利要求1所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,所述用户-物品交互矩阵中元素的取值基于如下公式确定:
其中,rui表示用户-物品交互矩阵中的元素;u和i分别表示用户和物品;当rui取值为1时,表明用户u喜欢物品i;当rui取值为0时,表明用户u不喜欢物品i或者用户u还未发现物品i。
5.如权利要求1所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,所述用户-gram矩阵中元素的取值基于如下公式确定:
其中,表示用户-gram矩阵中元素;u和j分别表示用户和n-gram。
6.如权利要求1所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,所述根据所述用户-物品交互矩阵和所述用户-gram矩阵构建推荐模型过程包括:
根据所述用户-物品交互矩阵构建用户对物品偏好预测模型;
根据所述用户-gram矩阵构建用户对n-gram偏好预测模型;
将用户、物品和n-gram的ID的高维one-hot稀疏向量转化成低维向量;
利用矩阵分解模型预测用户对物品的偏好和用户对n-gram的偏好;
利用神经网络模型预测用户对物品的偏好和用户对n-gram的偏好;
使用逻辑回归模型整合利用矩阵分解模型预测的结果和利用神经网络模型预测的结果,以构建推荐模型。
7.如权利要求6所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,所述用户对物品偏好预测模型采用如下公式表示:
其中,u和i分别表示用户和物品;P和Q分别表示用户u的向量表达矩阵和物品i的向量表达矩阵,θ表示预测模型的其他参数。
8.如权利要求6所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,所述用户对n-gram偏好预测模型采用如下公式表示:
其中,u和j分别表示用户和n-gram;P和O分别表示用户u的向量表达矩阵和n-gramj的向量表达矩阵,θ'表示预测模型的其他参数。
9.如权利要求6所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,所述将用户、物品和n-gram的ID的高维one-hot稀疏向量转化成低维向量,分别采用如下公式表示:
其中,P、Q和O分别表示用户、物品和n-gram的向量表达矩阵;pu表示用户u的低维向量,qi表示物品i的低维向量,oj表示n-gramj的低维向量;和分别表示用户u、物品i和n-gramj的one-hot向量表达。
10.如权利要求9所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,利用矩阵分解模型预测用户对物品的偏好和用户对n-gram的偏好,分别采用如下公式表示:
其中,u、i和j分别表示用户、物品和n-gram;pu表示用户u的低维向量,qi表示物品i的低维向量,oj表示n-gramj的低维向量。
11.如权利要求9所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,利用神经网络模型预测用户对物品的偏好采用如下公式表示:
其中,h是权重矩阵;σ是sigmoid函数;zL表示第L层隐藏层的输出;φL(·)表示第L层隐藏层的神经网络函数;W和b分别表示神经网络的权重和偏置参数;aL是第L层隐藏层的激活函数;
利用神经网络模型预测用户对n-gram的偏好采用如下公式表示:
其中,h是权重矩阵;σ是sigmoid函数;zL表示第L层隐藏层的输出;φL(·)表示第L层隐藏层的神经网络函数;W和b分别表示神经网络的权重和偏置参数;aL是第L层隐藏层的激活函数。
12.如权利要求11所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,在训练所述推荐模型过程中,采用的神经网络模型的约束条件用公式表示如下:
其中,和分别表示用户对物品偏好预测神经网络模型中第l层隐藏层的权值和偏置。和表示用户对n-gram偏好预测神经网络模型中第l层隐藏层的权值和偏置。
13.如权利要求6所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,所述使用逻辑回归模型整合利用矩阵分解模型预测的用户对物品的偏好和利用神经网络模型预测的用户对物品的偏好,采用公式如下:
其中,c(·)表示整合函数;rm和rn分别表示矩阵分解模型和神经网络模型预测的用户对物品的偏好;σ是sigmoid函数,W是分配给矩阵分解模型和神经网络模型这两个模型的权重。
14.如权利要求6所述的基于交互序列数据挖掘深度用户相似性的推荐方法,其特征在于,在训练所述推荐模型过程中,定义损失函数采用如下公式表示:
L=Lr+αLg;
其中,Lr和Lg分别为用户对物品的偏好的损失函数和用户对n-gram的偏好的损失函数;α表示权重;表示训练数据集,是正样本集合,即{(u,i)|rui=1},是负样本集,即{(u,i′)|rui′=0};与类似;β和λ分别是参数约束和正则化项的权重;|·|2表示L2的范数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811224350.0A CN109522474B (zh) | 2018-10-19 | 2018-10-19 | 基于交互序列数据挖掘深度用户相似性的推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811224350.0A CN109522474B (zh) | 2018-10-19 | 2018-10-19 | 基于交互序列数据挖掘深度用户相似性的推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109522474A true CN109522474A (zh) | 2019-03-26 |
CN109522474B CN109522474B (zh) | 2021-05-18 |
Family
ID=65772751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811224350.0A Active CN109522474B (zh) | 2018-10-19 | 2018-10-19 | 基于交互序列数据挖掘深度用户相似性的推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109522474B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110245299A (zh) * | 2019-06-19 | 2019-09-17 | 中国人民解放军国防科技大学 | 一种基于动态交互注意力机制的序列推荐方法及其系统 |
CN110555469A (zh) * | 2019-08-15 | 2019-12-10 | 阿里巴巴集团控股有限公司 | 处理交互序列数据的方法及装置 |
CN110955826A (zh) * | 2019-11-08 | 2020-04-03 | 上海交通大学 | 基于改进型循环神经网络单元的推荐系统 |
CN110991601A (zh) * | 2019-11-29 | 2020-04-10 | 中山大学 | 一种基于多用户行为的神经网络推荐方法 |
CN111258469A (zh) * | 2020-01-09 | 2020-06-09 | 支付宝(杭州)信息技术有限公司 | 处理交互序列数据的方法及装置 |
CN111259249A (zh) * | 2020-01-20 | 2020-06-09 | 北京百度网讯科技有限公司 | 数据筛选方法、装置、设备及存储介质 |
CN111538846A (zh) * | 2020-04-16 | 2020-08-14 | 武汉大学 | 基于混合协同过滤的第三方库推荐方法 |
CN111815351A (zh) * | 2020-05-29 | 2020-10-23 | 杭州览众数据科技有限公司 | 一种基于协同过滤与关联规则的服装推荐方法 |
US10936950B1 (en) | 2019-08-15 | 2021-03-02 | Advanced New Technologies Co., Ltd. | Processing sequential interaction data |
CN113051144A (zh) * | 2021-03-26 | 2021-06-29 | 中山大学 | 一种智能合约推荐方法及装置 |
CN113255052A (zh) * | 2021-07-09 | 2021-08-13 | 佛山市陶风互联网络科技有限公司 | 一种基于虚拟现实的家装方案推荐方法、系统及存储介质 |
CN113569155A (zh) * | 2021-07-30 | 2021-10-29 | 西南大学 | 一种基于改进循环神经网络算法的推荐召回方法及系统 |
CN114625779A (zh) * | 2022-03-07 | 2022-06-14 | 深圳市虎瑞科技有限公司 | 智慧大屏应用于内容智能推荐的方法、系统和电子设备 |
CN115953215A (zh) * | 2022-12-01 | 2023-04-11 | 上海交通大学 | 一种基于时间和图结构的搜索式推荐方法 |
CN117290398A (zh) * | 2023-09-27 | 2023-12-26 | 广东科学技术职业学院 | 一种基于大数据的课程推荐方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105608105A (zh) * | 2015-10-30 | 2016-05-25 | 浙江大学 | 一种基于收听上下文的音乐推荐方法 |
US9710787B2 (en) * | 2013-07-31 | 2017-07-18 | The Board Of Trustees Of The Leland Stanford Junior University | Systems and methods for representing, diagnosing, and recommending interaction sequences |
CN107122469A (zh) * | 2017-04-28 | 2017-09-01 | 中国人民解放军国防科学技术大学 | 基于语义相似度与时效性频率的查询推荐排序方法与装置 |
CN107832426A (zh) * | 2017-11-13 | 2018-03-23 | 上海交通大学 | 一种基于使用序列上下文的app推荐方法及系统 |
CN107885852A (zh) * | 2017-11-13 | 2018-04-06 | 上海交通大学 | 一种基于app使用记录的app推荐方法及系统 |
CN108573411A (zh) * | 2018-04-17 | 2018-09-25 | 重庆理工大学 | 基于用户评论的深度情感分析和多源推荐视图融合的混合推荐方法 |
CN108629671A (zh) * | 2018-05-14 | 2018-10-09 | 浙江工业大学 | 一种融合用户行为信息的餐馆推荐方法 |
CN108648049A (zh) * | 2018-05-03 | 2018-10-12 | 中国科学技术大学 | 一种基于用户行为区别建模的序列推荐方法 |
-
2018
- 2018-10-19 CN CN201811224350.0A patent/CN109522474B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9710787B2 (en) * | 2013-07-31 | 2017-07-18 | The Board Of Trustees Of The Leland Stanford Junior University | Systems and methods for representing, diagnosing, and recommending interaction sequences |
CN105608105A (zh) * | 2015-10-30 | 2016-05-25 | 浙江大学 | 一种基于收听上下文的音乐推荐方法 |
CN107122469A (zh) * | 2017-04-28 | 2017-09-01 | 中国人民解放军国防科学技术大学 | 基于语义相似度与时效性频率的查询推荐排序方法与装置 |
CN107832426A (zh) * | 2017-11-13 | 2018-03-23 | 上海交通大学 | 一种基于使用序列上下文的app推荐方法及系统 |
CN107885852A (zh) * | 2017-11-13 | 2018-04-06 | 上海交通大学 | 一种基于app使用记录的app推荐方法及系统 |
CN108573411A (zh) * | 2018-04-17 | 2018-09-25 | 重庆理工大学 | 基于用户评论的深度情感分析和多源推荐视图融合的混合推荐方法 |
CN108648049A (zh) * | 2018-05-03 | 2018-10-12 | 中国科学技术大学 | 一种基于用户行为区别建模的序列推荐方法 |
CN108629671A (zh) * | 2018-05-14 | 2018-10-09 | 浙江工业大学 | 一种融合用户行为信息的餐馆推荐方法 |
Non-Patent Citations (2)
Title |
---|
SONG W ET AL.: "Personalized Recommendation Based on Weighted Sequence Similarity", 《ADVANCES IN INTELLIGENT SYSTEMS AND COMPUTING》 * |
YU J ET AL.: "Similarity Personalized Recommendation of User Matrix Model Based on Click Stream", 《COMPUTER ENGINEERING》 * |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110245299A (zh) * | 2019-06-19 | 2019-09-17 | 中国人民解放军国防科技大学 | 一种基于动态交互注意力机制的序列推荐方法及其系统 |
US10936950B1 (en) | 2019-08-15 | 2021-03-02 | Advanced New Technologies Co., Ltd. | Processing sequential interaction data |
CN110555469A (zh) * | 2019-08-15 | 2019-12-10 | 阿里巴巴集团控股有限公司 | 处理交互序列数据的方法及装置 |
US11636341B2 (en) | 2019-08-15 | 2023-04-25 | Advanced New Technologies Co., Ltd. | Processing sequential interaction data |
CN110555469B (zh) * | 2019-08-15 | 2020-07-24 | 阿里巴巴集团控股有限公司 | 处理交互序列数据的方法及装置 |
CN110955826A (zh) * | 2019-11-08 | 2020-04-03 | 上海交通大学 | 基于改进型循环神经网络单元的推荐系统 |
CN110955826B (zh) * | 2019-11-08 | 2023-06-20 | 上海交通大学 | 基于改进型循环神经网络单元的推荐系统 |
CN110991601B (zh) * | 2019-11-29 | 2023-04-21 | 中山大学 | 一种基于多用户行为的神经网络推荐方法 |
CN110991601A (zh) * | 2019-11-29 | 2020-04-10 | 中山大学 | 一种基于多用户行为的神经网络推荐方法 |
CN111258469B (zh) * | 2020-01-09 | 2021-05-14 | 支付宝(杭州)信息技术有限公司 | 处理交互序列数据的方法及装置 |
CN111258469A (zh) * | 2020-01-09 | 2020-06-09 | 支付宝(杭州)信息技术有限公司 | 处理交互序列数据的方法及装置 |
CN111259249A (zh) * | 2020-01-20 | 2020-06-09 | 北京百度网讯科技有限公司 | 数据筛选方法、装置、设备及存储介质 |
CN111259249B (zh) * | 2020-01-20 | 2023-08-22 | 北京百度网讯科技有限公司 | 数据筛选方法、装置、设备及存储介质 |
CN111538846A (zh) * | 2020-04-16 | 2020-08-14 | 武汉大学 | 基于混合协同过滤的第三方库推荐方法 |
CN111815351A (zh) * | 2020-05-29 | 2020-10-23 | 杭州览众数据科技有限公司 | 一种基于协同过滤与关联规则的服装推荐方法 |
CN113051144A (zh) * | 2021-03-26 | 2021-06-29 | 中山大学 | 一种智能合约推荐方法及装置 |
CN113051144B (zh) * | 2021-03-26 | 2022-02-08 | 中山大学 | 一种智能合约推荐方法及装置 |
CN113255052A (zh) * | 2021-07-09 | 2021-08-13 | 佛山市陶风互联网络科技有限公司 | 一种基于虚拟现实的家装方案推荐方法、系统及存储介质 |
CN113569155B (zh) * | 2021-07-30 | 2022-05-03 | 西南大学 | 一种基于改进循环神经网络算法的推荐召回方法及系统 |
CN113569155A (zh) * | 2021-07-30 | 2021-10-29 | 西南大学 | 一种基于改进循环神经网络算法的推荐召回方法及系统 |
CN114625779A (zh) * | 2022-03-07 | 2022-06-14 | 深圳市虎瑞科技有限公司 | 智慧大屏应用于内容智能推荐的方法、系统和电子设备 |
CN114625779B (zh) * | 2022-03-07 | 2024-04-26 | 上海合志信息技术有限公司 | 智慧大屏应用于内容智能推荐的方法、系统和电子设备 |
CN115953215A (zh) * | 2022-12-01 | 2023-04-11 | 上海交通大学 | 一种基于时间和图结构的搜索式推荐方法 |
CN115953215B (zh) * | 2022-12-01 | 2023-09-05 | 上海交通大学 | 一种基于时间和图结构的搜索式推荐方法 |
CN117290398A (zh) * | 2023-09-27 | 2023-12-26 | 广东科学技术职业学院 | 一种基于大数据的课程推荐方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109522474B (zh) | 2021-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109522474B (zh) | 基于交互序列数据挖掘深度用户相似性的推荐方法 | |
Bansal et al. | Ask the gru: Multi-task learning for deep text recommendations | |
CN110717098B (zh) | 基于元路径的上下文感知用户建模方法、序列推荐方法 | |
Ling et al. | Ratings meet reviews, a combined approach to recommend | |
Ko et al. | Collaborative recurrent neural networks for dynamic recommender systems | |
CN111209386B (zh) | 一种基于深度学习的个性化文本推荐方法 | |
CN108334592B (zh) | 一种基于内容与协同过滤相结合的个性化推荐方法 | |
CN110659411B (zh) | 一种基于神经注意力自编码器的个性化推荐方法 | |
CN110910218A (zh) | 一种基于深度学习的多行为迁移推荐方法 | |
CN111737578A (zh) | 一种推荐方法及系统 | |
Xu et al. | Personalized recommendation based on reviews and ratings alleviating the sparsity problem of collaborative filtering | |
CN110321485A (zh) | 一种结合用户评论与评分信息的推荐算法 | |
Dai et al. | Smooth neighborhood recommender systems | |
CN113190751B (zh) | 一种融合关键词生成的推荐方法 | |
CN111178986A (zh) | 用户-商品偏好的预测方法及系统 | |
CN112256965A (zh) | 一种基于lambdaMart的神经协同过滤模型推荐方法 | |
CN110083766B (zh) | 一种基于元路径引导嵌入的查询推荐方法及装置 | |
CN104572915A (zh) | 一种基于内容环境增强的用户事件相关度计算方法 | |
CN117252665A (zh) | 业务推荐方法、装置、电子设备及存储介质 | |
CN117436980A (zh) | 保险产品的推荐方法和装置、设备、存储介质 | |
Rauf et al. | BCE4ZSR: Bi-encoder empowered by teacher cross-encoder for zero-shot cold-start news recommendation | |
Sang et al. | Design and implementation of collaborative filtering approach for movie recommendation system | |
CN109918564A (zh) | 一种面向完全冷启动的上下文自动编码推荐方法及系统 | |
CN115687757A (zh) | 融合层次注意与特征交互的推荐方法及其应用系统 | |
CN112989196B (zh) | 基于个性化召回算法lfm的图书推荐方法 |
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 |