CN114117232A - 节点和元路径对比学习增强的推荐方法及系统 - Google Patents

节点和元路径对比学习增强的推荐方法及系统 Download PDF

Info

Publication number
CN114117232A
CN114117232A CN202111462320.5A CN202111462320A CN114117232A CN 114117232 A CN114117232 A CN 114117232A CN 202111462320 A CN202111462320 A CN 202111462320A CN 114117232 A CN114117232 A CN 114117232A
Authority
CN
China
Prior art keywords
node
user
meta
path
loss
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
Application number
CN202111462320.5A
Other languages
English (en)
Inventor
张军
黄明远
赵朋朋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenxing Taibao Intelligent Technology Suzhou Co ltd
Original Assignee
Shenxing Taibao Intelligent Technology Suzhou Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenxing Taibao Intelligent Technology Suzhou Co ltd filed Critical Shenxing Taibao Intelligent Technology Suzhou Co ltd
Priority to CN202111462320.5A priority Critical patent/CN114117232A/zh
Publication of CN114117232A publication Critical patent/CN114117232A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Development Economics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了节点和元路径对比学习增强的推荐方法,包括:获取待推荐用户标识;将待推荐用户标识输入到训练好的推荐模型中,获得待推荐用户的用户嵌入及与待推荐用户关联的项目嵌入;将用户嵌入与项目嵌入相乘,获得对应项目的得分,并按照得分的高低排序,生成与该排序对应的项目推荐列表;其中,训练好的推荐模型是由BPR损失、基于元路径的用户侧对比损失和基于元路径的项目侧对比损失,对推荐模型进行训练得到的;以及,节点和元路径对比学习增强的推荐系统、电子设备和存储介质。本发明的推荐方法及系统可以利用节点级信息和路径级信息来指导推荐模型学习节点的表示,使输出的推荐项目更符合用户需求。

Description

