CN114510642A - 基于异构信息网络的书籍推荐方法、系统及设备 - Google Patents

基于异构信息网络的书籍推荐方法、系统及设备 Download PDF

Info

Publication number
CN114510642A
CN114510642A CN202210148285.8A CN202210148285A CN114510642A CN 114510642 A CN114510642 A CN 114510642A CN 202210148285 A CN202210148285 A CN 202210148285A CN 114510642 A CN114510642 A CN 114510642A
Authority
CN
China
Prior art keywords
user
network
book
sub
embedded
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
Application number
CN202210148285.8A
Other languages
English (en)
Other versions
CN114510642B (zh
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.)
Chongqing University
Original Assignee
Chongqing University
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 Chongqing University filed Critical Chongqing University
Priority to CN202210148285.8A priority Critical patent/CN114510642B/zh
Publication of CN114510642A publication Critical patent/CN114510642A/zh
Application granted granted Critical
Publication of CN114510642B publication Critical patent/CN114510642B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9536Search customisation based on social or collaborative filtering
    • 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)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了基于异构信息网络的书籍推荐方法、系统及设备,方法包括:构建异构信息网络HIN,利用带评分约束的元路径将HIN转换为多层网络,采用图卷积网络生成用户和书籍的子嵌入表示,基于注意机制的非线性融合函数来融合子嵌入表示以生成最终的嵌入表示,基于损失函数,结合Adam算法进行网络训练,学习得到优化的参数,基于优化的参数,计算获得用户对书籍的预测评分,将预测评分值较高的书籍推荐给用户。本发明采用带有评分约束的元路径,通过元路径将HIN转换为多层网络,利用图卷积与注意力机制来生成用户和书籍的嵌入表示,计算获得用户对书籍的预测评分,从而从根源上解决了现有的提取HIN中的语义信息不够准确及推荐方法的准确率低下的问题。

Description

