【《元路径引导的异质图模型分析》7200字】_第1页
【《元路径引导的异质图模型分析》7200字】_第2页
【《元路径引导的异质图模型分析》7200字】_第3页
【《元路径引导的异质图模型分析》7200字】_第4页
【《元路径引导的异质图模型分析》7200字】_第5页
已阅读5页,还剩10页未读, 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

元路径引导的异质图模型分析目录TOC\o"1-3"\h\u808元路径引导的异质图模型分析 1244731.1异质图构建 225671.2边权重赋予 386211.3元路径引导的异质图网络 4213391.3.1加权图的GCN表示(WGCN) 4235901.3.2语义级注意力 544041.4深度输出网络 7186671.4.1深度输出网络结构 734741.4.2目标函数及优化方法 8273681.5本章小结 817651第二章异质图改进模型 9176332.1图采样算法 9118672.2聚合函数GAT模型 11本文提出的基于GCN网络的异质图菜肴推荐系统如下图3.1所示。本文着眼于将用户-菜肴的交互信息放到图神经网络中去学习,利用异质图神经网络的结构特征建模菜肴数据,同时将元路径融合到异质图中,学习用户和菜肴各个方面的高阶表示形式进行饮食推荐。3.1节主要介绍了针对用户-菜肴的交互数据,我们如何构建和定义异质图,3.2节主要介绍了利用逆文档词频的概念,为用户-主料-用户(UMU)、以及用户-辅料-用户(UCU)两条元路径添加权重的方法,以此解决大量的主辅料信息带来的信息冗余问题。3.3节将介绍了利用带权图如何学习多分辨率的节点表示,以及利用注意力机制学习不同元路径下的多种语义融合,形成用户和菜肴的最终嵌入。3.4节介绍了深度输出网络如何进行设计,并介绍了模型的损失函数以及参数优化的方法。图3.1ADDINCNKISM.UserStyle基于元路径引导的异质图菜肴推荐模型图异质图构建传统的推荐系统无法很好地利用菜肴本身的风味以及食材这些辅助信息,导致最终推荐效果性能较差,并且由于用户-菜肴的交互信息本身带有相对稀疏的特性,导致了基于协同过滤的推荐系统在针对相对稀疏的数据效果并不是很理想。针对这些问题,本文提出了利用异质图来建模菜肴数据,将菜肴的主辅料数据以节点的形式构建进异质图中,利用异质信息网络进行用户菜肴的节点表示学习,既利用了主辅料的风味和食材信息捕获到了用户-菜肴的高阶结构信息,同时也减少了用户饮食记录的稀缺性,提升了推荐性能。菜肴异质图信息网络表示如下图3.2所示。图3.2菜肴异质图信息网络本文将菜肴的主辅料信息当作额外的节点的实体,构建了一个异质图网络,HING=(V,E),其中包括用户U={u1,u2},菜肴D={d1,d2},主料M={m1,m2},辅料C={表3.1菜肴异质图信息网络元路径数据集元路径Foodrecipe用户-菜肴-用户UDU用户-主料-用户UMU用户-辅料-用户UCU菜肴-用户-菜肴DUD菜肴-主料-菜肴DMD菜肴-辅料-菜肴DCD边权重赋予用户对于菜肴的选择的原因大体上可以分为两类,一种是对于食材的偏好,如北方地区喜欢吃面食,沿海地区更喜欢吃鱼类,这部分信息包含在菜肴的主料里。另一种是菜肴的做法,如喜欢红烧,清蒸,油炸等类型的菜品,这部分信息包含在菜肴的辅料中。由于食材本身的主辅料信息巨大,一方面减缓了用户饮食记录的稀疏性,另一方面又带来了一些问题:主辅料信息的冗余,与用户不是强相关联。例如一些家常的调味品如盐、酱油、糖(少量),这些调味品并不能很好地体现某道菜肴的风味或者食材特征,因此在元路径UMU和元路径UCU中,本文借助于逆文档词频[63]的概念为这两条元路径上用户的邻居边赋予了权重,最后进行归一化操作,经过实验表明,针对食品数据集可以有比较明显的效果。(3-1)(3-2)(3-3)(3-4)逆文档词频(TF-IDF)[63]是一种用于资讯检索与资讯探勘的常用加权术,用以评估一个字词对于一个文件集或一个语料库中的其中一份文件的重要程度。这里我们将公式中的参数意义进行了调整,使得调整后的公式能够表示主辅料i对于用户节点j的重要性,即用户对于某种主辅料的喜爱程度。公式中ni,j表示用户j吃过的菜肴中包含主辅料i的个数,knk,j表示用户j吃过的所有菜肴。Dcount表示菜肴总数,j:t经过边权重的赋予,我们得到两个完整的新元路径UMU、UCU,通过这两条元路径可以直观并且较为清晰展现出用户对某些食材或是风味的偏好,通过后续的训练结果以及构造的元路径可以增强本文模型的可解性。元路径引导的异质图网络基于根据本地邻居[46]生成对象嵌入的GCN的基本思想的启发,本文提出了元路径引导的异质图GNN网络。我们利用元路径来获得与用户选择菜肴相关的各个方面的邻居,例如食材、风味等因素,得到的用户和菜肴的嵌入是它们的邻居在不同元路径下的聚合。在节点级别的聚合方面,为了充分利用3.2节赋予的用户-主料-用户、以及用户-辅料-用户两个元路径上边的权重,本文采用带权重的GCN网络进行节点的聚合,充分学习节点多分辨率的表示。加权图的GCN表示(WGCN)GCN[46]是一个多层神经网络,直接在同质图上工作,并根据节点的邻居性质构成节点的嵌入向量。形式上,考虑一个图G=(V,E),其中V和E分别表示节点和边的集合。设X∈Rv×q是一个矩阵,包含具有特征xv∈Rq的节点(每行x是节点v的特征向量)。对于图G,我们引入它的邻接矩阵AH(3-5)在这里,A=D−12AD−1然而GCN并不能直接使用于异质加权图中。因此本文参照[64]中的无向加权图GCN模型,设计了元路径引导的异质图模型。这种GCN模型(后文称为WGCN)可以更好地处理加权图,并通过多层图卷积学习多分辨率的顶点表示,提高了相关推荐的性能。设Hl=h1,h2,hHl+1(3-6)这里度矩阵Dii=λ+j由于图卷积层可以看作是图上的一维Weisfeler-Lehman算法,对于我们的用户饮食数据,卷积过程可以解释为基于相邻顶点的迭代修正顶点的表示。这样,就合并了每个顶点的上下文信息。随着图卷积层的增加,每个顶点将包含更广泛的上下文的信息(与它有更大距离的邻居将在顶点编码中考虑),从而产生顶点的更高级别表示。因此,多层图卷积给出了每个顶点的多分辨率表示,经[64]实验表明,权重在0-1之间的加权图,λ取值在1附近效果最好,由于本文的主辅料-用户图将权重进行了归一化处理,因此在实验中λ取0.95。语义级注意力通常,异质图中的每个节点都包含多种类型的语义信息,特定语义的节点嵌入只能从一个方面反映节点。为了学习更全面的节点嵌入,我们需要融合多个语义,这些语义可以通过元路径来表示。为了解决异质图中元路径选择和语义融合的挑战,采用一种语义级注意,以自动学习不同元路径的重要性。以从GCN\WGCN中学习到的语义特定节点嵌入的z作为输入,首先通过非线性变换来转换语义特定的嵌入。然后,将路径级注意值度量为所有语义特定节点级嵌入重要性的平均值。语义级别的元路径聚合方式如下图3.3所示:图3.3元路径引导的信息聚合对于每个元径P=的重要性可以表示为:(3-7)W是一个路径级注意向量。然后,我们通过Softmax函数规范所有元路径的重要性。(3-8)表示元路径对特定任务的贡献。显然,越高,元路径越重要。以学习到的权重作为系数,我们可以融合这些语义特定的嵌入,以获得最终的嵌入Z如下公式8所示:(3-9)我们通过基于用户或者菜肴的不同元径P=的聚合嵌入来获得融合的用户嵌入或者菜肴嵌入如下公式(3-10)(3-11)所示:(3-10)(3-11)深度输出网络深度输出网络结构当我们获取了用户以及菜肴数据的结构特征表示以后,需要对特征进行下一步的处理并输出最终结果,由于本文的模型任务为点击率预估任务,因此本质上推荐的结果是一个二分类任务,输出的是用户选择候选菜肴的概率。在我们的模型中,我们预测用户可能选择某道菜肴的概率为,以确保输出值是概率。通过对用户和菜肴的邻居进行聚合,得到用户的最终嵌入和菜肴的的最终嵌入。此外,传统方法中还使用了原始静态特征,包括用户的属性和来自交互信息的静态特征(如菜肴的营养价值,成分含量等)。我们将这些静态特征反馈给FM进行特征交叉,以获得静态特征的表示。然后,我们将用户、菜肴和静态特性的嵌入拼接起来。最后,我们将融合嵌入到MLP层中,MLP层作为深度输出网络,其包含两层全连接层结构。设得到的最终融合嵌入表示Z0,全连接层的输出向量为Z1Z2,则为可以表示为:Z(3-12)其中FCi∙表示第i个全连接层,Z0可以表示为Z0=UPReLU(3-13)其中α是可训练的参数,初始化成0.25。MLP层的输出只有一个并且是(0,1)区间的值,表达的含义是用户选择候选菜肴的概率,这里我们使用的是一个sigmod函数:σ(3-14)其中W2与b2为输出层的参数,σZ2输出的最终值即为预测概率y(3-15)其中,f∙是表示上述的两层全连接层目标函数及优化方法本文模型定义的损失函数是对数损失函数:J=(3-16)其中是实例的标签(0或1),yij表示预测的用户选择候选菜肴的概率。y+y-分别表示正实例集和负实例集。整个模型使用Adam优化器进行参数优化[66]。本章小结本章节提出的模型对应公开发表的论文《Meta-pathGuidedHeterogeneousGraphNeuralNetworkForDishRecommendationSystem》主要有以下贡献点:(1)由于传统的推荐系统模型不能够很好地结合菜肴的主辅料特征,另一方面同构图模型会引入一个早期总结的问题,因此本文利用异质图建模了菜肴推荐的场景,构建了两种关于主辅料的元路径,并根据元路径引导的方式构建异质图神经网络模型。(2)根据菜肴数据的特性,主辅料中有大量与菜肴推荐关联性不大的调味品如盐、酱油、糖(少量),这些调味品会影响模型后续的学习,因此本文借助于逆文档词频[63]的概念将异质图中的菜肴与主辅料之间关联的边赋予权重,提高了模型精确度和可解释性,并通过文献[64]的方法,改进了GCN的图卷积层形式。在下一章会介绍关于本章节模型的一些改进。

异质图改进模型由于GCN在训练时需要将邻接矩阵和特征矩阵一起放到内存或者显存里,因此在学习大规模图数据时GCN的训练成本会大幅提升,并且由于GCN一次卷积更新所有节点的特性,一旦有新的节点加入GCN的模型需要重新学习,不适合归纳学习。本章节采用了图采样算法以及GAT模型对本文上述模型进行改进。4.1节主要介绍了本章采用的图采样算法DeepWalk,并在此基础上利用边的权重特征进行了游走概率的修正。4.2节主要介绍了模型采用的聚合函数GAT模型。4.3章节进行第四章的小结。异质图改进模型整体结构如下图4.1所示:图4.1元路径引导的异质图菜肴推荐改进模型图采样算法图神经网络的训练中,使用的数据集可能会是亿量级的数据,而由于GPU/CPU的资源限制,往往无法一次性将整张图一起放入内存或者显存中。因此需要借鉴深度学习中mini-batch的思想。传统深度学习的mini-batch训练每个batch的样本之间无相互关联性,多层样本的计算量固定。但在图神经网络中,每个batch的节点之间存在相关联性,多层计算时会导致计算的复杂度不可控,从而导致资源不足无法训练,因此引入了图采样的概念。下图4.2展示了从0号节点进行图采样得到的子图数据。图4.2图采样示例在第三章提到的模型中,我们重新建模了食品数据的异质图模型,由于每道菜肴都有其对应的n个主辅料种类,因此对于元路径用户-主料-用户、用户-辅料-用户、菜肴-主料-菜肴、菜肴-辅料-菜肴而言,其关系的数量是非常庞大的,模型训练的成本相对增高。因此本文引入了GraphSage的图采样算法,并利用EGES中特定针对带权图随机游走的修正方式,对采样算法进行了完善。对于3.2章节得到的UMU以及UCU元路径的G=(V,E)的带权图,采用随机游走来采样图中的节点邻居。设M表示G的邻接矩阵,Mij表示从节点i指向节点j的边的权重,这里的权重指的是3.2章节中赋予的TF-IDF权重。我们利用基于随机游走生成子图,随机游走的转移概率被定义为pv(4-1)其中Mij表示从节点i指向节点j的边的权重,N+vi表示顶点vi的一阶邻居节点。经过了带权重的随机采样后,一些原本对于用户偏好无过多影响的调味品,如盐、酱油、糖(少量),随机游走算法游走考虑到计算的效率以及模型的准确性,我们对每个顶点采样一定数量的邻居节点作为待聚合的节点,这是一阶的邻居节点,同样的我们可以根据采样到的节点再进行采样就得到了待聚合节点的二阶邻居节点。我们假设采样的数量为n,若节点的一阶邻居节点数量小于n,则采用带有回放的采样方法,直到采样出n个节点。若节点的一阶邻居数量大于n,则采用不带回访的采样方法。模型整体的伪代码可以表示为:hvhfork=1...Kdoforv∈VhNhendhendzv←在每一层的循环k中,对每个顶点v,首先使用v的邻接点的k-1层的embedding表示huk−1来产生其邻居顶点的第k层聚合表示hN(v)k,之后将hN(v)k聚合函数GAT模型GCN由于本质是频域卷积,一次卷积更新所有的节点,计算过程涉及训练的图数据的拉普拉斯矩阵,因此一旦出现了没有出现过的节点,图数据的拉普拉斯矩阵随之变化,之前训练好的基于原图结构模型的数据效果就会变差,所以GCN被称为直推学习模型(TransductiveLearning,TL),相比之下GraphSage以及GAT[65]模型则是归纳学习模型(InductiveLearning,IL),GAT是基于空域的图卷积,基于空域的性质使得其能够逐节点运算实现“卷积”,虽然也用到拉普拉斯矩阵信息,计算过程却已经脱离了拉普拉斯矩阵的束缚,其训练目标是中心节点与邻居节点的“聚和”关系,所以就算出现了没出现过的节点,图结构改变了,训练好的“聚和”关系仍然能够适用。下图4.3展示了图采样以及图聚合过程的示例。图4.3子图聚合过程假设我们采样完成后的子图如图4.3输入图(InputGraph)所示,为了得到目标节点A(TargetNode)的聚合表示,我们利用聚合函数γ(∙)聚合其一阶邻居节点B、C、D的嵌入表示hB1、hC1、hD1,得到一阶邻居节点的聚合嵌入表示hNA1,其中一阶邻居节点的嵌入表示hB1、hC1、h在聚合每个节点的元路径邻居的信息之前,应该注意到每个节点的基于元路径的邻居起着不同的作用,在学习节点嵌入特定任务时表现出不同的重要性。引入节点级注意可以了解基于元路径的邻居对于异构图中每个节点的重要性,并聚合这些有意义邻居的表示,以形成节点的嵌入表示。同时由于GCN在卷积时对所有的邻居节点采用直接聚合的操作,无法根据节点的重要性对节点分配不同的权重,本文上述模型WGCN虽然以学习边权重的角度来学习节点多分辨率的表示,但对于用户-菜肴-用户,菜肴-主料-菜肴,以及菜肴-辅料-菜肴这些没有赋予权重的元路径仍不能很好的解决这个问题。因此本文尝试使用GAT[65]解决这个问题。GAT[65]采用了Attention机制,可以为不同节点分配不同权重,训练时依赖于成对的相邻节点,而不依赖具体的网络结构,可以进一步提升GCN的训练效果。假设图G中包含N个节点,每个节点的特征向量可以表示为,即其中F是每个节点特征的维度,该层最终产生一组新的节点特征其中是变化以后的特征维度。首先,我们在节点上进行自我注意,一种共享注意机制来计算各个节点注意力系数,如下公式(4-2):(4-2)公式(4-2)表明节点j的特性对节

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论