CN111582443B - 一种基于Mask机制和层次注意力机制的推荐方法 - Google Patents
一种基于Mask机制和层次注意力机制的推荐方法 Download PDFInfo
- Publication number
- CN111582443B CN111582443B CN202010321767.XA CN202010321767A CN111582443B CN 111582443 B CN111582443 B CN 111582443B CN 202010321767 A CN202010321767 A CN 202010321767A CN 111582443 B CN111582443 B CN 111582443B
- Authority
- CN
- China
- Prior art keywords
- node
- vector
- attention
- mask
- nodes
- 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.)
- Active
Links
- 230000007246 mechanism Effects 0.000 title claims abstract description 70
- 238000000034 method Methods 0.000 title claims abstract description 65
- 239000013598 vector Substances 0.000 claims abstract description 134
- 238000012545 processing Methods 0.000 claims abstract description 16
- 238000004220 aggregation Methods 0.000 claims description 22
- 230000002776 aggregation Effects 0.000 claims description 19
- 230000014509 gene expression Effects 0.000 claims description 14
- 230000003993 interaction Effects 0.000 claims description 14
- 238000011176 pooling Methods 0.000 claims description 11
- 238000005070 sampling Methods 0.000 claims description 8
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 238000013528 artificial neural network Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 239000000203 mixture Substances 0.000 claims description 4
- 238000006116 polymerization reaction Methods 0.000 claims description 3
- 241000689227 Cora <basidiomycete fungus> Species 0.000 description 6
- 238000012549 training Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 4
- 238000012552 review Methods 0.000 description 4
- 230000004931 aggregating effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010411 cooking Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Human Resources & Organizations (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Economics (AREA)
- Molecular Biology (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于Mask机制和层次注意力机制的推荐方法,包括:获取节点数据集U和项目数据集I;将U和I输入上下文描述层得到序列Su和Si,经过处理得到节点向量和项目向量 和融合后得到第i个节点u在I中的嵌入向量将所有节点的嵌入向量组成向量集Z;计算与第i个节点u关系密切的L阶邻居节点v的k头注意力系数根据v的嵌入向量计算节点u的k头注意力将聚合得到第i个节点u的聚合注意力向量将与拼接并线性化,得到第i个节点u的推荐向量将所有节点的推荐向量组成向量集Z';根据Z和/或Z'获得目标节点的项目推荐列表。不仅提高了推荐准确度,还提高了网络的灵活性,解决冷启动问题,且模型更为简单,进行推荐时所耗时间也更少。
Description
技术领域
本发明涉及兴趣推荐领域,尤其涉及一种基于Mask机制和层次注意力机制的推荐方法。
背景技术
随着人们日常生活节奏的加快,以实用的方式快速获取有用的信息可以节省大量的时间,推荐系统在信息过滤中起着至关重要的作用。数据稀疏性、冷启动和推理问题一直是影响推荐质量的三大问题,协同过滤推是主流的传统推荐算法,但是由于数据的稀疏性,严重影响了推荐质量。基于神经网络的协同过滤推荐方法(如CNN,RNN等)缓解了数据稀疏性的问题。此外,基于社交网络的方法可以有效的为新用户,新物品和新商店提供推荐,在冷启动问题上有很大的改善。
在社交网络中,大多数用户之间存在着显性或隐性的关系,这些关系影响着彼此的行为,社交媒体的广泛存在极大地丰富了网络用户的社交活动,产生了丰富的社会关系,融合这些社会关系提高了推荐系统的质量。近年来,研究者们提出了大量基于社交网络的推荐系统,一些社交推荐系统将社交关系同质化。然而,由于用户在两个领域的行为和交互方式不同,它可能会限制用户在各个领域的表示学习。在一些研究中学习了在两个域中分离的用户表示,然后将信息从社交域转移到项目域以提供推荐。这些研究考虑了两个领域的异构性,但由于两个领域固有的数据稀疏性问题,对表示形式的学习具有挑战性。更多的推荐系统考虑了在线社交网络中的连接本质上是异构的问题,将社交网络分为用户域和项目域两个部分,但是对于两个领域的特征学习并不丰富。
基于深度学习的最新进展,特别是图卷积网络(GCN)的发展,能够很容易的聚合社交网络中的特征信息,基于图卷积神经网络的推荐系统在推荐质量上超过了以前的推荐算法。然而图卷积为同阶邻节点分配相同的权重,且聚合特征时依赖于整个图,局限了图的灵活性和泛化能力。在此基础上,提出了图注意力网络,图注意力网络用注意力机制对邻近节点特征加权求和,邻居节点的特征权重与节点本身相关,各不相同。然而不论是图卷积神经网络还是图注意力网络,社交网络中的节点都在同一个域中进行聚合,在网络规模较大时,训练时间都较长。
发明内容
本发明为了解决现有技术的不足,提出了一种基于Mask机制和层次注意力机制的推荐方法,结合社交网络信息和用户的行为信息,不仅提高了推荐准确度,还提高了网络的灵活性,解决用户冷启动和冷启动问题,并且模型也更为简单,进行推荐时所耗时间也更少。
本发明为解决技术问题采用如下技术方案:
一种基于Mask机制和层次注意力机制的推荐方法,包括以下步骤:
步骤S1.将社交网络划分为社交域和项目域,获取社交域中的节点信息作为节点数据集U;获取项目域中的项目信息作为项目数据集I;
步骤S7.根据所述嵌入向量集Z和/或所述推荐向量集Z'获得目标节点的项目推荐列表。
进一步的,在训练所述Context-NE网络和图卷积网络时引入Mask机制,具体包括如下内容:
根据网络大小随机mask网络中不同比例的节点和\或项目,对被mask节点和\或项目采取以下三种方式中的一种进行处理:
随机采样与被mask节点和\或项目关系密切的邻居节点和\或项目的特征作为被mask节点和\或项目的特征;
随机采样非邻居节点和\或项目的特征表示被mask节点和\或项目的特征;
对被mask节点和\或项目的特征不做处理。
进一步的,将新加入网络的节点和/或项目作为被mask节点和/或项目。
其中,Km表示第m个卷积核,bm表示偏置参数;
rij表示第i个节点对项目j的偏好程度,其表达式为:
其中,checkj表示第i个节点与项目j的交互次数,checki表示第i个节点与所有项目的总交互次数。
其中,γ表示输入梯度为0.2的LeakyReLu非线性函数;β是神经网络层的权重参数;bk为k头注意力的偏置参数;Wk为节点u与邻居节点v共有的权重参数。
其中,W是权重参数。
其中,Wh是聚合注意力层的权重参数;
αh表示聚合注意力层的注意力系数,其表达式为:
其中,bh为聚合注意力层的偏置参数;
其中,W是权重参数,b为偏置参数。
进一步的,当与第i个节点u关系密切的邻居节点数量过多时,采用以下方式处理邻居节点集合N(u):
若邻居节点的总数大于预设值T,则计算第i个节点u与所有邻居节点的相似性,根据所述相似性对所有邻居节点进行排序,选择相似度排序前T的邻居节点组成节点u的邻居节点集合N(u);否则将所有邻居节点组成集合N(u)。
本发明与现有的技术相比,其有益的特点是:
1、将社交网络分为了社交域和项目域,考虑了社交网络的异构性,用学习到的节点嵌入做推荐能更接近节点的偏好。
2、利用Context-NE网络和图卷积网络充分融合了社交域和项目域的特征信息,能够充分提取两者交叉域中的节点特征,解决了由于异构网络中节点和项目的交互行为不同,得到的节点和项目的表达不丰富的问题。
3、利用层次注意力机制聚合了与节点关系密切的邻居节点的特征信息,可以为节点推荐更接近节点偏好的项目。
4、在网络训练中加入Mask机制,可以增加网络的泛化能力;可将新加入网络的节点和\或项目作为Mask节点,缓解冷启动问题,并提高网络的灵活性。
附图说明
图1是一个实施例中一种基于Mask机制和层次注意力机制的推荐方法的流程图;
图2是一个实施例中社交域和项目域的结构示意图;
图3是一个实施例在Cora数据集上的不同mask比例的结果对比图;
图4是一个实施例在Citesseer数据集上的不同mask比例的结果对比图;
图5是一个实施例在Pumped数据集上的不同mask比例的结果对比图;
图6是一个实施例在不同邻居数量和聚合深度的HR性能对比图;
图7是一个实施例在不同邻居数量和聚合深度的NDCG性能对比图;
图8是一个实施例在输出维度为64时减少各项机制的HR和NDCG性能对比图;
图9是一个实施例在N值为10时减少各项机制的HR和NDCG性能对比图。
图10是一个实施例中Context-NE网络的结构示意图;
图11是一个实施例中图卷积网络的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步阐述。在本发明的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
如图1所示,本发明提供的一种基于Mask机制和层次注意力机制的推荐方法,包括以下步骤:
步骤S1.将社交网络划分为社交域和项目域,获取社交域中的节点信息作为节点数据集U;获取项目域中的项目信息作为项目数据集I;
其中,本发明所涉及的社交网络(Social Network)具体是指:也称社会网络,是由许多节点构成的一种社会结构,社会网络代表各种社会关系,经由这些社会关系,把各个节点组织串连起来。社会网络含有一个或多个特定类型的相互依存。
如图2所示,本发明将社交网络按照节点的类型划分为社交域(Social Domain)和项目域(Item Domain)。所述社交域与是指包含节点本身以及节点与节点之间关系的集合,用符号U={U1,U2,……Un}表示,n表示社交域中一共有n个节点。所述项目域是指包含网络中所有项目的集合,用符号I={I1,I2,……Im}表示,m表示网络中共有m个项目。在社交域中节点之间的边表示亲密关系,用符号F表示,节点与项目之间的边表示节点与项目之间的交互,用符号T表示,则整个网络可用一个四元组G={U,I,F,T}表示,其中灰色的节点表示被选中为mask节点。采用这种社交网络的划分,充分的考虑了社交网络的异构性,在用学习到的节点嵌入做推荐能更接近节点的偏好。
所述节点是指对某个项目含有偏好倾向,并且与其邻居节点存在密切关系的人或物。节点与邻居节点间具有相似的偏好或归属,将这种性质称为社交同质性,且这种同质性在短时间内不会被环境因素所影响。所述节点信息包括节点本身所具有的固有属性信息以及节点间关系信息。
所述项目是指与节点存在交互行为的人或物或归属关系,且节点对项目存在偏好或归属。所述项目信息包括项目本身所具有的固有属性信息以及节点与项目间的交互信息。
在一种较优实施例中,节点可以是用户,则节点信息可以包括用户姓名、年龄等基础信息和朋友关系、粉丝数量等节点间关系信息;项目可以是商户,则项目信息可以包括商户名称、地理位置、商户类别等固有属性信息和用户在商户的消费历史记录、用户对商户的历史评价等节点与项目关系信息。
在另一种较优实施例中,节点还可以是公开发表的论文,则节点信息可以包括论文题目、论文摘要关键词等基础信息和论文间的引用关系等节点间关系信息;项目可以是论文所归属的领域,则项目信息是领域名称、领域关键词等固有属性信息和论文与归属领域的归属关系的点与项目关系信息。
其中,Context-NE网络的结构如图10所示,输入为节点数据集U和项目数据集I,经过上下文描述层(Context Decription)、卷积层(Convolutional Layer)、池化层(Poollayer)和激活函数之后,得到用户在项目域中的表示集合Z。
在一种较优实施例中,所述上下文描述层可以是LSTM模型(长短时记忆模型);所述序列Su和序列Si的构成方法可以是:首先,LSTM模型将所述节点数据集U和所述项目数据集I中的信息数据转化为对应的词向量,然后将相关信息和时序信息融合到词向量中,再将词向量构成序列Su和序列Si。
步骤S2包括以下具体步骤:
其中,Km表示第m个卷积核,bm表示偏置参数;
在一种较优实施例中,所述卷积网络的构建参数可以是具有M个大小为C的卷积核,且滑动窗口大小为Lw。
其中,所述池化层的滑动窗口大小为Lw。设置池化层是为了减小输出维度并防止过拟合。
rij表示第i个节点对项目j的偏好程度,其表达式为:
其中,checkj表示第i个节点与项目j的交互次数,checki表示第i个节点与所有项目的总交互次数。节点与同一项目的交互次数越多也就说明节点对该项目的偏好程度越高,即rij值越大,该项目嵌入在节点嵌入中所占比重越大。
进一步的是,所述邻居节点是指与目标节点有密切关系的节点,邻居节点对项目的偏好会因为与目标节点存在的密切关系而对目标节点产生一定的影响,这种影响的显著性与关系密切程度成正相关关系。
在大型网络中,目标节点的邻居节点数量可能会有很多,但不是每个邻居节点对目标节点的偏好都有显著影响,此外,聚合所有邻居节点的特征反而会增加目标节点表示中的噪声和计算量,因此,本发明采用以下的方式来处理邻居节点集合N(u)。
若邻居节点的总数大于预设值T,则计算第i个节点u与所有邻居节点的相似性,根据所述相似性对所有邻居节点进行排序,选择相似度排序前T的邻居节点组成节点u的邻居节点集合N(u);否则将所有邻居节点组成集合N(u)。其表达式为:
f(u,v)=uTv为目标节点与邻居节点间的相似度计算函数;top[.]表示取与目标节点u相似度最大的T个邻居节点v。
通过上述对邻居节点组成集合N(u)的处理,可以在计算过程中只考虑较为重要的邻居节点,从而可以减少网络的运算量,方便其应用于大规模的网络。
其中,γ表示输入梯度为0.2的LeakyReLu非线性函数;β是神经网络层的权重参数;bk为k头注意力的偏置参数;Wk为节点u与邻居节点v共有的权重参数。
其中,W是权重参数。
其中,Wh是聚合注意力层的权重参数;
αh表示聚合注意力层的注意力系数,其表达式为:
其中,bh为聚合注意力层的偏置参数;
其中,W是权重参数,b为偏置参数。
步骤S7.根据所述嵌入向量集Z和/或所述推荐向量集Z'获得目标节点的项目推荐列表。
本发明对项目推荐列表的获得方式不作进一步的限定,本领域的技术人员可以根据本发明所得到的嵌入向量集Z和/或推荐向量集Z'利用各种技术手段得到目标节点的项目推荐列表。为了使说明本发明的原理,本发明在此提供两种推荐列表的获得方法。本行业的技术人员应该了解,本发明不受上述实施例的限制,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。
在一种较优的实施例中,获得目标节点的项目推荐列表的方法可以是:将目标节点i的嵌入向量与推荐向量集Z'中的每一个推荐向量分别点乘后,通过全连接层输入softmax分类函数,得到与目标节点i相似的前topN个节点,将相似节点的偏好项目作为目标节点的项目推荐列表推荐给目标节点。其中,相似节点对项目的偏好程度可以用rij表示,其表达式为:
checkj表示第i个节点与项目j的交互次数,checki表示第i个节点与所有项目的总交互次数。节点与同一项目的交互次数越多也就说明节点对该项目的偏好程度越高,即rij值越大,该项目嵌入在节点嵌入中所占比重越大。
在另一种较优的实施例中,获得目标节点的项目推荐列表的方法还可以是:首先计算目标节点i的嵌入向量的余弦值然后计算推荐向量集Z'中的每一个推荐向量的余弦值cosZ',然后计算与每一个cosZ'的相似度,最后根据相似度排序得到与目标节点i相似的前topN个节点,将相似节点的偏好项目作为目标节点的项目推荐列表推荐给目标节点。
特别的,在训练所述Context-NE网络和图卷积网络时引入Mask机制,如图2所示,具体包括如下内容:
根据网络大小随机mask网络中不同比例的节点和\或项目,对被mask节点和\或项目采取以下三种方式中的一种进行处理:
随机采样与被mask节点和\或项目关系密切的邻居节点和\或项目的特征作为被mask节点和\或项目的特征;
随机采样非邻居节点和\或项目的特征表示被mask节点和\或项目的特征;
对被mask节点和\或项目的特征不做处理。
在一种较优的实施例中,可以按照如下规则对选中的mask节点和\或项目进行处理:
其中,Zimask表示被mask的节点,Zirandom表示随机采样的与被mask节点关系密切的邻居节点,Zrandom表示随机采样的非邻居节点;
g(Zimask,Zirandom)表示有1-θ的概率在节点数据集中随机选择被mask节点的一个邻居,通过mask向量将邻居的特征传递给被mask的节点,在网络训练过程中学习mask向量;Zrandom表示有θ/2的概率随机采样一个非邻居节点,将该非邻居节点的特征传递给被mask的节点;Z表示有θ/2的概率对被mask的节点的特征不做任何处理。
同理,f(zumask,zurandom)表示有1-θ的概率在项目数据集中随机选择被mask项目的一个邻居,通过mask向量将邻居的特征传递给被mask的项目,在网络训练过程中学习mask向量;Zrandom表示有θ/2的概率随机采样一个非邻居项目,将该非邻居项目的特征传递给被mask的项目;Z表示有θ/2的概率对被mask的项目的特征不做任何处理。
在一种较优实施例中,将新加入网络的节点和/或项目作为选中的mask节点和/或项目可以缓解冷启动问题。
实施例
下面结合附图及实施例对本发明作进一步的描述。
本发明的实施例中,考虑在两个真实数据集上来检验本发明所提供方法的性能。所采用的数据集分别为:
Yelp数据集。Yelp是一个基于位置的在线社交网络,它包含商店信息表、评论表、tips、用户信息和签到表。商店信息表中列出了餐厅的名称、地理位置、营业时间、烹饪种类、平均星级等。评论表列出了餐厅的星级、评论内容、评论时间和支持度。在本发明中,我们将用户评分大于3分项目视为用户的喜欢的项目,数据集中包含141804个用户和17625个项目。
引文网络数据集。引文网络是由文献间引用和被引用的关系构成的集合,本文使用Cora、CiteSeer和PubMed三种常用的引文网络进行实验,数据集描述如表1所示。在每个网络中,节点和边分别是论文和无向引用,节点内容是从论文中提取的摘要。
表1引文网络数据集描述
Dataset | #Nodes | #Edges | #Class | #Features |
CiteSeer | 3327 | 4732 | 6 | 3703 |
Cora | 2708 | 5429 | 7 | 1433 |
PubMed | 19717 | 44338 | 3 | 500 |
进一步的,对于yelp数据集,发明所提供的方法为每个用户推荐排名前N个商户,用命中率(HR)和归一化折扣累积收益(NDCG)衡量方法的性能,对于这两个指标,数值越大,性能越好。命中率(HR)可衡量用户在测试数据集中喜欢的商户在前N个已成功预测排名的列表中的比例,其计算公式如下:
U表示用户集合,HR@Nu表示用户u的topN推荐列表,分母是所有测试数据集的商户数量,分子是每个用户的top-N推荐列表属于测试数据集的商户数量。
归一化折扣累积收益(NDCG)指标会考虑成功预测商户的位置,如果成功预测的商户在推荐列表顶部,NDCG会给出更高的分数,NDCG计算公式如下:
其中,Rankpos表示正样本(成功预测项目)的位置。
对于引文网络数据集,用平均分类精度(带有标准差)衡量模型性能。
本实施例对上述两个数据集均设置对照组以衡量本发明所提供的方法的有效性,对照组的设置如下:
对于引文网络的实验,我们将本发明所提供的方法与7种基线进行比较,包括三个经典的推荐模型:多层感知器(MLP)、标签传播(LP)、图嵌入(DeepWalk)和四种基于图卷积的推荐模型进行比较:图卷积与Chebyshev滤波器相结合(Chebyshev)、图卷积网络(GCN)、掩码图卷积网络(MaskedGCN)和图注意网络(GAT)。
对于yelp数据集的实验,我们将本发明所提供的方法与三种经典的推荐模型:BPR、因子模型FM和社会推荐模型TrustSVD进行比较,并将我们提出的模型与三种基于图卷积的推荐模型:CG-MC、PinSage和DiffNet进行比较。
在进行比较前,先对根据本发明所提供的方法建立的网络进行训练,网络训练时的参数设置规则如下:应用网格搜索来设置超参数M(卷积核个数)、C(卷积核大小)和Lw(滑动窗口大小)。借鉴Bert模型中MaskedLM的思想,将θ设置为20%。在聚合节点L阶邻居的特征嵌入时,将L设置为2,用户的最大邻居数量T根据网格搜索结果将其设置为20;用L2正则化防止过拟合,数据集为引文网络时衰减系数A设置为0.0005,数据集为yelp时衰减系数A设置为0.001。Yelp数据集中的用户节点经过Context-NE模型后输出嵌入尺寸为200,在第一层注意力和聚合层注意力层中,每一层的输出设置为D维。第一层注意力机制由K=3头个注意头组成,其输出作为第二层聚合注意力的输入。我们使用Adam优化算法作为所有模型的优化方法,初始学习率社会设置为0.001。
下面结合本实施例实验结果来对本发明所提供的推荐方法作进一步的说明。为了便于说明,将根据本发明所提供的推荐方法建立的推荐网络命名为HA-RS模型。
在引文网络中,三个数据集上分类准确性的结果如表2所示。
表2各模型在引文网络数据集中的分类准确性
Methods | Cora | Citeseer | Pubmed |
MLP | 55.1% | 46.5% | 71.4% |
LP | 68.0% | 45.3% | 63.0% |
DeepWalk | 67.2% | 43.2% | 65.3% |
Chebyshev | 81.2% | 69.8% | 74.4% |
GCN | 81.5% | 70.3% | 79.0% |
GAT | 83.0% | 72.5% | 79.0% |
Masked_GCN(Asym) | 84.4% | 73.8% | 80.2% |
HA_RS | 84.9% | 74.5% | 81.1% |
从表2中可以看出,本发明所提出的HA-RS模型性能远远高于三种经典的推荐模型,也优于基于图卷积的最新推荐方法。HA-RS模型在引文网络上的准确率相比GAT模型分别提高1.9%、2%和2.1%,这表明mask机制和层次注意力层机制能够提高模型性能。
Masked_GCN通过为每个节点学习Mask的向量来传播部分属性,而不是整个属性
与GCN和GAT相比,MaskedGCN显著提高了性能。但是根据掩码图卷积网络的论文,MaskedGCN的运行时间平均是GAT的1.24倍,这部分额外的时间主要用来学习Mask的参数。HA-RS只为部分模型Mask参数,可以节约大量时间且实验结果表明HA-RS模型在三个数据集上的性能均优于MaskedGCN模型。
在社交网络yelp上,HR和NDCG的结果如表3和表4所示。
表3不同输出维度大小D的各模型性能
表4不同N取值的各模型性能
从表3可以得出如下结论:无论是HR还是NDCG指标,基于图卷积的推荐模型都优于经典的推荐模型。将DiffNet作为最好的基线,当输出维度尺寸D从16增加到64时,我们的模型HA-RS在HR上提高了3%-3.5%,NDCG上提高了1.2%-5.3%。这说明本文将异构社交网络划分为项目域和社交域,得到的用户表示更适合于推荐。
另一方面,所有模型的性能并没有随着输出潜在维数D从16增加到64而增加。BRP和FM模型在D=32时性能最佳,其他模型在D=64时性能最佳。可以认为,BPR只考虑推荐的用户-项目评分信息,维度太大会增加表示中的噪声,导致推荐性能下降。虽然FM利用节点特征和社交网络信息,但是模型的特征提取能力太弱。
从表4中可以得出类似于表3的结果,本发明提供的HA-RS模型总是表现出最佳的性能。随着topN推荐的N值从5增加到15,HA-RS模型在HR上提高了2.3%-4.0%,NDCG上提高了2.9%-5.1%。根据实验结果,我们可以得出这样的结论,本发明提供的HA-RS模型在不同的输出维度和不同的推荐大小N下都优于所有的基线。
下面分析本发明不同mask比例对模型性能的影响,将本发明所提出的mask机制加入原始图卷积网络GCN和图注意力网络GAT中,分别表示为GCN-mask和GAT-mask,并与本发明所提出的模型HA-RS进行对比。
如前所述,Mask机制对模型的改进起着重要的作用。实验设置了6组不同的Mask比例。当比例设置为0%时,为无Mask机制的GCN、GAT和HA-RS,最大Mask比例设置为10%。三种方法在引文网络中的准确性如图1、图2、图3所示。
从图中可以看出,本发明所提出的HA-RS模型的性能更好。当Mask率为0%时,将异构网络划分为社交域和项目域来学习用户表示更有利于分类和推荐。在cora和citesseer的数据集中,当Mask比例为2%时,三种模型的准确率最高,而模型的准确率随着Mask比例的增加而下降。在pumbed数据集上,Mask率在6%时达到最高,然后缓慢下降。主要原因是pumbed数据集中节点较多,比cora和citesser多6倍。在三个数据集中的Mask率为10%时,这三个方法比没有Mask机制的方法执行得更好。这说明Mask机制确实会影响模型的性能,Mask的比例与网络规模有关。达到最佳性能的Mask比例随着网络规模的增大而增大。
下面分析L层邻居在社交域聚合过程中的影响,以及不同用户邻居数量的影响。我们将邻居的层数从1调整到3,并将每个层的用户邻居数设置为5到20,HR和NDCG的性能如图4、图5所示。
从图4-5可以看出,当用户邻居数为15时,HA-RS的性能最好,当邻居数为20时,HA-RS的性能急剧下降。在HA-RS中,聚合2层邻居的性能优于聚合1层或3层邻居,这是因为1层无法捕获用户之间在社会领域的高阶关系,然而,3层可能会给模型带来大量的噪声。
进一步的,本实例还通过减少本申请所提出的部分机制来验证各机制的有效性。所述机制包括:层次注意力机制和Mask机制。在原模型的基础上,设计了三种变体模型。HA-attn为从模型中去掉了层次注意机制,HA-mask为从模型中去掉了掩码机制,RS为只考虑了社交网络的异质性,同时去掉了层次注意机制和掩码机制。
实验结果如图6、图7所示。去除层次注意力机制后,HR和NDCG中的推荐性能略有下降,分别为4.8%及3.8%;但去除掩模机制后,HR和NDCG的性能分别下降了10.2%和9%;这说明降低层次注意机制和掩模机制都会影响模型的性能,而去除掩模机制对模型的影响更为显著。此外,去除层次注意机制和掩模机制后,RS的性能最差,但也优于GC-MC和Pinsage,这两个模型没有考虑社会网络的异质性。再次证明了通过将异构社会图划分为社会域和项目域的有效性。
专业人员还可以进一步意识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (10)
1.一种基于Mask机制和层次注意力机制的推荐方法,其特征在于,包括以下步骤:
步骤S1.将社交网络划分为社交域和项目域,获取社交域中的节点信息作为节点数据集U;获取项目域中的项目信息作为项目数据集I;
步骤S7.根据所述嵌入向量集Z和/或所述推荐向量集Z'获得目标节点的项目推荐列表;
其中,在训练所述Context-NE网络和图卷积网络时引入Mask机制。
2.如权利要求1所述的基于Mask机制和层次注意力机制的推荐方法,其特征在于:在训练所述Context-NE网络和图卷积网络时引入Mask机制,具体包括如下内容:
根据社交网络的大小随机mask网络中不同比例的节点和\或项目,对被mask节点和\或项目采取以下三种方式中的一种进行处理:
随机采样与被mask节点和\或项目关系密切的邻居节点和\或项目的特征作为被mask节点和\或项目的特征;
随机采样非邻居节点和\或项目的特征表示被mask节点和\或项目的特征;
对被mask节点和\或项目的特征不做处理。
3.如权利要求1或2所述的基于Mask机制和层次注意力机制的推荐方法,其特征在于:将新加入网络的节点和/或项目作为被mask节点和/或项目。
10.如权利要求1或6或7所述的基于Mask机制和层次注意力机制的推荐方法,其特征在于:当与第i个节点u关系密切的邻居节点数量过多时,采用以下方式处理邻居节点集合N(u):
若邻居节点的总数大于预设值T,则计算第i个节点u与所有邻居节点的相似性,根据所述相似性对所有邻居节点进行排序,选择相似度排序前T的邻居节点组成节点u的邻居节点集合N(u);否则将所有邻居节点组成集合N(u)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010321767.XA CN111582443B (zh) | 2020-04-22 | 2020-04-22 | 一种基于Mask机制和层次注意力机制的推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010321767.XA CN111582443B (zh) | 2020-04-22 | 2020-04-22 | 一种基于Mask机制和层次注意力机制的推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111582443A CN111582443A (zh) | 2020-08-25 |
CN111582443B true CN111582443B (zh) | 2021-02-02 |
Family
ID=72124523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010321767.XA Active CN111582443B (zh) | 2020-04-22 | 2020-04-22 | 一种基于Mask机制和层次注意力机制的推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111582443B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112115377B (zh) * | 2020-09-11 | 2022-05-27 | 安徽农业大学 | 一种基于社交关系的图神经网络链路预测推荐方法 |
CN112131469A (zh) * | 2020-09-22 | 2020-12-25 | 安徽农业大学 | 一种基于评论文本的深度学习推荐方法 |
CN112307333A (zh) * | 2020-10-20 | 2021-02-02 | 上海交通大学 | 基于机器视觉与加权knn的智能购车推荐方法 |
CN113034316B (zh) * | 2020-11-25 | 2022-04-15 | 内蒙古大学 | 一种专利价值转换的分析方法及系统 |
CN114610950B (zh) * | 2020-12-04 | 2023-11-07 | 中山大学 | 一种图网络节点表示方法 |
CN112650929B (zh) * | 2020-12-31 | 2022-05-03 | 安徽农业大学 | 一种融入评论信息的图神经网络推荐方法 |
CN113159160B (zh) * | 2021-04-16 | 2024-06-25 | 杭州电子科技大学 | 一种基于节点注意力的半监督节点分类方法 |
CN113239181B (zh) * | 2021-05-14 | 2023-04-18 | 电子科技大学 | 基于深度学习的科技文献引文推荐方法 |
CN114493755B (zh) * | 2021-12-28 | 2022-10-14 | 电子科技大学 | 一种融合时序信息的自注意力序列推荐方法 |
CN116664253B (zh) * | 2023-07-28 | 2023-10-24 | 江西财经大学 | 一种基于广义矩阵分解与遮蔽注意力的项目推荐方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918454A (zh) * | 2019-02-22 | 2019-06-21 | 阿里巴巴集团控股有限公司 | 对关系网络图进行节点嵌入的方法及装置 |
CN110060097A (zh) * | 2019-04-01 | 2019-07-26 | 苏州市职业大学 | 基于注意力机制和卷积神经网络的用户行为序列推荐方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109033069B (zh) * | 2018-06-16 | 2022-05-17 | 天津大学 | 一种基于社会媒体用户动态行为的微博主题挖掘方法 |
US10599686B1 (en) * | 2018-09-27 | 2020-03-24 | Babylon Partners Limited | Method and system for extracting information from graphs |
CN109816101A (zh) * | 2019-01-31 | 2019-05-28 | 中科人工智能创新技术研究院(青岛)有限公司 | 一种基于图卷积神经网络的会话序列推荐方法及系统 |
CN110413844B (zh) * | 2019-05-24 | 2021-12-07 | 浙江工业大学 | 基于时空注意力深度模型的动态链路预测方法 |
CN110163449B (zh) * | 2019-05-31 | 2021-07-09 | 杭州电子科技大学 | 一种基于主动时空图卷积的机动车排污监测节点部署方法 |
CN110879864B (zh) * | 2019-10-29 | 2022-06-07 | 南京大学 | 一种基于图神经网络和注意力机制的上下文推荐方法 |
-
2020
- 2020-04-22 CN CN202010321767.XA patent/CN111582443B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918454A (zh) * | 2019-02-22 | 2019-06-21 | 阿里巴巴集团控股有限公司 | 对关系网络图进行节点嵌入的方法及装置 |
CN110060097A (zh) * | 2019-04-01 | 2019-07-26 | 苏州市职业大学 | 基于注意力机制和卷积神经网络的用户行为序列推荐方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111582443A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111582443B (zh) | 一种基于Mask机制和层次注意力机制的推荐方法 | |
Zhang et al. | Employing neighborhood reduction for alleviating sparsity and cold start problems in user-based collaborative filtering | |
CN104252456B (zh) | 一种权重估计方法、装置及系统 | |
CN109670121A (zh) | 基于注意力机制的项目级和特征级深度协同过滤推荐算法 | |
US20210366006A1 (en) | Ranking of business object | |
CN111221968B (zh) | 基于学科树聚类的作者消歧方法及装置 | |
CN109933720B (zh) | 一种基于用户兴趣自适应演化的动态推荐方法 | |
CN109034960A (zh) | 一种基于用户节点嵌入的多属性推断的方法 | |
CN111324807A (zh) | 基于信任度的协同过滤推荐方法 | |
CN113158024A (zh) | 一种纠正推荐系统流行度偏差的因果推理方法 | |
Zhao et al. | Improving social and behavior recommendations via network embedding | |
CN111241425A (zh) | 一种基于层次注意力机制的poi推荐方法 | |
Hu et al. | A POI-sensitive knowledge graph based service recommendation method | |
Xu et al. | Ssser: Spatiotemporal sequential and social embedding rank for successive point-of-interest recommendation | |
CN109885745A (zh) | 一种用户画像方法、装置、可读存储介质及终端设备 | |
CN110781405B (zh) | 基于联合卷积矩阵分解的文档上下文感知推荐方法及系统 | |
Ravanifard et al. | Content-aware listwise collaborative filtering | |
CN109684561B (zh) | 基于用户签到行为变化的深层语义分析的兴趣点推荐方法 | |
CN111160859A (zh) | 一种基于svd++和协同过滤的人力资源岗位推荐方法 | |
Huang et al. | A novel temporal recommendation method based on user query topic evolution | |
Ifada et al. | Do-rank: DCG optimization for learning-to-rank in tag-based item recommendation systems | |
Yu et al. | MLGAL: Multi-level Label Graph Adaptive Learning for node clustering in the attributed graph | |
CN116797371A (zh) | 基于基金双画像机制的基金组合推荐方法及系统 | |
CN115344794A (zh) | 一种基于知识图谱语义嵌入的旅游景点推荐方法 | |
Li et al. | Lean improvement of the stage shows in theme park based on consumer preferences correlation deep mining |
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 |