基于异构信息网络的书籍推荐方法、系统及设备
技术领域
本发明属于个性化推荐领域,具体涉及一种基于异构信息网络的信息推荐方法、系统及设备。
背景技术
互联网信息爆炸给用户带来了信息过载的问题。推荐系统旨在从海量的信息中找到用户感兴趣的项目(例如商品),可以在很大程度上解决信息过载问题。近年来,推荐系统越来越多地被应用于各种在线服务(如亚马逊、淘宝和Yelp)。在推荐系统中,用户对各种商品的偏好通常以评分的形式体现,存储在用户-商品评分矩阵中。评分预测是推荐系统的一个关键子任务,它试图从现有评分数据中预测未知或未观察到的评分,以便推荐系统根据预测的评分对用户进行商品推荐。用户-商品评分矩阵通常是稀疏的,传统的评分预测算法,如矩阵分解等,在评分数据稀疏时表现较差。相关研究发现,辅助数据(如社交网络、用户属性和物品属性)可以在一定程度上缓解数据稀疏性问题,提高评分预测的准确性。
异构信息网络(Heterogeneous Information Network,HIN)是将各种异构信息构建成具有不同类型的节点和边的网络,能够很好地用来对推荐系统中的各种辅助信息以及评分信息进行统一的建模。但是实际应用中的数据往往是不同类型的异构数据,现有手段不能很好对其进行建模和利用。例如,在图1中,用户、用户的属性、书籍及其属性被抽象为HIN中的不同类型的节点和边。现有的基于异构信息网络的评分预测技术是利用元路径等方式从HIN中提取语义信息,但是都没有利用元路径上的评分。例如,图1中的元路径“User-Book-User”表示阅读过同一本书的用户,反映了用户之间阅读记录的相似性,然而,这种语义相关性对于推荐书籍可能意义不是特别大。虽然user1和user2都阅读过book1和book2,但他们对book1和book2的评分差异很大,这表明他们对书籍的偏好可能完全不同。实际上,user1和user3的喜欢的书籍应该更相似,因为他们都对book1评分高,对book2评分低。
现有的基于异构信息网络的信息推荐方法中,目前存在问题有提取HIN中的语义信息不够准确,且在评分数据稀疏的情况下推荐方法的准确率低下。
因此,如何克服提取HIN中的语义信息不够准确,以及提高在评分数据稀疏的情况下信息推荐的准确性,是本领域亟待解决的问题。
发明内容
本发明的目的是针对现有技术的缺陷,提供一种基于异构信息网络的信息推荐方法、系统及设备。本发明采用带有评分约束的元路径,通过元路径将HIN转换为多层网络,利用图卷积与注意力机制来生成用户和书籍的嵌入表示,计算获得用户对书籍的预测评分,从而从根源上解决了现有的提取HIN中的语义信息不够准确及推荐方法的准确率低下的问题。
为了实现以上目的,本发明采用以下技术方案:本发明提出一种基于异构信息网络的信息推荐方法,具体包括:
S1、基于各用户对书籍的评分信息和辅助信息构建异构信息网络,并根据所述异构信息网络设计带评分约束的元路径;所述辅助信息包括用户所属组、用户名、书籍名称、书籍作者、书籍类型,所述评分约束指元路径连接序列中连接用户和书籍的边的权重相同;
S2、基于所述异构信息网络和所述带评分约束的元路径构建多层网络,具体包括:通过矩阵乘法,利用带评分约束的元路径将所述异构信息网络转换为多层网络,具体构建方法为:
S21、用ΦU表示以用户节点开始和结束的元路径集合,用ΦI表示以书籍节点开始和结束的元路径集合,其中
Figure BDA0003509511170000021
m和n分别表示两个集合中的元素数量;
S22、假设一条元路径为
Figure BDA0003509511170000022
其中
Figure BDA0003509511170000023
表示元路径中的一种节点类型;
Figure BDA0003509511170000024
Figure BDA0003509511170000025
之间的邻接矩阵可表示为
Figure BDA0003509511170000026
由该元路径转换而成的同构网络表示为GΦ,其邻接矩阵表示为MΦ;用户书籍评分矩阵被视为用户和书籍之间的邻接矩阵,表示为MUI,下标中的U表示用户,I表示书籍;
1)对于没有评分的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure BDA0003509511170000027
2)对于有评分的元路径,即元路径中包含用户和书籍之间的连接,我们首先将MUI按评分等级分解为若干个子矩阵,每个子矩阵中的元素计算方法为:
Figure BDA0003509511170000031
其中,MUI(i,j)表示MUI中的第i行,j列元素,k∈{1,2,..,r}表示具体的评分等级,MUI,k表示评分等级k对应的子邻接矩阵;
3)对于带约束的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure BDA0003509511170000032
其中,r表示总的评分等级数;
S23、通过上述方法,通过所述带评分约束的元路径,从异构信息网络中构造出多个语义不同的同构网络,按顶点类型将这些同构网络分为两个集合GU和GI,其中
Figure BDA0003509511170000033
所述GU和GI为构建所得的多层网络;
S3、利用并行的图卷积网络来生成用户和书籍的子嵌入表示,生成用户和书籍的子嵌入表示具体包括:
S31、对于所述多层网络GU和GI中的每一层,通过聚合每个节点在该层网络中邻居的子嵌入表示来表示其本身,具体的方式为:
Figure BDA0003509511170000034
Figure BDA0003509511170000035
其中,
Figure BDA0003509511170000036
表示用户类型节点u在第lu(lu∈{1,2,...,m},m为GU中总的网络层数)层网络中经过k层卷积层得到的子嵌入,
Figure BDA0003509511170000037
表示项目类型节点i在第li(li∈{1,2,...,n},n为GI中总的网络层数)层网络中经过k层卷积层得到的子嵌入,k∈{1,2,...,K}表示当前卷积层数,K表示总卷积层数,lu和li分别表示多层网络GU和GI中的第lu和第li层同构网络,g表示聚合函数,u,i为节点编号,Ni,l表示项目节点i在第li层同构网络中的邻居节点集合,
Figure BDA0003509511170000041
表示用户节点u在第lu层同构网络中的邻居节点集合;
Figure BDA0003509511170000042
Figure BDA0003509511170000043
为初始的输入,通过一个查找层得到;
对于聚合函数g,本方法采用:
Figure BDA0003509511170000044
Figure BDA0003509511170000045
其中mean表示取平均值,f为激活函数ReLU,
Figure BDA0003509511170000046
表示属于用户的在第lu层同构网络的第k层聚合过程中的可训练的权重矩阵,
Figure BDA0003509511170000047
表示属于项目的在第li层同构网络的第k层聚合过程中的可训练的权重矩阵;
Figure BDA0003509511170000048
Figure BDA0003509511170000049
分别表示用户和项目图卷积网络的最后一层输出,即节点的最终子嵌入,为了简便采用
Figure BDA00035095111700000410
Figure BDA00035095111700000411
表示;
S32、对于用户多层网络GU,得到一组用户子嵌入表示
Figure BDA00035095111700000412
对于用户多层网络GI,得到一组用户子嵌入表示
Figure BDA00035095111700000413
不同的子嵌入表示包含不同类型的语义信息;
S4、基于注意机制的非线性融合函数来融合所述子嵌入表示以生成最终的用户嵌入表示和书籍嵌入表示,生成最终的用户嵌入表示和书籍嵌入表示的具体步骤包括:
S41、采用注意力机制将各层同构网络的子表示融合为一个表示:
Figure BDA0003509511170000051
Figure BDA0003509511170000052
其中,
Figure BDA0003509511170000053
Figure BDA0003509511170000054
分别为用户节点u和书籍节点i融合各个子嵌入表示后的嵌入表示,
Figure BDA0003509511170000055
Figure BDA0003509511170000056
分别表示用户节点u和书籍节点i在GU和GI的第l层网络子嵌入的融合注意力系数;
所述注意力系数的计算方式为:
Figure BDA0003509511170000057
Figure BDA0003509511170000058
其中,上标U和I表示参数属于用户或项目,T表示转置运算,a为可训练的注意力向量,Wa为注意力层可训练的参数矩阵,ba为可训练的偏置向量;
S42、每个节点的最终嵌入表示为:
Figure BDA0003509511170000059
Figure BDA00035095111700000510
其中,e表示最终嵌入表示,q为基础嵌入表示,由查找层获得,Wc为可训练的权重矩阵,bc为可训练的偏置矩阵,ReLU为激活函数,λ为决定辅助信息重要性的系数,CONCAT为拼接操作;
S43、基于每个节点的最终嵌入表示,得到用户嵌入表示集合eU和书籍嵌入表示集合eI
S5、基于损失函数,采用小批量采样结合Adam优化算法进行网络训练,学习得到优化的参数;优化的参数包括多层网络的子嵌入表示
Figure BDA0003509511170000061
Figure BDA0003509511170000062
所有权重矩阵和偏置向量、基础嵌入
Figure BDA0003509511170000063
Figure BDA0003509511170000064
所述损失函数为:
Figure BDA0003509511170000065
其中,L表示损失,Sb表示批量采样集合,ru,i表示真实评分,
Figure BDA0003509511170000066
表示用户u对项目i的预测评分;
所述用户对书籍的预测评分的具体计算方式为:,
Figure BDA0003509511170000067
其中
Figure BDA0003509511170000068
表示用户u对书籍i的预测评分,
Figure BDA0003509511170000069
表示用户u的嵌入表示,
Figure BDA00035095111700000610
表示书籍i的嵌入表示,
Figure BDA00035095111700000611
表示用户u的评分偏置项,
Figure BDA00035095111700000612
表示书籍i的评分偏置项;
S6、基于训练得到的参数,对于任一用户,根据上述预测评分的具体计算方式计算获得用户对书籍的预测评分,根据所述预测评分,将预测评分值较高的书籍推荐给用户。
本发明提出一种基于异构信息网络的书籍推荐系统,其特征在于,包括:异构信息网络以及元路径构建模块,基于各用户对书籍的评分信息和辅助信息构建异构信息网络,并根据所述异构信息网络设计带评分约束的元路径;所述辅助信息包括用户所属组、用户名、书籍名称、书籍作者、书籍类型,所述评分约束指元路径连接序列中连接用户和书籍的边的权重相同;
多层网络构建模块,基于所述异构信息网络和所述带评分约束的元路径构建多层网络,具体包括:通过矩阵乘法,利用带评分约束的元路径将所述异构信息网络转换为多层网络,具体构建方法为:
S21、用ΦU表示以用户节点开始和结束的元路径集合,用ΦI表示以书籍节点开始和结束的元路径集合,其中
Figure BDA00035095111700000613
m和n分别表示两个集合中的元素数量;
S22、假设一条元路径为
Figure BDA00035095111700000614
其中
Figure BDA00035095111700000615
表示元路径中的一种节点类型;
Figure BDA00035095111700000616
Figure BDA00035095111700000617
之间的邻接矩阵可表示为
Figure BDA00035095111700000618
由该元路径转换而成的同构网络表示为GΦ,其邻接矩阵表示为MΦ;用户书籍评分矩阵被视为用户和书籍之间的邻接矩阵,表示为MUI,下标中的U表示用户,I表示书籍;
2)对于没有评分的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure BDA00035095111700000619
2)对于有评分的元路径,即元路径中包含用户和书籍之间的连接,我们首先将MUI按评分等级分解为若干个子矩阵,每个子矩阵中的元素计算方法为:
Figure BDA0003509511170000071
其中,MUI(i,j)表示MUI中的第i行,j列元素,k∈{1,2,..,r}表示具体的评分等级,MUI,k表示评分等级k对应的子邻接矩阵;
3)对于带约束的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure BDA0003509511170000072
其中,r表示总的评分等级数;
S23、通过上述方法,通过所述带评分约束的元路径,从异构信息网络中构造出多个语义不同的同构网络,按顶点类型将这些同构网络分为两个集合GU和GI,其中
Figure BDA0003509511170000073
所述GU和GI为构建所得的多层网络;
子嵌入表示生成模块,利用并行的图卷积网络来生成用户和书籍的子嵌入表示,生成用户和书籍的子嵌入表示具体包括:
S31、对于所述多层网络GU和GI中的每一层,通过聚合每个节点在该层网络中邻居的子嵌入表示来表示其本身,具体的方式为:
Figure BDA0003509511170000074
Figure BDA0003509511170000075
其中,
Figure BDA0003509511170000076
表示用户类型节点u在第lu(lu∈{1,2,...,m},m为GU中总的网络层数)层网络中经过k层卷积层得到的子嵌入,
Figure BDA0003509511170000077
表示项目类型节点i在第li(li∈{1,2,...,n},n为GI中总的网络层数)层网络中经过k层卷积层得到的子嵌入,k∈{1,2,...,K}表示当前卷积层数,K表示总卷积层数,lu和li分别表示多层网络GU和GI中的第lu和第li层同构网络,g表示聚合函数,u,i为节点编号,Ni,l表示项目节点i在第li层同构网络中的邻居节点集合,
Figure BDA0003509511170000081
表示用户节点u在第lu层同构网络中的邻居节点集合;
Figure BDA0003509511170000082
Figure BDA0003509511170000083
为初始的输入,通过一个查找层得到;
对于聚合函数g,本方法采用:
Figure BDA0003509511170000084
Figure BDA0003509511170000085
其中mean表示取平均值,f为激活函数ReLU,
Figure BDA0003509511170000086
表示属于用户的在第lu层同构网络的第k层聚合过程中的可训练的权重矩阵,
Figure BDA0003509511170000087
表示属于项目的在第li层同构网络的第k层聚合过程中的可训练的权重矩阵;
Figure BDA0003509511170000088
Figure BDA0003509511170000089
分别表示用户和项目图卷积网络的最后一层输出,即节点的最终子嵌入,为了简便采用
Figure BDA00035095111700000810
Figure BDA00035095111700000811
表示;
S32、对于用户多层网络GU,得到一组用户子嵌入表示
Figure BDA00035095111700000812
对于用户多层网络GI,得到一组用户子嵌入表示
Figure BDA00035095111700000813
不同的子嵌入表示包含不同类型的语义信息;
最终嵌入表示生成模块,基于注意机制的非线性融合函数来融合所述子嵌入表示以生成最终的用户嵌入表示和书籍嵌入表示,生成最终的用户嵌入表示和书籍嵌入表示的具体步骤包括:
S41、采用注意力机制将各层同构网络的子表示融合为一个表示:
Figure BDA0003509511170000091
Figure BDA0003509511170000092
其中,
Figure BDA0003509511170000093
Figure BDA0003509511170000094
分别为用户节点u和书籍节点i融合各个子嵌入表示后的嵌入表示,
Figure BDA0003509511170000095
Figure BDA0003509511170000096
分别表示用户节点u和书籍节点i在GU和GI的第l层网络子嵌入的融合注意力系数;
所述注意力系数的计算方式为:
Figure BDA0003509511170000097
Figure BDA0003509511170000098
其中,上标U和I表示参数属于用户或项目,T表示转置运算,a为可训练的注意力向量,Wa为注意力层可训练的参数矩阵,ba为可训练的偏置向量;
S42、每个节点的最终嵌入表示为:
Figure BDA0003509511170000099
Figure BDA00035095111700000910
其中,e表示最终嵌入表示,q为基础嵌入表示,由查找层获得,Wc为可训练的权重矩阵,bc为可训练的偏置矩阵,ReLU为激活函数,λ为决定辅助信息重要性的系数,CONCAT为拼接操作;
S43、基于每个节点的最终嵌入表示,得到用户嵌入表示集合eU和书籍嵌入表示集合eI
参数训练模块,基于损失函数,采用小批量采样结合Adam优化算法进行网络训练,学习得到优化的参数;优化的参数包括多层网络的子嵌入表示
Figure BDA00035095111700000911
Figure BDA00035095111700000912
所有权重矩阵和偏置向量、基础嵌入
Figure BDA00035095111700000913
Figure BDA00035095111700000914
所述损失函数为:
Figure BDA0003509511170000101
其中,L表示损失,Sb表示批量采样集合,ru,i表示真实评分,
Figure BDA0003509511170000102
表示用户u对项目i的预测评分;
所述用户对书籍的预测评分的具体计算方式为:,
Figure BDA0003509511170000103
其中
Figure BDA0003509511170000104
表示用户u对书籍i的预测评分,
Figure BDA0003509511170000105
表示用户u的嵌入表示,
Figure BDA0003509511170000106
表示书籍i的嵌入表示,
Figure BDA0003509511170000107
表示用户u的评分偏置项,
Figure BDA0003509511170000108
表示书籍i的评分偏置项;
推荐模块,基于训练得到的参数,对于任一用户,根据上述预测评分的具体计算方式计算获得用户对书籍的预测评分,根据所述预测评分,将预测评分值较高的书籍推荐给用户。
本发明还提出一种计算机设备,所述设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本发明公开的一种基于异构信息网络的信息推荐方法、系统及设备,与现有技术相比,具有如下优点:
1、本发明的信息推荐方法将评分数据以及辅助信息数据抽象为异构信息网络,并为该异构信息网络设计了带评分约束的元路径,能够更加准确地提取异构信息网络中的语义信息,更好地发现用户之间的相似性。
2、本发明利用带评分约束的元路径将异构信息网络转换为多层网络,将从异构信息网络中提取所有语义信息的问题转换为了分别从多个同构网络中提取语义信息,降低了问题的难度;其次,将同构网络中具有用户类型或书籍类型的节点嵌入到同一个向量空间中,从而避免学习其他类型节点的表示,且在不同的同构网络中,每个节点都可以有不同的嵌入表示(对应于不同的元路径)。
3、本发明利用并行的图卷积网络生成用户和书籍的子嵌入表示,来学习到由元路径提取的同构图的结构特征,基于注意机制的非线性融合函数来融合子嵌入表示以生成最终的嵌入表示,以区分不同元路径的作用,解决了在评分数据稀疏的情况下推荐方法的准确率低下的问题。
4、本发明基于损失函数,采用小批量采样结合Adam优化算法进行网络训练,学习得到优化的参数,基于优化参数,计算获得用户对书籍的预测评分,根据预测评分值较高的书籍推荐给用户,提升了推荐方法的准确性。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为异构信息网络示例图。
图2为本发明实施例提供的基于异构信息网络的书籍推荐方法示意图。
图3为本发明实施例提供的基于异构信息网络的书籍推荐方法框架图。
图4为本发明实施例提供的构造多层网络示意图。
图5本发明实施例提供的基于异构信息网络的书籍推荐系统示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本发明一种基于异构信息网络的书籍推荐方法。如图2所示,基于异构信息网络的书籍推荐方法包括以下步骤S1至S6,此外,基于异构信息网络的书籍推荐方法的框架图如图3所示。
S1、基于各用户对书籍的评分信息和辅助信息构建异构信息网络,并根据所述异构信息网络设计带评分约束的元路径;所述辅助信息包括用户所属组、用户名、书籍名称、书籍作者、书籍类型,所述评分约束指元路径连接序列中连接用户和书籍的边的权重相同。
异构信息网络中节点之间的关系有多种类型,其中一些可以用节点之间的直接连接来表示。但是,有很多关系不能通过直接的连接来反映。元路径提供了一种方法来提取节点之间的多种类型的关系。通过给定的路径连接的两个节点被认为以某种方式相互关联。
本方法基于元路径设计了一种能够更加准确提取用户之间对物品偏好关系的算法。传统的元路径没有考虑路径上的评分,可能导致对同一物品有不同评分的用户被同一类型的元路径关联起来,忽略了用户对物品的喜好。因此,本方法在在元路径中加入了评分限制策略,即元路径连接序列中的评分(即连接用户和物品的边的权重)必须相同,来保证一条由元路径连接的序列中,用户对物品的喜好程度是一样的,从而更好地发现用户之间的相似性。
S2、基于所述异构信息网络和所述带评分约束的元路径构建多层网络,具体包括:通过矩阵乘法,利用带评分约束的元路径将所述异构信息网络转换为多层网络。
元路径反映了路径两端节点之间的某种关系。我们可以将元路径两端的节点称为元路径下的共现节点对。元路径下的所有同现对可以形成一个同构网络,其中的边表示对象之间的同一类型关系。构造同构网络有两个好处。首先,我们可以很容易地将同构网络中具有用户类型或项目类型的节点嵌入到同一个向量空间中,从而避免学习其他类型节点的表示。其次,在不同的同构网络中,每个节点都可以有不同的嵌入表示(对应于不同的元路径),这样,将从HIN中提取所有语义信息的问题转换为了分别从多个同构网络中提取语义信息,降低了问题的难度。
具体构建方法为:
S21、用ΦU表示以用户节点开始和结束的元路径集合,用ΦI表示以书籍节点开始和结束的元路径集合,其中
Figure BDA0003509511170000131
m和n分别表示两个集合中的元素数量;
S22、假设一条元路径为
Figure BDA0003509511170000132
其中
Figure BDA0003509511170000133
表示元路径中的一种节点类型;
Figure BDA0003509511170000134
Figure BDA0003509511170000135
之间的邻接矩阵可表示为
Figure BDA0003509511170000136
由该元路径转换而成的同构网络表示为GΦ,其邻接矩阵表示为MΦ;用户书籍评分矩阵被视为用户和书籍之间的邻接矩阵,表示为MUI,下标中的U表示用户,I表示书籍;
1)对于没有评分的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure BDA0003509511170000137
2)对于有评分的元路径,即元路径中包含用户和项目之间的连接,我们首先将MUI按评分等级分解为若干个子矩阵,每个子矩阵中的元素计算方法为:
Figure BDA0003509511170000138
其中,MUI(i,j)表示MUI中的第i行,j列元素,k∈{1,2,..,r}表示具体的评分等级,MUI,k表示评分等级k对应的子邻接矩阵;
3)对于带约束的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure BDA0003509511170000139
其中,r表示总的评分等级数;
S23、通过上述方法,通过所述带评分约束的元路径,从异构信息网络中构造出多个语义不同的同构网络,按顶点类型将这些同构网络分为两个集合GU和GI,其中
Figure BDA00035095111700001310
所述GU和GI为构建所得的多层网络,具体如图4所示;
S3、利用并行的图卷积网络来生成用户和书籍的子嵌入表示;
由上述步骤S2,我们通过元路径得到了GU和GI,他们中的每个同构网络的拓扑结构就包含了对应的元路径所提取的语义信息。
传统的基于网络拓扑的推荐算法通常分为两步:一是通过deepwalk等图嵌入算法为网络中的节点生成向量表示;二是将一中产生的向量表示作为预测模型的输入,进行评分预测模型的训练。这两个步骤是分开训练的,而近几年大量研究表明端到端的训练方式的效果要明显优于这种方式。
图卷积网络(Graph Convolution Network,GCN)既能够学习到网络的拓扑结构,又能很容易地设计为端到端的训练模式。因此,为了能够学习到由元路径提取的同构图的结构特征并提高最终的预测效果,我们利用了并行的图卷积来生成每个节点在单层网络中的子嵌入表示。下面以计算用户网络嵌入表示为例,生成用户的子嵌入表示的步骤具体包括:
S31、对于所述多层网络GU和GI中的每一层,通过聚合每个节点在该层网络中邻居的子嵌入表示来表示其本身,具体的方式为:
Figure BDA0003509511170000141
Figure BDA0003509511170000142
其中,
Figure BDA0003509511170000143
表示用户类型节点u在第lu(lu∈{1,2,...,m},m为GU中总的网络层数)层网络中经过k层卷积层得到的子嵌入,
Figure BDA0003509511170000144
表示项目类型节点i在第li(li∈{1,2,...,n},n为GI中总的网络层数)层网络中经过k层卷积层得到的子嵌入,k∈{1,2,...,K}表示当前卷积层数,K表示总卷积层数,lu和li分别表示多层网络GU和GI中的第lu和第li层同构网络,g表示聚合函数,u,i为节点编号,Ni,l表示项目节点i在第li层同构网络中的邻居节点集合,
Figure BDA0003509511170000145
表示用户节点u在第lu层同构网络中的邻居节点集合;
Figure BDA0003509511170000151
Figure BDA0003509511170000152
为初始的输入,通过一个查找层得到;
对于聚合函数g,本方法采用:
Figure BDA0003509511170000153
Figure BDA0003509511170000154
其中mean表示取平均值,f为激活函数ReLU,
Figure BDA0003509511170000155
表示属于用户的在第lu层同构网络的第k层聚合过程中的可训练的权重矩阵,
Figure BDA0003509511170000156
表示属于项目的在第li层同构网络的第k层聚合过程中的可训练的权重矩阵;
Figure BDA0003509511170000157
Figure BDA0003509511170000158
分别表示用户和项目图卷积网络的最后一层输出,即节点的最终子嵌入,为了简便采用
Figure BDA0003509511170000159
Figure BDA00035095111700001510
表示;
S32、对于用户多层网络GU,得到一组用户子嵌入表示
Figure BDA00035095111700001511
对于用户多层网络GI,得到一组用户子嵌入表示
Figure BDA00035095111700001512
不同的子嵌入表示包含不同类型的语义信息;
S4、基于注意机制的非线性融合函数来融合所述子嵌入表示以生成最终的用户嵌入表示和书籍嵌入表示,如图3所示。
为了区分不同元路径的作用,我们利用注意力机制来融合不同的子嵌入。生成最终的用户嵌入表示的具体步骤包括:
S41、采用注意力机制将各层同构网络的子表示融合为一个表示:
Figure BDA0003509511170000161
Figure BDA0003509511170000162
其中,
Figure BDA0003509511170000163
Figure BDA0003509511170000164
分别为用户节点u和书籍节点i融合各个子嵌入表示后的嵌入表示,
Figure BDA0003509511170000165
Figure BDA0003509511170000166
分别表示用户节点u和书籍节点i在GU和GI的第l层网络子嵌入的融合注意力系数;
所述注意力系数的计算方式为:
Figure BDA0003509511170000167
Figure BDA0003509511170000168
其中,上标U和I表示参数属于用户或项目,T表示转置运算,a为可训练的注意力向量,Wa为注意力层可训练的参数矩阵,ba为可训练的偏置向量;
S42、每个节点的最终嵌入表示为:
Figure BDA0003509511170000169
Figure BDA00035095111700001610
其中,e表示最终嵌入表示,q为基础嵌入表示,由查找层获得,Wc为可训练的权重矩阵,bc为可训练的偏置矩阵,ReLU为激活函数,λ为决定辅助信息重要性的系数,CONCAT为拼接操作;
S43、基于每个节点的最终嵌入表示,得到用户嵌入表示集合eU和书籍嵌入表示集合eI
S5、基于损失函数,采用小批量采样结合Adam优化算法进行网络训练,学习得到优化的参数;优化的参数包括多层网络的子嵌入表示
Figure BDA00035095111700001611
Figure BDA00035095111700001612
所有权重矩阵和偏置向量、基础嵌入
Figure BDA00035095111700001613
Figure BDA00035095111700001614
所述损失函数为:
Figure BDA00035095111700001615
其中,L表示损失,Sb表示批量采样集合,rui表示真实评分,
Figure BDA0003509511170000171
表示用户u对项目i的预测评分;
所述用户对书籍的预测评分的具体计算方式为:,
Figure BDA0003509511170000172
其中
Figure BDA0003509511170000173
表示用户u对书籍i的预测评分,
Figure BDA0003509511170000174
表示用户u的嵌入表示,
Figure BDA0003509511170000175
表示书籍i的嵌入表示,
Figure BDA0003509511170000176
表示用户u的评分偏置项,
Figure BDA0003509511170000177
表示书籍i的评分偏置项;
网络模型训练属于直推模型,其中向量
Figure BDA0003509511170000178
Figure BDA0003509511170000179
都是经过随机初始化得到,需要经过模型训练后,才能得到较好的嵌入表示。但直推模型不能很好地解决冷启动问题,即对于推荐系统中新出现的用户和项目,由于他们的历史评分数据缺失(或较少),嵌入表示没有得到较好地训练,所以预测效果不佳。因此,为了解决冷启动问题,我们将上述模型扩展为一个归纳式的模型。
我们将基础嵌入q定义为节点的属性向量x的映射:
Figure BDA00035095111700001710
Figure BDA00035095111700001711
其中
Figure BDA00035095111700001712
Figure BDA00035095111700001713
分别表示用户u和项目i的基础嵌入表示,
Figure BDA00035095111700001714
Figure BDA00035095111700001715
分别表示用户u和项目i的属性向量,fU和fI分别表示用户和项目的基础嵌入映射函数,可以设置为多层感知机。
类似地,对于
Figure BDA00035095111700001716
Figure BDA00035095111700001717
也可以通过映射函数得到:
Figure BDA00035095111700001718
Figure BDA00035095111700001719
其中,
Figure BDA00035095111700001720
Figure BDA00035095111700001721
分别表示GU中的第lu层网络和GI中的第li层网络中节点的映射函数。于是归纳模型的用户和项目的最终嵌入表示为:
Figure BDA00035095111700001722
Figure BDA00035095111700001723
优化的参数包括多层网络的子嵌入表示
Figure BDA00035095111700001724
Figure BDA00035095111700001725
所有权重矩阵和偏置向量、基础嵌入
Figure BDA00035095111700001726
Figure BDA00035095111700001727
对于归纳式,需要优化的参数包括上述公式中的多层网络子嵌入的映射函数
Figure BDA0003509511170000181
Figure BDA0003509511170000182
的参数,所有权重矩阵和偏置向量(W和b),基础嵌入映射函数fU和fI的参数等。反向传播梯度以及优化等过程可由pytorch、tensorflow等框架自动完成。
S6、基于训练得到的参数,对于任一用户,根据上述预测评分的具体计算方式计算获得用户对书籍的预测评分,根据所述预测评分,将预测评分值较高的书籍推荐给用户。
图5是本发明实施例提供的一种基于异构信息网络的书籍推荐系统。如图5所示,该基于异构信息网络的书籍推荐系统包括异构信息网络以及元路径构建模块、多层网络构建模块、子嵌入表示生成模块、最终嵌入表示生成模块、参数训练模块、推荐模块。
异构信息网络以及元路径构建模块,基于各用户对书籍的评分信息和辅助信息构建异构信息网络,并根据所述异构信息网络设计带评分约束的元路径;所述辅助信息包括用户所属组、用户名、书籍名称、书籍作者、书籍类型,所述评分约束指元路径连接序列中连接用户和书籍的边的权重相同;
多层网络构建模块,基于所述异构信息网络和所述带评分约束的元路径构建多层网络,具体包括:通过矩阵乘法,利用带评分约束的元路径将所述异构信息网络转换为多层网络,具体构建方法为:
S21、用ΦU表示以用户节点开始和结束的元路径集合,用ΦI表示以书籍节点开始和结束的元路径集合,其中
Figure BDA0003509511170000183
m和n分别表示两个集合中的元素数量;
S22、假设一条元路径为
Figure BDA0003509511170000184
其中
Figure BDA0003509511170000185
表示元路径中的一种节点类型;
Figure BDA0003509511170000186
Figure BDA0003509511170000187
之间的邻接矩阵可表示为
Figure BDA0003509511170000188
由该元路径转换而成的同构网络表示为GΦ,其邻接矩阵表示为MΦ;用户书籍评分矩阵被视为用户和书籍之间的邻接矩阵,表示为MUI,下标中的U表示用户,I表示书籍;
3)对于没有评分的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure BDA0003509511170000189
2)对于有评分的元路径,即元路径中包含用户和书籍之间的连接,我们首先将MUI按评分等级分解为若干个子矩阵,每个子矩阵中的元素计算方法为:
Figure BDA0003509511170000191
其中,MUI(i,j)表示MUI中的第i行,j列元素,k∈{1,2,..,r}表示具体的评分等级,MUI,k表示评分等级k对应的子邻接矩阵;
3)对于带约束的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure BDA0003509511170000192
其中,r表示总的评分等级数;
S23、通过上述方法,通过所述带评分约束的元路径,从异构信息网络中构造出多个语义不同的同构网络,按顶点类型将这些同构网络分为两个集合GU和GI,其中
Figure BDA0003509511170000193
所述GU和GI为构建所得的多层网络;
子嵌入表示生成模块,利用并行的图卷积网络来生成用户和书籍的子嵌入表示,生成用户和书籍的子嵌入表示具体包括:
S31、对于所述多层网络GU和GI中的每一层,通过聚合每个节点在该层网络中邻居的子嵌入表示来表示其本身,具体的方式为:
Figure BDA0003509511170000194
Figure BDA0003509511170000195
其中,
Figure BDA0003509511170000196
表示用户类型节点u在第lu(lu∈{1,2,...,m},m为GU中总的网络层数)层网络中经过k层卷积层得到的子嵌入,
Figure BDA0003509511170000197
表示项目类型节点i在第li(li∈{1,2,...,n},n为GI中总的网络层数)层网络中经过k层卷积层得到的子嵌入,k∈{1,2,...,K}表示当前卷积层数,K表示总卷积层数,lu和li分别表示多层网络GU和GI中的第lu和第li层同构网络,g表示聚合函数,u,i为节点编号,Ni,l表示项目节点i在第li层同构网络中的邻居节点集合,
Figure BDA0003509511170000201
表示用户节点u在第lu层同构网络中的邻居节点集合;
Figure BDA0003509511170000202
Figure BDA0003509511170000203
为初始的输入,通过一个查找层得到;
对于聚合函数g,本方法采用:
Figure BDA0003509511170000204
Figure BDA0003509511170000205
其中mean表示取平均值,f为激活函数ReLU,
Figure BDA0003509511170000206
表示属于用户的在第lu层同构网络的第k层聚合过程中的可训练的权重矩阵,
Figure BDA0003509511170000207
表示属于项目的在第li层同构网络的第k层聚合过程中的可训练的权重矩阵;
Figure BDA0003509511170000208
Figure BDA0003509511170000209
分别表示用户和项目图卷积网络的最后一层输出,即节点的最终子嵌入,为了简便采用
Figure BDA00035095111700002010
Figure BDA00035095111700002011
表示;
S32、对于用户多层网络GU,得到一组用户子嵌入表示
Figure BDA00035095111700002012
对于用户多层网络GI,得到一组用户子嵌入表示
Figure BDA00035095111700002013
不同的子嵌入表示包含不同类型的语义信息;
最终嵌入表示生成模块,基于注意机制的非线性融合函数来融合所述子嵌入表示以生成最终的用户嵌入表示和书籍嵌入表示,生成最终的用户嵌入表示和书籍嵌入表示的具体步骤包括:
S41、采用注意力机制将各层同构网络的子表示融合为一个表示:
Figure BDA0003509511170000211
Figure BDA0003509511170000212
其中,
Figure BDA0003509511170000213
Figure BDA0003509511170000214
分别为用户节点u和书籍节点i融合各个子嵌入表示后的嵌入表示,
Figure BDA0003509511170000215
Figure BDA0003509511170000216
分别表示用户节点u和书籍节点i在GU和GI的第l层网络子嵌入的融合注意力系数;
所述注意力系数的计算方式为:
Figure BDA0003509511170000217
Figure BDA0003509511170000218
其中,上标U和I表示参数属于用户或项目,T表示转置运算,a为可训练的注意力向量,Wa为注意力层可训练的参数矩阵,ba为可训练的偏置向量;
S42、每个节点的最终嵌入表示为:
Figure BDA0003509511170000219
Figure BDA00035095111700002110
其中,e表示最终嵌入表示,q为基础嵌入表示,由查找层获得,Wc为可训练的权重矩阵,bc为可训练的偏置矩阵,ReLU为激活函数,λ为决定辅助信息重要性的系数,CONCAT为拼接操作;
S43、基于每个节点的最终嵌入表示,得到用户嵌入表示集合eU和书籍嵌入表示集合eI
参数训练模块,基于损失函数,采用小批量采样结合Adam优化算法进行网络训练,学习得到优化的参数;优化的参数包括多层网络的子嵌入表示
Figure BDA00035095111700002111
Figure BDA00035095111700002112
所有权重矩阵和偏置向量、基础嵌入
Figure BDA00035095111700002113
Figure BDA00035095111700002114
所述损失函数为:
Figure BDA00035095111700002115
其中,L表示损失,Sb表示批量采样集合,ru,i表示真实评分,
Figure BDA0003509511170000221
表示用户u对项目i的预测评分;
所述用户对书籍的预测评分的具体计算方式为:,
Figure BDA0003509511170000222
其中
Figure BDA0003509511170000223
表示用户u对书籍i的预测评分,
Figure BDA0003509511170000224
表示用户u的嵌入表示,
Figure BDA0003509511170000225
表示书籍i的嵌入表示,
Figure BDA0003509511170000226
表示用户u的评分偏置项,
Figure BDA0003509511170000227
表示书籍i的评分偏置项;
推荐模块,基于训练得到的参数,对于任一用户,根据上述预测评分的具体计算方式计算获得用户对书籍的预测评分,根据所述预测评分,将预测评分值较高的书籍推荐给用户。
上述基于异构信息网络的书籍推荐系统可以实现为一种计算机程序的形式,该计算机程序可以在计算机设备上运行。
该计算机设备可以是服务器,其中,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
计算机设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括非易失性存储介质和内存储器。
该非易失性存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行一种基于异构信息网络的书籍推荐方法。
该处理器用于提供计算和控制能力,以支撑整个计算机设备的运行。
该内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行一种基于异构信息网络的书籍推荐方法。
该网络接口用于与其它设备进行网络通信。本领域技术人员可以理解,上述计算机设备结构仅仅是与本申请方案相关的部分结构,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器用于运行存储在存储器中的计算机程序,该程序实现实施例一所述的基于异构信息网络的书籍推荐方法。
应当理解,在本申请实施例中,处理器可以是中央处理单元(Central ProcessingUnit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中该计算机程序被处理器执行时使处理器执行实施例一所述的一种基于异构信息网络的书籍推荐方法。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (3)

1.一种基于异构信息网络的书籍推荐方法,其特征在于,包括步骤:
S1、基于各用户对书籍的评分信息和辅助信息构建异构信息网络,并根据所述异构信息网络设计带评分约束的元路径;所述辅助信息包括用户所属组、用户名、书籍名称、书籍作者、书籍类型,所述评分约束指元路径连接序列中连接用户和书籍的边的权重相同;
S2、基于所述异构信息网络和所述带评分约束的元路径构建多层网络,具体包括:通过矩阵乘法,利用带评分约束的元路径将所述异构信息网络转换为多层网络,具体构建方法为:
S21、用ΦU表示以用户节点开始和结束的元路径集合,用ΦI表示以书籍节点开始和结束的元路径集合,其中
Figure FDA0003509511160000011
m和n分别表示两个集合中的元素数量;
S22、假设一条元路径为
Figure FDA0003509511160000012
其中
Figure FDA0003509511160000013
表示元路径中的一种节点类型;
Figure FDA0003509511160000014
Figure FDA0003509511160000015
之间的邻接矩阵可表示为
Figure FDA0003509511160000016
由该元路径转换而成的同构网络表示为GΦ,其邻接矩阵表示为MΦ;用户书籍评分矩阵被视为用户和书籍之间的邻接矩阵,表示为MUI,下标中的U表示用户,I表示书籍;
1)对于没有评分的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure FDA0003509511160000017
2)对于有评分的元路径,即元路径中包含用户和书籍之间的连接,我们首先将MUI按评分等级分解为若干个子矩阵,每个子矩阵中的元素计算方法为:
Figure FDA0003509511160000018
其中,MUI(i,j)表示MUI中的第i行,j列元素,k∈{1,2,..,r}表示具体的评分等级,MUI,k表示评分等级k对应的子邻接矩阵;
3)对于带约束的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure FDA0003509511160000021
其中,r表示总的评分等级数;
S23、通过上述方法,通过所述带评分约束的元路径,从异构信息网络中构造出多个语义不同的同构网络,按顶点类型将这些同构网络分为两个集合GU和GI,其中
Figure FDA0003509511160000022
Figure FDA0003509511160000023
所述GU和GI为构建所得的多层网络;
S3、利用并行的图卷积网络来生成用户和书籍的子嵌入表示,生成用户和书籍的子嵌入表示具体包括:
S31、对于所述多层网络GU和GI中的每一层,通过聚合每个节点在该层网络中邻居的子嵌入表示来表示其本身,具体的方式为:
Figure FDA0003509511160000024
Figure FDA0003509511160000025
其中,
Figure FDA0003509511160000026
表示用户类型节点u在第lu(lu∈{1,2,...,m},m为GU中总的网络层数)层网络中经过k层卷积层得到的子嵌入,
Figure FDA0003509511160000027
表示项目类型节点i在第li(li∈{1,2,...,n},n为GI中总的网络层数)层网络中经过k层卷积层得到的子嵌入,k∈{1,2,...,K}表示当前卷积层数,K表示总卷积层数,lu和li分别表示多层网络GU和GI中的第lu和第li层同构网络,g表示聚合函数,u,i为节点编号,Ni,l表示项目节点i在第li层同构网络中的邻居节点集合,
Figure FDA0003509511160000028
表示用户节点u在第lu层同构网络中的邻居节点集合;
Figure FDA0003509511160000029
Figure FDA00035095111600000210
为初始的输入,通过一个查找层得到;
对于聚合函数g,本方法采用:
Figure FDA0003509511160000031
Figure FDA0003509511160000032
其中mean表示取平均值,f为激活函数ReLU,
Figure FDA0003509511160000033
表示属于用户的在第lu层同构网络的第k层聚合过程中的可训练的权重矩阵,
Figure FDA0003509511160000034
表示属于项目的在第li层同构网络的第k层聚合过程中的可训练的权重矩阵;
Figure FDA0003509511160000035
Figure FDA0003509511160000036
分别表示用户和项目图卷积网络的最后一层输出,即节点的最终子嵌入,为了简便采用
Figure FDA0003509511160000037
Figure FDA0003509511160000038
表示;
S32、对于用户多层网络GU,得到一组用户子嵌入表示
Figure FDA0003509511160000039
对于用户多层网络GI,得到一组用户子嵌入表示
Figure FDA00035095111600000310
不同的子嵌入表示包含不同类型的语义信息;
S4、基于注意机制的非线性融合函数来融合所述子嵌入表示以生成最终的用户嵌入表示和书籍嵌入表示,生成最终的用户嵌入表示和书籍嵌入表示的具体步骤包括:
S41、采用注意力机制将各层同构网络的子表示融合为一个表示:
Figure FDA00035095111600000311
Figure FDA00035095111600000312
其中,
Figure FDA00035095111600000313
Figure FDA00035095111600000314
分别为用户节点u和书籍节点i融合各个子嵌入表示后的嵌入表示,
Figure FDA00035095111600000315
Figure FDA00035095111600000316
分别表示用户节点u和书籍节点i在GU和GI的第l层网络子嵌入的融合注意力系数;
所述注意力系数的计算方式为:
Figure FDA0003509511160000041
Figure FDA0003509511160000042
其中,上标U和I表示参数属于用户或项目,T表示转置运算,a为可训练的注意力向量,Wa为注意力层可训练的参数矩阵,ba为可训练的偏置向量;
S42、每个节点的最终嵌入表示为:
Figure FDA0003509511160000043
Figure FDA0003509511160000044
其中,e表示最终嵌入表示,q为基础嵌入表示,由查找层获得,Wc为可训练的权重矩阵,bc为可训练的偏置矩阵,ReLU为激活函数,λ为决定辅助信息重要性的系数,CONCAT为拼接操作;
S43、基于每个节点的最终嵌入表示,得到用户嵌入表示集合eU和书籍嵌入表示集合eI
S5、基于损失函数,采用小批量采样结合Adam优化算法进行网络训练,学习得到优化的参数;优化的参数包括多层网络的子嵌入表示
Figure FDA0003509511160000045
Figure FDA0003509511160000046
所有权重矩阵和偏置向量、基础嵌入
Figure FDA0003509511160000047
Figure FDA0003509511160000048
所述损失函数为:
Figure FDA0003509511160000049
其中,L表示损失,Sb表示批量采样集合,ru,i表示真实评分,
Figure FDA00035095111600000410
表示用户u对项目i的预测评分;
所述用户对书籍的预测评分的具体计算方式为:,
Figure FDA00035095111600000411
其中
Figure FDA00035095111600000412
表示用户u对书籍i的预测评分,
Figure FDA00035095111600000413
表示用户u的嵌入表示,
Figure FDA00035095111600000414
表示书籍i的嵌入表示,
Figure FDA00035095111600000415
表示用户u的评分偏置项,
Figure FDA00035095111600000416
表示书籍i的评分偏置项;S6、基于训练得到的参数,对于任一用户,根据上述预测评分的具体计算方式计算获得用户对书籍的预测评分,根据所述预测评分,将预测评分值较高的书籍推荐给用户。
2.一种基于异构信息网络的书籍推荐系统,其特征在于,包括:
异构信息网络以及元路径构建模块,基于各用户对书籍的评分信息和辅助信息构建异构信息网络,并根据所述异构信息网络设计带评分约束的元路径;所述辅助信息包括用户所属组、用户名、书籍名称、书籍作者、书籍类型,所述评分约束指元路径连接序列中连接用户和书籍的边的权重相同;
多层网络构建模块,基于所述异构信息网络和所述带评分约束的元路径构建多层网络,具体包括:通过矩阵乘法,利用带评分约束的元路径将所述异构信息网络转换为多层网络,具体构建方法为:
S21、用ΦU表示以用户节点开始和结束的元路径集合,用ΦI表示以书籍节点开始和结束的元路径集合,其中
Figure FDA0003509511160000051
m和n分别表示两个集合中的元素数量;
S22、假设一条元路径为
Figure FDA0003509511160000052
其中
Figure FDA0003509511160000053
表示元路径中的一种节点类型;
Figure FDA0003509511160000054
Figure FDA0003509511160000055
之间的邻接矩阵可表示为
Figure FDA0003509511160000056
由该元路径转换而成的同构网络表示为GΦ,其邻接矩阵表示为MΦ;用户书籍评分矩阵被视为用户和书籍之间的邻接矩阵,表示为MUI,下标中的U表示用户,I表示书籍;
1)对于没有评分的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure FDA0003509511160000057
2)对于有评分的元路径,即元路径中包含用户和书籍之间的连接,我们首先将MUI按评分等级分解为若干个子矩阵,每个子矩阵中的元素计算方法为:
Figure FDA0003509511160000058
其中,MUI(i,j)表示MUI中的第i行,j列元素,k∈{1,2,..,r}表示具体的评分等级,MUI,k表示评分等级k对应的子邻接矩阵;
3)对于带约束的元路径,对应的同构网络的邻接矩阵计算方法为:
Figure FDA0003509511160000059
其中,r表示总的评分等级数;
S23、通过上述方法,通过所述带评分约束的元路径,从异构信息网络中构造出多个语义不同的同构网络,按顶点类型将这些同构网络分为两个集合GU和GI,其中
Figure FDA0003509511160000061
所述GU和GI为构建所得的多层网络;
子嵌入表示生成模块,利用并行的图卷积网络来生成用户和书籍的子嵌入表示,生成用户和书籍的子嵌入表示具体包括:
S31、对于所述多层网络GU和GI中的每一层,通过聚合每个节点在该层网络中邻居的子嵌入表示来表示其本身,具体的方式为:
Figure FDA0003509511160000062
Figure FDA0003509511160000063
其中,
Figure FDA0003509511160000064
表示用户类型节点u在第lu(lu∈{1,2,...,m},m为GU中总的网络层数)层网络中经过k层卷积层得到的子嵌入,
Figure FDA0003509511160000065
表示项目类型节点i在第li(li∈{1,2,...,n},n为GI中总的网络层数)层网络中经过k层卷积层得到的子嵌入,k∈{1,2,...,K}表示当前卷积层数,K表示总卷积层数,lu和li分别表示多层网络GU和GI中的第lu和第li层同构网络,g表示聚合函数,u,i为节点编号,Ni,l表示项目节点i在第li层同构网络中的邻居节点集合,
Figure FDA0003509511160000066
表示用户节点u在第lu层同构网络中的邻居节点集合;
Figure FDA0003509511160000067
Figure FDA0003509511160000068
为初始的输入,通过一个查找层得到;
对于聚合函数g,本方法采用:
Figure FDA0003509511160000071
Figure FDA0003509511160000072
其中mean表示取平均值,f为激活函数ReLU,
Figure FDA0003509511160000073
表示属于用户的在第lu层同构网络的第k层聚合过程中的可训练的权重矩阵,
Figure FDA0003509511160000074
表示属于项目的在第li层同构网络的第k层聚合过程中的可训练的权重矩阵;
Figure FDA0003509511160000075
Figure FDA0003509511160000076
分别表示用户和项目图卷积网络的最后一层输出,即节点的最终子嵌入,为了简便采用
Figure FDA0003509511160000077
Figure FDA0003509511160000078
表示;
S32、对于用户多层网络GU,得到一组用户子嵌入表示
Figure FDA0003509511160000079
对于用户多层网络GI,得到一组用户子嵌入表示
Figure FDA00035095111600000710
不同的子嵌入表示包含不同类型的语义信息;
最终嵌入表示生成模块,基于注意机制的非线性融合函数来融合所述子嵌入表示以生成最终的用户嵌入表示和书籍嵌入表示,生成最终的用户嵌入表示和书籍嵌入表示的具体步骤包括:
S41、采用注意力机制将各层同构网络的子表示融合为一个表示:
Figure FDA00035095111600000711
Figure FDA00035095111600000712
其中,
Figure FDA00035095111600000713
Figure FDA00035095111600000714
分别为用户节点u和书籍节点i融合各个子嵌入表示后的嵌入表示,
Figure FDA00035095111600000715
Figure FDA00035095111600000716
分别表示用户节点u和书籍节点i在GU和GI的第l层网络子嵌入的融合注意力系数;
所述注意力系数的计算方式为:
Figure FDA0003509511160000081
Figure FDA0003509511160000082
其中,上标U和I表示参数属于用户或项目,T表示转置运算,a为可训练的注意力向量,Wa为注意力层可训练的参数矩阵,ba为可训练的偏置向量;
S42、每个节点的最终嵌入表示为:
Figure FDA0003509511160000083
Figure FDA0003509511160000084
其中,e表示最终嵌入表示,q为基础嵌入表示,由查找层获得,Wc为可训练的权重矩阵,bc为可训练的偏置矩阵,ReLU为激活函数,λ为决定辅助信息重要性的系数,CONCAT为拼接操作;
S43、基于每个节点的最终嵌入表示,得到用户嵌入表示集合eU和书籍嵌入表示集合eI
参数训练模块,基于损失函数,采用小批量采样结合Adam优化算法进行网络训练,学习得到优化的参数;优化的参数包括多层网络的子嵌入表示
Figure FDA0003509511160000085
Figure FDA0003509511160000086
所有权重矩阵和偏置向量、基础嵌入
Figure FDA0003509511160000087
Figure FDA0003509511160000088
所述损失函数为:
Figure FDA0003509511160000089
其中,L表示损失,Sb表示批量采样集合,ru,i表示真实评分,
Figure FDA00035095111600000810
表示用户u对项目i的预测评分;
所述用户对书籍的预测评分的具体计算方式为:,
Figure FDA00035095111600000811
其中
Figure FDA00035095111600000812
表示用户u对书籍i的预测评分,
Figure FDA00035095111600000813
表示用户u的嵌入表示,
Figure FDA00035095111600000814
表示书籍i的嵌入表示,
Figure FDA00035095111600000815
表示用户u的评分偏置项,
Figure FDA00035095111600000816
表示书籍i的评分偏置项;推荐模块,基于训练得到的参数,对于任一用户,根据上述预测评分的具体计算方式计算获得用户对书籍的预测评分,根据所述预测评分,将预测评分值较高的书籍推荐给用户。
3.一种计算机设备,其特征在于,所述设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1所述的方法。
CN202210148285.8A 2022-02-17 2022-02-17 基于异构信息网络的书籍推荐方法、系统及设备 Active CN114510642B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210148285.8A CN114510642B (zh) 2022-02-17 2022-02-17 基于异构信息网络的书籍推荐方法、系统及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210148285.8A CN114510642B (zh) 2022-02-17 2022-02-17 基于异构信息网络的书籍推荐方法、系统及设备

