• 【kg推荐->精读】KGAT: Knowledge Graph Attention Network for Recommendation


    Kgat

    KGAT: Knowledge Graph Attention Network for Recommendation

    Abstract

    除了modeling user-item交互,side information也需要考虑。

    传统方法,比如FM,每一次交互都是独立的实例,并对side information进行编码。它忽略实例/items之间的关系(例如,电影导演也是另一部电影的演员)。

    KG,将items和它们的属性联系起来,打破了独立的interaction假设。在KG和user-item图的混合结构中,**高阶关系(用一个或多个链接属性 连接两个items)**是成功推荐的关键因素。

    本文提出Kgat,知识图谱注意力网络。它以端到端的方式 显式建模高阶连通性。

    • 它递归地从node的邻居(可以是users, items, attributes)传播embeddings,以refine the node’s embedding,并使用注意力机制来区分邻居的重要性。
    • 以前基于KG的推荐:要么提取路径来开发高阶关系,要么用正则化隐式建模。

    Kgat优于Neural FM[11]和RippleNet[29]。

    关键词

    • Collaborative Filtering
    • Recommendation
    • Graph Neural Network
    • Higher-order Connectivity
    • Embedding Propagation
    • Knowledge Graph

    1 Introduction

    这里介绍了kg、side information和high order connectivity

    较早的推荐模型:CF[12, 13, 32]。它无法建模side information[30, 31],例如item attributes, user profiles, contexts,在用户和item交互较少的稀疏情况下表现不佳。

    有一种方法,将side information、用户id、item id转换为通用特征向量,用在监督学习(SL)[7, 24, 41],代表性模型:FM, NFM, Wide&Deep, xDeepFM等。


    问题:每个交互都被视为独立的数据实例,不考虑它们之间的关系。这使得它们不足以从用户的集体行为中提取基于属性的协作信号。

    如图1所示,用户u1和电影i1之间存在交互,由导演e1指导。

    • CF关注同样观看i1的类似用户的历史,即u4和u5。
    • 而SL方法强调相似的items,比如都有属性e1,如i2。

    这两种 互相成为推荐的补充,同时形成目标user和item的high-order relationship。

    在这里插入图片描述

    现有的SL方法无法联合它们,无法考虑high-order connectivity,例如黄色圈中的用户观看了由同一人e1导演的其他电影,或者灰色圈中有other common relations(都有属性e1)的item。

    KG: A KG is typically described as a heterogeneous network consisting of entity-relationentity triplets, where the entity can be an item or an attribute.

    为了解决这个局限性,一种方法是采用item side information的图-KG[3, 4],用于构建预测模型。将kg和user-item graph混合为collaborative knowledge graph(CKG),如图1。它利用CKG中的高阶关系,例如long-range connectivities:

    在这里插入图片描述

    分别代表黄圈、灰圈。

    high order要注意的点:

    1. 随着order(阶数)增加,与目标node有关的node数量很大
    2. 不同高阶关系对预测的贡献不均衡,需要模型加权(或选择)它们

    现有基于CKG进行推荐,大致有2类

    1. 基于路径的[14,25,29,33,37,39]
    2. 基于规则的[5,15,33,38]

    有关这两种方法,后期多看论文

    论文方法的提出:

    从图神经网络获得的灵感[9,17,28]。两种设计解决两种挑战:

    1. 递归embedding propagation,根据邻居的embedding更新node的embedding,并且递归地执行这种embedding propagation,以线性时间捕获高阶连通性
    2. attention-based aggregation。使用neural attention machanism去学习传播过程中每个邻居的weights,从而级联传播的attention weights可以揭示高阶连通性的重要性。
    • 与基于路径相比,avoid the laborintensive process of materializing paths。
    • 与基于正则化相比,factors high-order relations into the predictive model。

    2 Task Formulation

    一些概念

    • User-Item Bipartite Graph
    • Knowledge Graph
    • Collaborative Knowledge Graph

    描述了推荐任务balabala。

    • High-Order Connectivity
      • 基于相似用户
      • 基于item属性相同。但传统的FM NFM没有充分探索高阶关系。

    3 Methodology

    Kagt,图2所示,3个主要组件组成。

    在这里插入图片描述

    1. embedding layer,将node参数化为 向量,并保留CKG结构
    2. attentive embedding propagation layers,递归根据邻居embedding更新node embedding,并更新每个邻居权重
    3. prediction layer,聚合user和item的表示,输出匹配分数

    3.1 Embedding Layer

    • knowledge graph embedding,本文使用了TransR[19]。

    Q1. knowledge graph embedding技术是什么?TransR[19]❤

    3.2 Attentive Embedding Propagation Layers

    Q2. 图卷积[17]?图注意力网络[28]?

    去查查教程。

    • 基于图卷积网络[17]的架构,沿着高阶连通性递归传播embeddings
    • 利用图注意力网络的思想[28],生成级联传播的注意权重,以显示 such连通性 的重要性。
    • 单层 = 3个组件。information propagation,knowledge-aware attention,information aggregation。

    Q3. 这3个组件的原理?❤

    三个部分的详细介绍balabala。

    3.3 Model Prediction

    多层->layer-aggregation [34] (concatenate)->inner product(内积)

    Q4. 什么是layer-aggregation?

    3.4 Optimization

    • BPR loss[22]

    在这里插入图片描述

    4 Experiments

    4.2.2 Baselines

    • SL(FM, NFM)
    • regularization-based(CFKG, CKE)
    • path-based(MCRec, RippleNet)
    • graph neural network-based(GC-MC)

    4.3 Performance Comparison

    在这里插入图片描述

    5 Conclusion And Future Work

    high-order connectivity with semantic relations in CKG for knowledge recommendation

    Kgat

    • explicity models the high order connectivites in CKG in an end-to-end fashion
    • ✅embedding propagation layer:自适应地传播来着邻居节点的embedding,以更新节点的表示

    我的总结/疑问

    Q1-Q4

  • 相关阅读:
    Loki | 数据过期自动删除策略设计
    c++之类与对象
    error20221125--ssm项目用maven打包报错“找不到程序包 java.lang”或者“程序包javax.crypto不存在”,以及解决方案
    PyQt5_股票K线图相似度工具
    第15章、 友元、异常和其他
    RSA密码系统的特定密钥泄露攻击与Coppersmith方法的应用
    如何在 EtherScan 上读取智能合约
    [ 复习 ] - TypeScript 基础类型
    身份证号码,格式校验:@IdCard(Validation + Hutool)
    第36章_瑞萨MCU零基础入门系列教程之步进电机控制实验
  • 原文地址:https://blog.csdn.net/bill2766/article/details/127453909