GC-HGNN:一个全局上下文支持的超图神经网络,用于增强基于会话的推荐
发表于:Electronic Commerce Research and Applications(2022)
论文提出了GC-HGNN超图神经网络来提高SBR效果。该模型首先通过在所有会话序列中的条目之间传递信息来学习当前用户的偏好。在此基础上,GC-HGNN模型充分考虑项目的全局上下文信息和局部上下文信息,构建全局会话超图和局部会话图。全局上下文信息由超图卷积神经网络获取,图关注网络通过学习项间的成对关系来计算局部上下文信息。采用和池法将两种信息融合,利用融合后的信息完成预测。本文提出了一种全局上下文支持的超图增强图神经网络(GC-HGNN),该网络利用超图卷积神经网络(HGCN)和图注意网络(GAT)来捕捉复杂的高阶关系和项目之间的成对过渡关系,即:项目的全局和局部级别上下文信息的特征表示。
论文中指出当前存在的问题:
(1)
没有考虑其他session对当前session的影响,如图,假设当前session为session2,当前iphone11同时出现在了session1和session3,假设考虑全局session,session2的iphone11可能会转化为air pods或watch。
(2)会话序列被建模为一个简单的会话图,GNN只能捕获项目之间的成对传递关系,而不能获取复杂的高阶不成对关系。
文中给出的解决方法:作者提出了一种全局上下文支持的超图增强图神经网络GC-HGNN,它可以有效地学习全局和局部上下文信息,并通过融合这两个层次的信息获得更好的会话特征。
Preliminaries
图的构建
文中定义了两个图模型,全局图和局部图,以表示当前序列中不同级别的项之间传递信息。全局图表示所有序列中项目-项目关系的复杂高阶信息,局部图表示当前序列中成对项目-项目关系的传递信息。
全局图:用一个无向超图来表示全局信息,其超边连接任意数量的顶点。G=(V,E,W)分别代表节点集,超边集和超边的权重。W可以定义为一个对角矩阵(
表示一个序列),超图可以表示为一个关联矩阵
,其中每项定义为
根据超图的定义,我们可以计算两个对角矩阵:超边的度矩阵,和所有顶点的度矩阵
。
在超图中,如果任何两条超边具有公共顶点,则它们是连接的。此外,超边中的所有顶点都是完全连接的,因此超图包含项目之间的高阶未配对关系,可用于全局级别的项目特征表示。
局部图:描述给定会话中项目单击顺序的有向图。图中C部分的局部图中每个节点都有一个自连接,以便在建模中融合其自身信息。局部图中可能有四种类型的边,同时,所有节点都与隐式动态中间节点
相连,使得模型能够通过少量层捕获丰富的节点信息。
模型
在GC–HGNN模型中,会话序列分别被建模为全局图和局部图。全局图或超图用于表示所有会话中项目之间的高阶未配对关系,局部图用于表示当前会话中项目之间的成对传递关系。图中显示了GC–HGNN模型的架构,该模型由四个模块组成:模块I为HGCN,用于捕获项目之间的复杂高阶信息,以学习项目的全局特征表示;模块II为GAT,通过捕获当前会话中相邻节点的信息来计算局部级特征表示;模块III是和池化操作,负责聚合从全局和局部图中获得的表示,并通过注意力网络计算最终会话表示;模块IV是最终预测层。
HGCN层
HGCN层用于获取所有会话中项目之间的高阶关系。定义如下:超图卷积可以看成是顶点-超边-顶点的传递。
表示从顶点到超边的聚合信息。然后与H相乘以从相反方向进行聚合信息。最后,通过HGCN获得项目在每一层的嵌入。对于给定的项目vi,从第0层到第1层,每个级别都将获得vi的表示。对hlvi的结果执行以下平均操作将获得最终的全局级别表示:
GAT层
GAT网络用于计算不同邻居节点对当前节点的影响,影响程度由注意机制计算的权重表示,以学习项目的成对表示。给定一个节点,节点
对其的影响权重为:
;a*是权重向量。
通过权重矩阵来表示图中所有节点对vi的影响,对于节点vi,根据其与其他节点之间的连接类型,可以通过训练得到四个权重矩阵,分别为,用softmax函数做归一化处理,使得不同节点之间的权重有可比性:
通过线性组合计算节点vi的特征表示:
通过上述计算,可以将其他节点对当前节点的信息与当前节点自身的信息融合在一起,作为当前节点的特征表示。
信息聚合层
用和池化操作:,
表示session中每个项的最终表示。最终得到session中的项目表示
。
采用反向位置编码,用矩阵p=[p1,p2,…,pl]表示会话中的项目位置嵌入,对于给定会话中的项目vi,在将两个级别的项目信息和位置矩阵p串联后,执行非线性变换操作来计算vi的位置嵌入,表示为
平均会话中涉及的项目信息:
基于位置嵌入信息和会话表示s*,用软注意机制来计算权重:
通过线性组合操作获得会话的最终表示:
预测层
实验及结果
使用数据集:(1)Diginetca(2)Tmall(3)Nowplaying
问题一:在真实数据集上,GC–HGNN是否优于最先进的SBR基线?
问题2:基于超图建模的全局级上下文信息是否增强了最终推荐功能?模型中每个模块的性能如何?
为了证明每个模块对推荐结果的影响,在三个数据集上测试了GC–HGNN、GC–HGNN-G、GC–HGNN-L和GC–HGNN-P的三个变体,它们仅使用本地上下文信息(GC–HGNN-G)或全局上下文信息(GC–HGNN-L),或不考虑反向位置嵌入信息(GC–HGNN-P),并将其实验结果与完整的GC–HGNN模型进行了比较。
问题3:不同的超参数设置(例如节点丢失)如何影响GC–HGNN的准确性?
图中显示了GC–HGNN在三个数据集不同干旱率下的实验性能,这说明了模型在三个数据集上的性能在开始时随着droupout的增加而增加,但当droupout增长到一定值时,模型性能开始下降。换句话说,模型在曲线拐点处的性能最好。特别是在Tmall、Diginetica和Nowplaying数据集中,我们的GC–HGNN模型在droupout分别为0.7、0.5和0.9时表现最好。因此,我们在三个数据集上的实验中将droupout设置为相应的值。
例子:在推荐session3最有可能与之互动的下一本书时,我们的模型考虑了session1和session2的互动顺序对session3的影响,因此向session3推荐深度学习书籍。