Publications (2)

Publication Number Publication Date
CN114510642A true CN114510642A (zh) 2022-05-17
CN114510642B CN114510642B (zh) 2024-06-25

Family

ID=81550945

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210148285.8A Active CN114510642B (zh) 2022-02-17 2022-02-17 基于异构信息网络的书籍推荐方法、系统及设备

Country Status (1)

Country Link
CN (1) CN114510642B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115186086A (zh) * 2022-06-27 2022-10-14 长安大学 一种异构环境下嵌入预期价值的文献推荐方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110633422A (zh) * 2019-09-16 2019-12-31 安徽大学 一种基于异构信息网络的微博好友推荐方法
US20210076224A1 (en) * 2019-09-10 2021-03-11 Beijing Baidu Netcom Science And Technology Co., Ltd. Network convergence method and device, electronic apparatus, and storage medium
CN113190754A (zh) * 2021-05-11 2021-07-30 四川大学 一种基于异构信息网络表示学习的推荐方法
CN113918833A (zh) * 2021-10-22 2022-01-11 重庆理工大学 通过社交网络关系的图卷积协同过滤实现的产品推荐方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210076224A1 (en) * 2019-09-10 2021-03-11 Beijing Baidu Netcom Science And Technology Co., Ltd. Network convergence method and device, electronic apparatus, and storage medium
CN110633422A (zh) * 2019-09-16 2019-12-31 安徽大学 一种基于异构信息网络的微博好友推荐方法
CN113190754A (zh) * 2021-05-11 2021-07-30 四川大学 一种基于异构信息网络表示学习的推荐方法
CN113918833A (zh) * 2021-10-22 2022-01-11 重庆理工大学 通过社交网络关系的图卷积协同过滤实现的产品推荐方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JIARUI ZHANG等: "Meta-path Guided Heterogeneous Graph Neural Network For Dish Recommendation System", 《JOURNAL OF PHYSICS: CONFERENCE SERIES》, 31 December 2021 (2021-12-31), pages 1 - 10 *
周明强等: "异构信息网络的注意力感知多通道图卷积评分预测模型", 《计算机科学》, vol. 50, no. 3, 15 March 2023 (2023-03-15), pages 129 - 138 *
唐可昕: "基于异构信息网络的个性化推荐算法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 12, 15 December 2021 (2021-12-15), pages 138 - 722 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115186086A (zh) * 2022-06-27 2022-10-14 长安大学 一种异构环境下嵌入预期价值的文献推荐方法
CN115186086B (zh) * 2022-06-27 2023-08-08 长安大学 一种异构环境下嵌入预期价值的文献推荐方法

