图神经网络在商品推荐中的创新应用

本文介绍了一种基于图神经网络的相关商品推荐新方法,通过双向节点嵌入和新型损失函数实现性能提升,解决了关系不对称性和冷启动问题,并在实验中显著超越现有基准模型。

图神经网络在相关商品推荐中的应用

推荐相关商品(例如为手机推荐手机壳)是电子商务网站的基本功能,既能节省客户时间,又能带来更满意的购物体验。在今年欧洲机器学习会议(ECML)上,提出了一种使用有向图上的图神经网络(GNN)来推荐相关商品的新方法。实验表明,该方法在命中率和平均倒数排名方面比最先进的基线模型提高了30%至160%,这些指标通过比较模型预测与实际客户联合购买行为得出。该模型已开始在生产环境中部署。

技术挑战与解决方案

使用图神经网络进行相关商品推荐的主要难点在于产品间关系的不对称性。向购买手机的客户推荐手机壳完全合理,但向购买手机壳的客户推荐手机则不太合理。有向图可以通过有向边捕捉这种不对称性,表示两个图节点之间的关系仅单向流动。但有向性难以被GNN嵌入(即GNN生成的向量表示)捕获。

为解决此问题,该方法为每个图节点生成两个嵌入:一个表征其作为相关商品推荐源的角色,另一个表征其作为目标的角色。同时提出一种新型损失函数,鼓励相关商品推荐(RPR)模型选择出站图边上的商品,并阻止其推荐入站边上的商品。

图构建与数据处理

在产品图中,节点代表产品,节点数据包含产品元数据(产品名称、类型、描述等)。为添加方向边,使用联合购买数据(即哪些产品倾向于被一起购买)。这些边可以是单向的(如一个产品是另一个的配件),也可以是双向的(如产品被联合购买但彼此不依赖)。

然而,这种方法可能将选择偏差引入模型。选择偏差在此背景下指客户对某产品的偏好选择反映了该产品更大的曝光度。为抵消此风险,图中还包含从联合查看数据(即相同产品查询下倾向于被一起查看的产品数据)衍生的双向边。联合查看数据有助于识别相似产品。因此,产品图具有两种类型的边:表示联合购买的边和表示相似性的边。

GNN嵌入生成

对于产品图中的每个节点,GNN生成一个嵌入,捕获节点邻近区域的信息。使用两跳嵌入,意味着同时考虑节点的直接邻居和这些邻居的邻居的信息。

模型的关键在于生成独立源和目标嵌入的过程。对于每个节点,源嵌入考虑所有相似性关系但仅考虑出站联合购买关系;相反,目标嵌入考虑所有相似性关系但仅考虑入站联合购买关系。

GNN是多层的,每层接收下层产生的节点表示并输出新的节点表示。在第一层,表示仅是产品元数据,因此源和目标嵌入相同。从第二层开始,源和目标嵌入出现分化。

此后,每个节点的源嵌入考虑与其具有出站联合购买关系的节点的目标嵌入,以及与其具有相似性关系的节点的源嵌入;每个节点的目标嵌入考虑与其具有入站联合购买关系的节点的源嵌入,以及相似节点的目标嵌入。

模型训练与评估

使用对比学习以自监督方式训练GNN,将给定节点的嵌入与其共享边的节点拉近,同时将给定节点的嵌入与随机选择的未连接节点推远。损失函数的一项还强制源和目标嵌入的不对称性,促进包含通过出站边连接的目标节点信息,并惩罚包含通过入站边连接的目标节点信息。

GNN训练完成后,选择k个最佳相关商品推荐仅需在嵌入空间中识别最接近源节点的k个节点。实验中将该方法与两个性能最佳的前代模型进行比较,使用top 5、10和20推荐的命中率和平均倒数排名,在两个不同数据集上共进行12项实验。发现该方法在所有实验中均优于基准模型,且通常优势显著。

技术优势

由于GNN将产品元数据作为输入(以及图结构),还有助于解决冷启动问题,即如何处理刚引入目录的新产品。最后,引入一种数据增强方法,帮助克服选择偏差问题,该问题源于信息呈现方式的差异。

该方法通过双向嵌入和新型损失函数的设计,显著提升了相关商品推荐的准确性和效率,为电子商务推荐系统提供了新的技术路径。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计