节点和元路径对比学习增强的推荐方法及系统
技术领域
本发明涉及机器学习领域。更具体地说,本发明涉及一种节点和元路径对比学习增强的推荐方法及系统。
背景技术
近年来,推荐系统在YouTube和亚马逊等在线平台上取得了巨大的成功。推荐系统的原理是利用历史记录来计算用户和项的表示。随着图神经网络(GNNs)的发展(GNN是一种学习图上节点表示的技术,其可以从历史交互记录中提取用户-项目二部图),出现了许多基于GNN的推荐系统,但它们仍然面临着数据稀疏性的问题。在推荐场景中,用户-项目二部图是非常稀疏的。GNN很难在稀疏的用户-项目二部图上学习有用的节点表示,这导致基于GNN的模型遇到了性能瓶颈。对比学习作为一种属于自监督学习,其通过定义正样本和负样本,可以最大化正样本之间的相似性,并最小化正样本和负样本之间的相似性。因为对比学习可以进一步从未标记数据中挖掘信息,所以被认为是缓解数据稀疏性的有效方法。因此,许多基于GNN的推荐系统都采用了对比学习。具体来说,S3-Rec作为会话推荐系统,通过dropout生成多个会话视图,然后在这些会话视图上使用对比学习。SGL通过dropout用户-项目二部图来获得一个辅助视图,然后通过多视图对比学习增强了模型的鲁棒性。通过对比学习,这些作品取得了卓越的进展。但是,它们仍然存在以下限制:(1)信息丢失。由dropout生成的视图可能会丢弃有用信息,这样会损害模型的性能。(2)对路径信息的利用率不足。
发明内容
本发明的一个目的是提供一种节点和元路径对比学习增强的推荐方法及系统,其可以利用节点级信息和路径级信息来指导推荐模型学习节点的表示。
为了实现根据本发明的目的和其它优点,提供了一种节点和元路径对比学习增强的推荐方法,包括:
获取待推荐用户标识;
将所述待推荐用户标识输入到训练好的推荐模型中,获得待推荐用户的用户嵌入及与所述待推荐用户关联的项目嵌入;
将所述用户嵌入与所述项目嵌入相乘,获得对应项目的得分,并按照得分的高低排序,生成与该排序对应的项目推荐列表;;其中,
所述训练好的推荐模型是由BPR损失、基于元路径的用户侧对比损失和基于元路径的项目侧对比损失,对推荐模型进行训练得到的。
优选的是,所述的节点和元路径对比学习增强的推荐方法,所述训练好的推荐模型通过以下步骤得到:
获取所有用户与项目的历史交互记录,生成用户-项目二部图
Figure BDA0003388563870000021
并计算
Figure BDA0003388563870000022
中的用户节点嵌入
Figure BDA0003388563870000023
和项目节点嵌入
Figure BDA0003388563870000024
根据
Figure BDA0003388563870000025
Figure BDA0003388563870000026
计算推荐模型的BPR损失
Figure BDA0003388563870000027
对所述用户-项目二部图
Figure BDA0003388563870000028
进行元路径提取,生成用户元路径视图
Figure BDA0003388563870000029
和项目元路径视图
Figure BDA00033885638700000210
将所述用户节点嵌入
Figure BDA00033885638700000211
和所述用户元路径视图
Figure BDA00033885638700000212
输入元路径视图编码器中,获取所述用户元路径视图
Figure BDA00033885638700000213
上的节点嵌入
Figure BDA00033885638700000214
Figure BDA00033885638700000215
Figure BDA00033885638700000216
投影到同一向量空间中,计算用户侧对比损失
Figure BDA00033885638700000217
将所述项目节点嵌入
Figure BDA00033885638700000218
和所述项目元路径视图
Figure BDA00033885638700000219
输入元路径视图编码器中,获取所述项目元路径视图
Figure BDA00033885638700000220
上的节点嵌入
Figure BDA00033885638700000221
Figure BDA00033885638700000222
Figure BDA00033885638700000223
投影到同一向量空间中,计算项目侧对比损失
Figure BDA00033885638700000224
根据所述BPR损失
Figure BDA00033885638700000225
用户侧对比损失
Figure BDA00033885638700000226
和项目侧对比损失
Figure BDA00033885638700000227
计算推荐模型的整体损失
Figure BDA00033885638700000228
Figure BDA00033885638700000229
对推荐模型进行训练,直至
Figure BDA00033885638700000230
小于预设阈值,即得训练好的推荐模型。
优选的是,所述的节点和元路径对比学习增强的推荐方法,将所述用户节点嵌入
Figure BDA00033885638700000231
和所述用户元路径视图
Figure BDA00033885638700000232
输入元路径视图编码器中,获取所述用户元路径视图
Figure BDA00033885638700000233
上的节点嵌入
Figure BDA00033885638700000234
Figure BDA00033885638700000235
Figure BDA00033885638700000236
役影到同一向量空间中,计算用户侧对比损失
Figure BDA00033885638700000237
具体为:
定义:
Figure BDA00033885638700000238
式中,
Figure BDA0003388563870000031
是节点i在
Figure BDA0003388563870000032
上的一组相邻节点,di和di′分别是节点i和i′的度,
Figure BDA0003388563870000033
是节点i的邻域节点i′的用户节点嵌入
根据所述用户元路径视图
Figure BDA0003388563870000034
生成列表Su,
Figure BDA0003388563870000035
式中,
Figure BDA0003388563870000036
表示节点i与
Figure BDA0003388563870000037
中的第n个相邻节点i′的共同交互项目的个数;
将列表Su按降序排序,生成列表Su′,设置一个超参数Tposu,如果|Su′|>Tposu,我们从Su′中选择第一个Tposu节点作为节点i的正样本,否则将Su′中的所有节点视为正样本,并将节点i的正样本节点集标记为
Figure BDA0003388563870000038
将节点i的负样本节点集标记为
Figure BDA0003388563870000039
使用相同的非线性变换将
Figure BDA00033885638700000310
Figure BDA00033885638700000311
投影到同一向量空间中,其中,
Figure BDA00033885638700000312
Figure BDA00033885638700000313
式中,W是权重矩阵,b是常数,
Figure BDA00033885638700000314
Figure BDA00033885638700000315
投影后的节点嵌入,
Figure BDA00033885638700000316
Figure BDA00033885638700000317
投影后的节点嵌入;
以用户-项目二部图
Figure BDA00033885638700000318
为主体计算对比损失
Figure BDA00033885638700000319
以用户元路径视图
Figure BDA00033885638700000320
为主体计算对比损失
Figure BDA00033885638700000321
其中,
Figure BDA00033885638700000322
Figure BDA00033885638700000323
式中,τ是温度参数;
计算用户侧对比损失
Figure BDA00033885638700000324
Figure BDA00033885638700000325
式中,λ是系数,I是用户集合,|I|为用户数量。
优选的是,所述的节点和元路径对比学习增强的推荐方法,将所述项目节点嵌入
Figure BDA00033885638700000326
和所述项目元路径视图
Figure BDA00033885638700000327
输入元路径视图编码器中,获取所述项目元路径视图
Figure BDA00033885638700000328
上的节点嵌入
Figure BDA00033885638700000329
Figure BDA00033885638700000330
Figure BDA00033885638700000331
投影到同一向量空间中,计算项目侧对比损失
Figure BDA00033885638700000332
具体为:
定义:
Figure BDA0003388563870000041
式中,
Figure BDA0003388563870000042
是节点j在
Figure BDA0003388563870000043
上的一组相邻节点,dj和dj′分别是节点j和j′的度,
Figure BDA0003388563870000044
是节点j的邻域节点j′的项目节点嵌入;
根据所述用户元路径视图
Figure BDA0003388563870000045
生成列表Sv,
Figure BDA0003388563870000046
式中,
Figure BDA0003388563870000047
表示节点j与
Figure BDA0003388563870000048
中的第n个相邻节点j′的共同交互用户的个数;
将列表Sv按降序排序,生成列表Sv′,设置一个超参数Tposv,如果|Sv′|>Tposv,我们从Sv′中选择第一个Tposv节点作为节点j的正样本,否则对Sv′中的所有节点视为正样本,并将节点j的正样本节点集标记为
Figure BDA0003388563870000049
将节点i的负样本节点集标记为
Figure BDA00033885638700000410
使用相同的非线性变换将
Figure BDA00033885638700000411
Figure BDA00033885638700000412
投影到同一向量空间中,其中,
Figure BDA00033885638700000413
Figure BDA00033885638700000414
式中,W是权重矩阵,b是常数,
Figure BDA00033885638700000415
Figure BDA00033885638700000416
投影后的节点嵌入,
Figure BDA00033885638700000417
Figure BDA00033885638700000418
投影后的节点嵌入;
以用户-项目二部图
Figure BDA00033885638700000419
为主体计算对比损失
Figure BDA00033885638700000420
以项目元路径视图
Figure BDA00033885638700000421
为主体计算对比损失
Figure BDA00033885638700000422
其中,
Figure BDA00033885638700000423
Figure BDA00033885638700000424
式中,τ是温度参数;
计算项目侧对比损失
Figure BDA00033885638700000425
Figure BDA00033885638700000426
式中,λ是系数,J是项目集合,|J|为项目数量。
优选的是,所述的节点和元路径对比学习增强的推荐方法,根据所述BPR损失
Figure BDA0003388563870000051
用户侧对比损失
Figure BDA0003388563870000052
和项目侧对比损失
Figure BDA0003388563870000053
计算推荐模型的整体损失
Figure BDA0003388563870000054
具体为:
计算推荐模型整体的对比损失
Figure BDA0003388563870000055
Figure BDA0003388563870000056
式中,wuser和witem是超参数,其分别控制了对用户侧对比损失和对项目侧对比损失的影响;
计算推荐模型的整体损失
Figure BDA0003388563870000057
Figure BDA0003388563870000058
优选的是,所述的节点和元路径对比学习增强的推荐方法,所述推荐模型包括LightGCN、NGCF、NeuMF中的一种。
优选的是,所述的节点和元路径对比学习增强的推荐方法及装置,所述元路径视图编码器包括GNN、GCN、GAT中的一种。
本发明还提供了一种节点和元路径对比学习增强的推荐系统,包括:
获取模块,其用于获取待推荐用户与项目的历史交互记录一;
推荐模块,其用于将所述历史交互记录一输入训练好的推荐模型中,得到待推荐用户的推荐项目;其中,
所述训练好的推荐模型是由BPR损失、基于元路径的用户侧对比损失和基于元路径的项目侧对比损失,对推荐模型进行训练得到的。
本发明还提供了一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行上述的方法。
本发明还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时,实现上述的方法。
本发明至少包括以下有益效果:
本发明提供了一种节点和元路径对比学习增强的推荐方法和系统,它可以利用节点级信息和路径级信息来指导推荐模型学习节点的表示,使训练好的推荐模型可以学习到包含节点级信息和路径级信息的节点表示,进而使得训练好的推荐模型输出的推荐项目更符合用户需求。具体来说,首先通过利用元路径而不是随机dropout,对用户-项目二部图生成一个元路径视图,这样,元路径视图在存储大量路径级信息时不会丢失信息,元路径视图和用户-项目二部图,可以从不同的角度来描述节点表示。其次,利用GNNs捕获节点级信息和路径级信息,学习交互视图和元路径视图上的节点表示。再次,引入了多正样本机制,使对比学习更适合推荐任务,该方法可以为当前节点定义多个正样本,而不是仅定义一个正样本。最后,再把计算正样本和负样本之间的对比损失作为辅助任务,以指导模型学习具有更多路径级信息的节点表示。
本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。
附图说明
图1是本发明的NPCRS模型的结构示意图;
图2是本发明从交互视图中提取元路径视图的示意图。
具体实施方式
下面结合实施例和附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。
应当理解,本文所使用的诸如“具有”、“包含”以及“包括”术语并不排除一个或多个其它元件或其组合的存在或添加。
术语解释:
LightGCN:Simplifying and Powering Graph Convolution Network forRecommendation,用于推荐的轻量化的图卷积神经网络;
NGCF:Neural Graph Collaborative Filtering,图神经协同过滤;
NeuMF:Neural Collaborative Filtering,基于神经网络的协同过滤;
GCN:图卷积网络;
GAT:图注意力网络。
本发明提供了一种节点和元路径对比学习增强的推荐方法,包括:
S101、获取待推荐用户标识,如用户ID、用户名称;
S102、将所述待推荐用户标识输入到训练好的推荐模型中,获得待推荐用户的用户嵌入(这里,嵌入可以理解为向量表示,下同)及与所述待推荐用户关联的项目嵌入;
将所述用户嵌入与所述项目嵌入相乘,获得对应项目的得分,得分越高表示用户对该项目的感兴趣程度越高,并按照得分的高低排序,生成与该排序对应的项目推荐列表,进一步的,可取排在前预设位数的得分,如前10位的得分,再按照得分的高低,生成与得分对应的项目推荐列表;;其中,
所述训练好的推荐模型是由BPR损失、基于元路径的用户侧对比损失和基于元路径的项目侧对比损失,对推荐模型进行训练得到的。
本发明通过BPR损失、基于元路径的用户侧对比损失和基于元路径的项目侧对比损失,对推荐模型进行训练,使训练好的推荐模型可以学习到包含节点级信息和路径级信息的节点表示,进而使得训练好的推荐模型输出的推荐项目更符合用户需求。
在另一实施方案中,如图1所示,所述训练好的推荐模型(命名为NPCRS模型)通过以下步骤得到:
S201、获取所有用户与项目的历史交互记录,生成用户-项目二部图
Figure BDA0003388563870000071
并计算
Figure BDA0003388563870000072
中的用户节点嵌入
Figure BDA0003388563870000073
和项目节点嵌入
Figure BDA0003388563870000074
根据
Figure BDA0003388563870000075
Figure BDA0003388563870000076
计算推荐模型的BPR损失
Figure BDA0003388563870000077
所述推荐模型包括LightGCN、NGCF、NeuMF中的一种;具体的:
令用户表示为I={i1,i2,...,in}(|I|=N),项目分别表示为J={j1,j2,...,jm}(|J|=M)。用户和项目之间的交互历史可以表示为矩阵
Figure BDA0003388563870000078
rij=1表示用户i和项目j存在交互记录,否则表示为rij=0。设O+={rij|i∈I,j∈J}是观察到的交互。利用矩阵
Figure BDA0003388563870000079
可以得到一个用户-项目二部图
Figure BDA00033885638700000710
其中
Figure BDA00033885638700000711
是所有节点的集合,εr=O+表示观察到的交互。
Figure BDA00033885638700000712
Figure BDA00033885638700000713
是邻居节点集。
Figure BDA00033885638700000714
包括用户i交互过的所有项目节点。
Figure BDA00033885638700000715
包括与项目j交互过的所有用户节点。
为简单起见,这里,使用LightGCN作为推荐模型,进行举例说明:
计算用户和项目的表示形式:在LightGCN中嵌入的计算定义如下:
Figure BDA00033885638700000716
Figure BDA00033885638700000717
在这里,ei和ej分别是用户嵌入和项目嵌入。k是GCN的层数。
Figure BDA0003388563870000081
是对称归一化项,它可以避免在图卷积操作过程中嵌入规模的增大。值得注意的是,LightGCN不使用非线性激活函数和特征转换。通过k层的GCN后,通过以下方法得到最终的嵌入:
Figure BDA0003388563870000082
αk≥0度量了k层嵌入的重要性。在实际应用中,设置αk=1/(K+1)。
训练和预测:在获得用户和项目的最终嵌入后,通过用户和项目的嵌入相乘来获得预测分数:
Figure BDA0003388563870000083
Figure BDA0003388563870000084
是反映用户对该项目的兴趣程度的得分,分数越高表示用户对该项目越感兴趣。
LightGCN采用贝叶斯个性化排序(BPR)损失来学习参数。BPR损失是一种成对的损失,促进观察到的条目的排名高于未观察的对应:
Figure BDA0003388563870000085
其中,λ为L2正则化系数,Θ为模型的参数
S202、对所述用户-项目二部图
Figure BDA0003388563870000086
进行元路径提取,生成用户元路径视图
Figure BDA0003388563870000087
和项目元路径视图
Figure BDA0003388563870000088
具体的:
元路径P定义为
Figure BDA0003388563870000089
(缩写为A1A2...Al+1)形式的路径,描述节点A1和Al+1之间组合关系
Figure BDA00033885638700000818
其中
Figure BDA00033885638700000819
表示关系上的组合运算符。如图2所示,用户-项目交互图有两个元路径,IJI和JIJ。IJI表示与同一项目交互过的两个用户。JIJ表示用户交互的两个项目。通过元路径,可以很容易地捕获路径级信息。
S203、将所述用户节点嵌入
Figure BDA00033885638700000810
和所述用户元路径视图
Figure BDA00033885638700000811
输入元路径视图编码器中,获取所述用户元路径视图
Figure BDA00033885638700000812
上的节点嵌入
Figure BDA00033885638700000813
Figure BDA00033885638700000814
Figure BDA00033885638700000815
投影到同一向量空间中,计算用户侧对比损失
Figure BDA00033885638700000816
所述元路径视图编码器包括GNN、GCN、GAT中的一种,这里,以GNN进行举例说明;具体的:
定义:
Figure BDA00033885638700000817
式中,
Figure BDA0003388563870000091
是节点i在
Figure BDA0003388563870000092
上的一组相邻节点,di和di′分别是节点i和i′的度,
Figure BDA0003388563870000093
是节点i的邻域节点i′的用户节点嵌入。元路径视图上的聚合使节点嵌入
Figure BDA0003388563870000094
能够了解有关路径级别的信息。因此,
Figure BDA0003388563870000095
Figure BDA0003388563870000096
捕获更多的高阶信息。
根据所述用户元路径视图
Figure BDA0003388563870000097
生成列表Su,
Figure BDA0003388563870000098
式中,
Figure BDA0003388563870000099
表示节点i与
Figure BDA00033885638700000910
中的第n个相邻节点i′的共同交互项目的个数;
将列表Su按降序排序,生成列表Su′,设置一个超参数Tposu,如果|Su′|>Tposu,我们从Su′中选择第一个Tposu节点作为节点i的正样本,否则将Su′中的所有节点视为正样本,并将节点i的正样本节点集标记为
Figure BDA00033885638700000911
将节点i的负样本节点集标记为
Figure BDA00033885638700000912
这里,每个节点都有多个正样本,而不是一个,但在之前的对比学习工作中,都只考虑了一对正样本。例如,SimCLR只将原始图片和裁剪后的图片作为正样本。在推荐系统场景中,可能会有许多用户具有相似的兴趣。如果只使用一对正值,模型将很难学习有用的信息,从而导致模型性能受损。因此,使用多对正值更符合推荐任务的背景。
使用相同的非线性变换将
Figure BDA00033885638700000913
Figure BDA00033885638700000914
投影到同一向量空间中,其中,
Figure BDA00033885638700000915
Figure BDA00033885638700000916
式中,W是权重矩阵,b是常数,
Figure BDA00033885638700000917
Figure BDA00033885638700000918
投影后的节点嵌入,
Figure BDA00033885638700000919
Figure BDA00033885638700000920
投影后的节点嵌入;这里,可使用一个两层的MLP实来现,其中激活函数选择了ELU。
以用户-项目二部图
Figure BDA00033885638700000921
为主体计算对比损失
Figure BDA00033885638700000922
以用户元路径视图
Figure BDA00033885638700000923
为主体计算对比损失
Figure BDA00033885638700000924
其中,
Figure BDA00033885638700000925
Figure BDA00033885638700000926
式中,τ是温度参数;
计算用户侧对比损失
Figure BDA00033885638700000927
Figure BDA00033885638700000928
式中,λ是系数,I是用户集合,|I|为用户数量。
S204、将所述项目节点嵌入
Figure BDA0003388563870000101
和所述项目元路径视图
Figure BDA0003388563870000102
输入元路径视图编码器中,获取所述项目元路径视图
Figure BDA0003388563870000103
上的节点嵌入
Figure BDA0003388563870000104
Figure BDA0003388563870000105
Figure BDA0003388563870000106
投影到同一向量空间中,计算项目侧对比损失
Figure BDA0003388563870000107
这里,仍以GNN进行举例说明,具体为:
定义:
Figure BDA0003388563870000108
式中,
Figure BDA0003388563870000109
是节点j在
Figure BDA00033885638700001010
上的一组相邻节点,dj和dj′分别是节点j和j′的度,
Figure BDA00033885638700001011
是节点j的邻域节点j′的项目节点嵌入;
根据所述用户元路径视图
Figure BDA00033885638700001012
生成列表Sv,
Figure BDA00033885638700001013
式中,
Figure BDA00033885638700001014
表示节点j与
Figure BDA00033885638700001015
中的第n个相邻节点j′的共同交互用户的个数;
将列表Sv按降序排序,生成列表Sv′,设置一个超参数Tposv,如果|Sv′|>Tposv,我们从Sv′中选择第一个Tposv节点作为节点j的正样本,否则对Sv′中的所有节点视为正样本,并将节点j的正样本节点集标记为
Figure BDA00033885638700001016
将节点i的负样本节点集标记为
Figure BDA00033885638700001017
使用相同的非线性变换将
Figure BDA00033885638700001018
Figure BDA00033885638700001019
投影到同一向量空间中,其中,
Figure BDA00033885638700001020
Figure BDA00033885638700001021
式中,W是权重矩阵,b是常数,
Figure BDA00033885638700001022
Figure BDA00033885638700001023
投影后的节点嵌入,
Figure BDA00033885638700001024
Figure BDA00033885638700001025
投影后的节点嵌入;
以用户-项目二部图
Figure BDA00033885638700001026
为主体计算对比损失
Figure BDA00033885638700001027
以项目元路径视图
Figure BDA00033885638700001028
为主体计算对比损失
Figure BDA00033885638700001029
其中,
Figure BDA00033885638700001030
Figure BDA00033885638700001031
式中,τ是温度参数;
计算项目侧对比损失
Figure BDA0003388563870000111
Figure BDA0003388563870000112
式中,λ是系数,J是项目集合,|J|为项目数量。
S205、根据所述BPR损失
Figure BDA0003388563870000113
用户侧对比损失
Figure BDA0003388563870000114
和项目侧对比损失
Figure BDA0003388563870000115
计算推荐模型的整体损失
Figure BDA0003388563870000116
Figure BDA0003388563870000117
对推荐模型进行训练,直至
Figure BDA0003388563870000118
小于预设阈值,即得训练好的推荐模型;具体的:
计算推荐模型整体的对比损失
Figure BDA0003388563870000119
Figure BDA00033885638700001110
式中,wuser和witem是超参数,其分别控制了对用户侧对比损失和对项目侧对比损失的影响;
计算推荐模型的整体损失
Figure BDA00033885638700001111
Figure BDA00033885638700001112
采用
Figure BDA00033885638700001113
替换式1中的
Figure BDA00033885638700001114
来学习LightGCN的参数,直至
Figure BDA00033885638700001115
小于预设阈值,即得训练好的推荐模型。
本发明还提供了一种节点和元路径对比学习增强的推荐系统,包括:
获取模块,其用于获取待推荐用户与项目的历史交互记录一;
推荐模块,其用于将所述历史交互记录一输入训练好的推荐模型中,得到待推荐用户的推荐项目;其中,
所述训练好的推荐模型是由BPR损失、基于元路径的用户侧对比损失和基于元路径的项目侧对比损失,对推荐模型进行训练得到的。
本技术方案基于与节点和元路径对比学习增强的推荐方法相同的发明构思,理解本技术方案可参见推荐方法部分的描述。
本发明还提供了一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行上述的方法。
本技术方案基于与节点和元路径对比学习增强的推荐方法相同的发明构思得到,可参考推荐方法部分的描述。本技术方案的电子设备不限于pc、终端、服务器。
本发明还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时,实现上述的方法。
本技术方案基于与节点和元路径对比学习增强的推荐方法相同的发明构思得到,可参考推荐方法部分的描述,以使本发明的推荐方法可以以软件产品的形式体现出来。
以下,以3个真实世界的数据集,如表1所示,来评估本发明的NPCRS模型的有益效果,结果见表2。由表2可知,本发明的模型显著地优于现有模型。
表1
Figure BDA0003388563870000121
表2
Figure BDA0003388563870000122
尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。