Also Published As

Publication number Publication date
CN114510642B (zh) 2024-06-25

Similar Documents

Publication Publication Date Title
Guo et al. A deep graph neural network-based mechanism for social recommendations
WO2023000574A1 (zh) 一种模型训练方法、装置、设备及可读存储介质
CN110619081B (zh) 一种基于交互图神经网络的新闻推送方法
CN109190030B (zh) 融合node2vec和深度神经网络的隐式反馈推荐方法
CN112613602A (zh) 基于知识感知超图神经网络的推荐方法及系统
CN112417313A (zh) 一种基于知识图卷积网络的模型混合推荐方法
CN113918834B (zh) 融合社交关系的图卷积协同过滤推荐方法
CN114741599B (zh) 基于知识增强和注意力机制的新闻推荐方法及系统
CN115114542B (zh) 一种对象推荐方法、系统、训练方法、介质及计算机设备
Sang et al. Knowledge graph enhanced neural collaborative filtering with residual recurrent network
CN113590976A (zh) 一种空间自适应图卷积网络的推荐方法
CN115982467A (zh) 一种去偏化用户多兴趣推荐方法、装置及存储介质
Wang et al. Research on BP neural network recommendation model fusing user reviews and ratings
Wu et al. A federated deep learning framework for privacy-preserving consumer electronics recommendations
Huynh et al. Network alignment by representation learning on structure and attribute
CN114510642B (zh) 基于异构信息网络的书籍推荐方法、系统及设备
CN117194771B (zh) 一种图模型表征学习的动态知识图谱服务推荐方法
CN116821519A (zh) 一种基于图结构的系统过滤和降噪的智能推荐方法
CN116610874A (zh) 一种基于知识图谱和图神经网络的跨域推荐方法
Zhao et al. A Hierarchical Attention Recommender System Based on Cross‐Domain Social Networks
CN115544352A (zh) 基于多视图任务关系感知元学习的预测方法及系统
CN115409579A (zh) 一种基于元学习的响应式推荐方法、系统及设备
Wang et al. A Tri‐Attention Neural Network Model‐BasedRecommendation
Ling et al. Extracting implicit friends from heterogeneous information network for social recommendation
Kalidindi et al. Discrete Deep Learning Based Collaborative Filtering Approach for Cold Start Problem.

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