个性化推荐系统致力于根据用户的偏好找到他们可能购买的产品。到目前为止,推荐系统已广泛应用于许多在线服务中,如电子商务(例如Amazon、Alibaba)[1]、在线视频网站(例如Youtube、Netflix)[2]和社交网络应用程序(例如Facebook),这些服务帮助用户发现感兴趣的项目。推荐系统的核心挑战是根据历史交互数据估计用户采用某个项目的可能性。在各种技术中,协同过滤(CF)已成为推荐的基础方法,它基于这样的假设:行为相似的用户会对项目有相似的偏好[3]、[4]。CF中的一个常见范式是根据观察到的用户-项目交互数据将用户和项目投影到一个低维的潜在表示空间中,然后根据学习到的表示来预测用户偏好[5]、[6]。
随着图神经网络(GNN)的快速发展,由于它们在建模关系数据的结构信息方面具有强大的能力[7],一些研究应用GNN来捕捉用户与项目之间的成对关系以学习它们的表示[8],其中基于交互数据构建了一个二分图。为了进一步利用用户之间的关系进行推荐,还引入了来自社交网络的社会关系来描述用户之间的成对关系[9],并在GNN中使用基于社交网络的用户图来借助这些关系学习更好的用户表示。然而,GNN的局限性在于它只考虑了涉及两个用户的关系,而忽略了多个用户之间普遍存在的高阶关系。为了解决这个问题,采用了超图来建模用户之间的高阶关系,因为超边能够连接多个顶点[10]。例如,在[11]中,同时利用了交互历史和社交网络来构建超图,以建模用户-项目之间的成对关系和用户之间的高阶关系。
然而,在推荐系统中,不仅用户之间存在复杂的关系,项目之间也存在复杂的关系,这些关系对推荐有益。图1展示了一个例子来说明这一点。在图中,用户A和B购买了许多相同的产品(如键盘、笔记本电脑、显示器),因为他们都是信息技术从业者。如果我们只考虑他们的共同购买历史而不考虑产品之间的关系,那么向用户B推荐游戏控制器、向用户A推荐DVD播放器是合理的。但实际上,用户A对玩视频游戏感兴趣,因为她购买了游戏控制器,而用户B对看电影感兴趣,因为他购买了DVD播放器。用户购买产品的根本原因(例如在信息技术领域工作、玩视频游戏、看电影)可以通过涉及多个产品的关系来表征。基于此,用户A很可能购买游戏机,而用户B可能会购买音箱。因此,考虑多个用户和项目之间的关系是至关重要的。
受到上述讨论的启发,我们试图学习涉及多个用户和项目的高阶用户-项目关系,这些关系可以自然地用超边来表示。与图中的成对连接相比,超图中的超边可以连接多个顶点来表征复杂的关系。为此,我们提出了一种从交互数据中提取高阶用户-项目关系的方法,称为高阶用户-项目关系学习(HOUR)。我们首先通过矩阵分解识别用户和项目之间的潜在语义因素作为超边来捕捉高阶关系,然后构建超图来描述这些关系。之后,我们设计了一个超图卷积网络,基于交互数据和提取的超图结构来学习用户、项目以及它们的高阶关系的表示。具体来说,我们扩展超图以获得多个图用于信息聚合,在这个过程中,用户、项目和关系被视为顶点,它们之间的直接连接得到了很好的保留。通过这种方式,可以聚合用户、项目和关系的信息,以便在不需要中间连接器的情况下学习它们的表示。我们基于贝叶斯个性化排名损失和交互历史上的重构损失来训练模型。
本文的主要贡献总结如下:
•我们提出了一种名为HOUR的方法,从交互数据中提取高阶用户-项目关系用于推荐。具体来说,我们识别潜在的语义因素作为超边来捕捉用户和项目之间的关系,然后构建超图来描述这些关系。
•我们扩展超图以获得多个图用于信息聚合,并基于超图卷积网络学习用户、项目以及它们在高阶表示空间中的综合表示。
•我们在四个真实世界数据集上进行了广泛的实验,以证明我们提出方法的有效性。实验结果表明,我们的模型在性能上超过了现有的最佳基线。