Claims (10)

1.节点和元路径对比学习增强的推荐方法,其特征在于,包括:
获取待推荐用户标识;
将所述待推荐用户标识输入到训练好的推荐模型中,获得待推荐用户的用户嵌入及与所述待推荐用户关联的项目嵌入;
将所述用户嵌入与所述项目嵌入相乘,获得对应项目的得分,并按照得分的高低排序,生成与该排序对应的项目推荐列表;其中,
所述训练好的推荐模型是由BPR损失、基于元路径的用户侧对比损失和基于元路径的项目侧对比损失,对推荐模型进行训练得到的。
2.如权利要求1所述的节点和元路径对比学习增强的推荐方法,其特征在于,所述训练好的推荐模型通过以下步骤得到:
获取所有用户与项目的历史交互记录,生成用户-项目二部图
Figure FDA0003388563860000011
并计算
Figure FDA0003388563860000012
中的用户节点嵌入
Figure FDA0003388563860000013
和项目节点嵌入
Figure FDA0003388563860000014
根据
Figure FDA0003388563860000015
Figure FDA0003388563860000016
计算推荐模型的BPR损失
Figure FDA0003388563860000017
对所述用户-项目二部图
Figure FDA0003388563860000018
进行元路径提取,生成用户元路径视图
Figure FDA0003388563860000019
和项目元路径视图
Figure FDA00033885638600000110
将所述用户节点嵌入
Figure FDA00033885638600000111
和所述用户元路径视图
Figure FDA00033885638600000112
输入元路径视图编码器中,获取所述用户元路径视图
Figure FDA00033885638600000113
上的节点嵌入
Figure FDA00033885638600000114
Figure FDA00033885638600000115
Figure FDA00033885638600000116
投影到同一向量空间中,计算用户侧对比损失
Figure FDA00033885638600000117
将所述项目节点嵌入
Figure FDA00033885638600000118
和所述项目元路径视图
Figure FDA00033885638600000119
输入元路径视图编码器中,获取所述项目元路径视图
Figure FDA00033885638600000120
上的节点嵌入
Figure FDA00033885638600000121
Figure FDA00033885638600000122
Figure FDA00033885638600000123
投影到同一向量空间中,计算项目侧对比损失
Figure FDA00033885638600000124
根据所述BPR损失
Figure FDA00033885638600000125
用户侧对比损失
Figure FDA00033885638600000126
和项目侧对比损失
Figure FDA00033885638600000127
计算推荐模型的整体损失
Figure FDA00033885638600000128
Figure FDA00033885638600000129
对推荐模型进行训练,直至
Figure FDA00033885638600000130
小于预设阈值,即得训练好的推荐模型。
3.如权利要求2所述的节点和元路径对比学习增强的推荐方法,其特征在于,将所述用户节点嵌入
Figure FDA00033885638600000131
和所述用户元路径视图
Figure FDA00033885638600000132
输入元路径视图编码器中,获取所述用户元路径视图
Figure FDA00033885638600000133
上的节点嵌入
Figure FDA00033885638600000134
Figure FDA00033885638600000135
Figure FDA00033885638600000136
投影到同一向量空间中,计算用户侧对比损失
Figure FDA00033885638600000137
具体为:
定义:
Figure FDA0003388563860000021
式中,
Figure FDA0003388563860000022
是节点i在
Figure FDA0003388563860000023
上的一组相邻节点,di和di′分别是节点i和i′的度,
Figure FDA0003388563860000024
是节点i的邻域节点i′的用户节点嵌入;
根据所述用户元路径视图
Figure FDA0003388563860000025
生成列表Su,
Figure FDA0003388563860000026
式中,
Figure FDA0003388563860000027
表示节点i与
Figure FDA0003388563860000028
中的第n个相邻节点i′的共同交互项目的个数;
将列表Su按降序排序,生成列表Su′,设置一个超参数Tposu,如果|Su′|>Tposu,我们从Su′中选择第一个Tposu节点作为节点i的正样本,否则将Su′中的所有节点视为正样本,并将节点i的正样本节点集标记为
Figure FDA0003388563860000029
将节点i的负样本节点集标记为
Figure FDA00033885638600000210
使用相同的非线性变换将
Figure FDA00033885638600000211
Figure FDA00033885638600000212
投影到同一向量空间中,其中,
Figure FDA00033885638600000213
Figure FDA00033885638600000214
式中,W是权重矩阵,b是常数,
Figure FDA00033885638600000215
Figure FDA00033885638600000216
投影后的节点嵌入,
Figure FDA00033885638600000217
Figure FDA00033885638600000218
投影后的节点嵌入;
以用户-项目二部图
Figure FDA00033885638600000219
为主体计算对比损失
Figure FDA00033885638600000220
以用户元路径视图
Figure FDA00033885638600000221
为主体计算对比损失
Figure FDA00033885638600000222
其中,
Figure FDA00033885638600000223
Figure FDA00033885638600000224
式中,τ是温度参数;
计算用户侧对比损失
Figure FDA00033885638600000225
Figure FDA00033885638600000226
式中,λ是系数,I是用户集合,|I|为用户数量。
4.如权利要求2所述的节点和元路径对比学习增强的推荐方法,其特征在于,将所述项目节点嵌入
Figure FDA0003388563860000031
和所述项目元路径视图
Figure FDA0003388563860000032
输入元路径视图编码器中,获取所述项目元路径视图
Figure FDA0003388563860000033
上的节点嵌入
Figure FDA0003388563860000034
Figure FDA0003388563860000035
Figure FDA0003388563860000036
投影到同一向量空间中,计算项目侧对比损失
Figure FDA0003388563860000037
具体为:
定义:
Figure FDA0003388563860000038
式中,
Figure FDA0003388563860000039
是节点j在
Figure FDA00033885638600000310
上的一组相邻节点,dj和dj′分别是节点j和j′的度,
Figure FDA00033885638600000311
是节点j的邻域节点j′的项目节点嵌入;
根据所述用户元路径视图
Figure FDA00033885638600000312
生成列表Sv,
Figure FDA00033885638600000313
式中,
Figure FDA00033885638600000314
表示节点j与
Figure FDA00033885638600000315
中的第n个相邻节点j′的共同交互用户的个数;
将列表Sv按降序排序,生成列表Sv′,设置一个超参数Tposv,如果|Sv′|>Tposv,我们从Sv′中选择第一个Tposv节点作为节点j的正样本,否则对Sv′中的所有节点视为正样本,并将节点j的正样本节点集标记为
Figure FDA00033885638600000316
将节点i的负样本节点集标记为
Figure FDA00033885638600000317
使用相同的非线性变换将
Figure FDA00033885638600000318
Figure FDA00033885638600000319
投影到同一向量空间中,其中,
Figure FDA00033885638600000320
Figure FDA00033885638600000321
式中,W是权重矩阵,b是常数,
Figure FDA00033885638600000322
Figure FDA00033885638600000323
投影后的节点嵌入,
Figure FDA00033885638600000324
Figure FDA00033885638600000325
投影后的节点嵌入;
以用户-项目二部图
Figure FDA00033885638600000326
为主体计算对比损失
Figure FDA00033885638600000327
以项目元路径视图
Figure FDA00033885638600000328
为主体计算对比损失
Figure FDA00033885638600000329
其中,
Figure FDA00033885638600000330
Figure FDA00033885638600000331
式中,τ是温度参数;
计算项目侧对比损失
Figure FDA0003388563860000041
Figure FDA0003388563860000042
式中,λ是系数,J是项目集合,|J|为项目数量。
5.如权利要求2所述的节点和元路径对比学习增强的推荐方法,其特征在于,根据所述BPR损失
Figure FDA0003388563860000043
用户侧对比损失
Figure FDA0003388563860000044
和项目侧对比损失
Figure FDA0003388563860000045
计算推荐模型的整体损失
Figure FDA0003388563860000046
具体为:
计算推荐模型整体的对比损失
Figure FDA0003388563860000047
Figure FDA0003388563860000048
式中,wuser和witem是超参数,其分别控制了对用户侧对比损失和对项目侧对比损失的影响;
计算推荐模型的整体损失
Figure FDA0003388563860000049
Figure FDA00033885638600000410
6.如权利要求2所述的节点和元路径对比学习增强的推荐方法,其特征在于,所述推荐模型包括LightGCN、NGCF、NeuMF中的一种。
7.如权利要求2所述的节点和元路径对比学习增强的推荐方法及装置,其特征在于,所述元路径视图编码器包括GNN、GCN、GAT中的一种。
8.节点和元路径对比学习增强的推荐系统,其特征在于,包括:
获取模块,其用于获取待推荐用户与项目的历史交互记录一;
推荐模块,其用于将所述历史交互记录一输入训练好的推荐模型中,得到待推荐用户的推荐项目;其中,
所述训练好的推荐模型是由BPR损失、基于元路径的用户侧对比损失和基于元路径的项目侧对比损失,对推荐模型进行训练得到的。
9.电子设备,其特征在于,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行权利要求1-7中任一项所述的方法。
10.存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时,实现权利要求1-7中任一项所述的方法。
CN202111462320.5A 2021-12-02 2021-12-02 节点和元路径对比学习增强的推荐方法及系统 Pending CN114117232A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111462320.5A CN114117232A (zh) 2021-12-02 2021-12-02 节点和元路径对比学习增强的推荐方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111462320.5A CN114117232A (zh) 2021-12-02 2021-12-02 节点和元路径对比学习增强的推荐方法及系统

Publications (1)

Publication Number Publication Date
CN114117232A true CN114117232A (zh) 2022-03-01

Family

ID=80365947

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111462320.5A Pending CN114117232A (zh) 2021-12-02 2021-12-02 节点和元路径对比学习增强的推荐方法及系统

Country Status (1)

Country Link
CN (1) CN114117232A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115809364A (zh) * 2022-09-30 2023-03-17 北京百度网讯科技有限公司 对象推荐方法和模型训练方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150149484A1 (en) * 2013-11-22 2015-05-28 Here Global B.V. Graph-based recommendations service systems and methods
US20200250734A1 (en) * 2019-02-01 2020-08-06 Target Brands, Inc. Item recommendations using convolutions on weighted graphs
CN113190754A (zh) * 2021-05-11 2021-07-30 四川大学 一种基于异构信息网络表示学习的推荐方法
US11113745B1 (en) * 2020-04-03 2021-09-07 Verizon Media Inc. Neural contextual bandit based computational recommendation method and apparatus
CN113505294A (zh) * 2021-06-15 2021-10-15 黄萌 一种融合元路径的异质网络表示推荐算法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150149484A1 (en) * 2013-11-22 2015-05-28 Here Global B.V. Graph-based recommendations service systems and methods
US20200250734A1 (en) * 2019-02-01 2020-08-06 Target Brands, Inc. Item recommendations using convolutions on weighted graphs
US11113745B1 (en) * 2020-04-03 2021-09-07 Verizon Media Inc. Neural contextual bandit based computational recommendation method and apparatus
CN113190754A (zh) * 2021-05-11 2021-07-30 四川大学 一种基于异构信息网络表示学习的推荐方法
CN113505294A (zh) * 2021-06-15 2021-10-15 黄萌 一种融合元路径的异质网络表示推荐算法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李亚莹;: "基于异构信息网络表征学习的推荐方法", 现代计算机, no. 04, 5 February 2020 (2020-02-05) *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115809364A (zh) * 2022-09-30 2023-03-17 北京百度网讯科技有限公司 对象推荐方法和模型训练方法
CN115809364B (zh) * 2022-09-30 2023-12-08 北京百度网讯科技有限公司 对象推荐方法和模型训练方法

Similar Documents

Publication Publication Date Title
CN110119467B (zh) 一种基于会话的项目推荐方法、装置、设备及存储介质
CA3007853C (en) End-to-end deep collaborative filtering
CN109508419B (zh) 一种基于知识学习的推荐方法和系统
US10565518B2 (en) Collaborative feature learning from social media
CN112989064B (zh) 一种聚合知识图神经网络和自适应注意力的推荐方法
CN111684490A (zh) 动态对象实例检测、分割和结构映射的优化
CN112288042B (zh) 行为预测系统的更新方法及装置、存储介质和计算设备
CN111626832B (zh) 产品推荐方法、装置及计算机设备
CN111079532A (zh) 一种基于文本自编码器的视频内容描述方法
CN111670457A (zh) 动态对象实例检测、分割和结构映射的优化
CN112364204B (zh) 视频搜索方法、装置、计算机设备及存储介质
CN110032679B (zh) 一种基于层次注意力网络的动态新闻推荐的方法
CN110008377B (zh) 一种利用用户属性进行电影推荐的方法
WO2018145577A1 (zh) 表情推荐方法和装置
CN112733027A (zh) 一种基于局部和全局表示模型联合学习的混合推荐算法
CN114595383A (zh) 一种基于会话序列的海洋环境数据推荐方法及系统
CN115114542A (zh) 一种对象推荐方法、系统、训练方法、介质及计算机设备
CN114117232A (zh) 节点和元路径对比学习增强的推荐方法及系统
US20240037133A1 (en) Method and apparatus for recommending cold start object, computer device, and storage medium
CN117033754A (zh) 用于资源推送的模型处理方法、装置、设备、存储介质
CN112559905B (zh) 一种基于双模式注意力机制和社交相似度的会话推荐方法
CN117688390A (zh) 内容匹配方法、装置、计算机设备、存储介质和程序产品
CN114841765A (zh) 一种基于元路径邻域目标泛化的序列推荐方法
CN114493674A (zh) 一种广告点击率预测模型及方法
CN113449193A (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