首页 > 其他分享 >Graph-less Collaborative Filtering

Graph-less Collaborative Filtering

时间:2023-10-06 11:22:23浏览次数:37  
标签:Filtering mathbf Collaborative Graph 模型 ij text mathcal bar

目录

Xia L., Huang C., Shi J. and Xu Y. Graph-less collaborative filtering. WWW, 2023.

从 GNN 的教师模型中蒸馏结构信息到一般的不带图结构的学生模型中去.

符号说明

  • \(\{u_1, u_2, \ldots, u_I\}\), users;

  • \(\{v_1, v_2, \ldots, v_J\}\), items;

  • \(\mathbf{A} \in \mathbb{R}^{I \times J}\), interaction matrix, \(a_{ij} = 1\) 表示观测到的, 否则为 0.

  • \(\mathbf{\bar{h}}\), 初始 embedding;

  • \(y_{ij}\), \(u_i, v_j\) 的分数;

  • 教师模型:

    \[y_{ij} = \mathbf{h}_i^T \mathbf{h}_j, \: \mathbf{H} = \text{G-Embed}(\mathcal{G}, \mathbf{\bar{H}})= (\text{Agg}(\text{Prop}(\mathcal{G}, \mathbf{\bar{H}})))^L. \]

  • 学生模型:

    \[y_{ij} = \mathbf{h}_i^T \mathbf{h}_j, \: \mathbf{h}_i = \text{M-Embed}(\mathbf{\bar{h}}_i), \mathbf{h}_j = \text{M-Embed}(\mathbf{\bar{h}}_j). \]

  • \(\text{G-Embed}, \text{M-Embed}\) 分别是 GNN 和普通的 MLP.

SimRec

  • 我们的教师模型, 具体的 embedding 部分为:

    \[\mathbf{H}^{(t)} = \sum_{l=0}^L \mathbf{H}_l^{(t)} \in \mathbb{R}^{(I+J) \times d}, \quad \mathbf{H}_{l+1}^{(t)} = \mathbf{D}^{-1/2} (\mathbf{\bar{A}} + \mathbf{I}) \mathbf{D}^{-1/2} \cdot \mathbf{H}_l^{(t)}. \]

  • 学生模型的 embedding 的具体结构为:

    \[\mathbf{h}_i^{(s)} = \text{FC}^{L'}(\mathbf{\bar{h}}_i^{(s)}) = \delta(\mathbf{W} \mathbf{\bar{h}}_i^{(s)}) + \mathbf{\bar{h}}_i^{(s)} \in \mathbb{R}^{d}. \]

    其中 \(\delta(\cdot)\) 表示 LeakyReLU.

Prediction-Level Distillation

  • 均匀采样 triplets \(\mathcal{T}_1 = \{(u_i, v_j, v_k)\}\), 然后

    \[z_{i, j, k} = y_{ij} - y_{ik} = \mathbf{h}_i^T \mathbf{h}_j - \mathbf{h}_i^T \mathbf{h}_k. \]

  • 这部分的蒸馏损失为:

  • 其中 \(\text{sigm}\) 表示 sigmoid 激活函数, \(\tau_1\) 表示 temperature factor. 显然, 这部分实际上就是要求学生模型的预测差异尽可能去接近教师模型的预测差异.

Embedding-level Distillation

  • 这部分采用普通的对比损失 InfoNCE, 要求学生模型的 embedding 尽可能和对应的教师模型的高阶信息接近, 而和其它的远离:

  • 注意到, 我们仅仅利用教师模型中的 \(\sum_{l=2}^L \mathbf{h}_{l}^{(t)}\) 部分, 以期吸收高阶信息.

Adaptive Contrastive Regularization

  • 设计这部分损失, 作者主要是希望促使 embedding 不要收到 over-smoothing 的影响, 于是:

  • 其中, 权重 \(\omega_i\) 定义为:

总的损失

  • 首先对于教师模型采用普通的 BPR loss.

  • 对于学生模型, 采用如下的损失训练:

    \[\mathcal{L}^{(s)} = \mathcal{L}_{rec} + \lambda_1 \mathcal{L}_1 + \lambda_2 \mathcal{L}_2 + \lambda_3 \mathcal{L}_3 + \lambda_4 \mathcal{L}_4, \\ \mathcal{L}_{rec} = -\sum_{(u_i, v_j) \in \mathcal{\mathcal{T}_2}} y_{ij},\quad \mathcal{L}_4 = \|\mathbf{\bar{H}}^{(s)}\|_F^2. \]

    其中 \(\mathcal{T_2} = \{(u, v)\}\) 为 observed pairs.

代码

[official]

标签:Filtering,mathbf,Collaborative,Graph,模型,ij,text,mathcal,bar
From: https://www.cnblogs.com/MTandHJ/p/17744349.html

相关文章

  • 论文阅读:iterator zero-shot llm prompting for knowledge graph construction
    Abstract知识图谱,一种相互连接和可解释的结构。生成需要更多的人力、领域知识、并需要适用于不同的应用领域。本论文提出借助LLM,通过0-shot和外部知识不可知的情况下生成知识图谱。主要贡献:迭代的prompting提取最终图的相关部分0-shot,不需要examples一个可扩展的解决方案,......
  • 解决警告UserWarning: Glyph 38388 (\N{CJK UNIFIED IDEOGRAPH-95F4}) missing from
    这个警告是由于在绘图时使用了当前字体不支持的字符,通常出现在使用非英文字符(比如中文、日文等)时。为了解决这个问题,你可以尝试以下几种方法:方法一:选择支持中文的字体在绘图之前,指定一个支持中文的字体。例如,可以使用matplotlib.rcParams来指定字体,示例如下:importmatplotlib.pyplo......
  • G. Counting Graphs
    G.CountingGraphs题意:添加几条线段,使得图仍保持原先的最小生成树通过画图我们发现,要添加u->v的线段,线段必须大于u->v的路径内的最大值,不然会破坏原先的最小生成树。那么该怎么维护路径内的最大值呢?方法:1.我们对边的大小进行排序,这样当前边一定大于等于之前的边,只要对当前边......
  • kvm笔记2-network filtering
      过滤规则    ......
  • 特征值问题——polynomial filtering 技术
    介绍为什么会有polynomial呢?因为特征值求解的常用技术比如幂迭代等,会用到polynomial,这些多项式迭代可以写成这种形式,,q代表polynomial的度数。我们因此需要一些近似(approximation)技巧构造一个好的多项式$p_q$。Filtering方法的用处:增加收敛性,从而达到加速的效果。Filtering方法......
  • 并行计算框架 Taskflow && CGraph
      taskflow/taskflow:AGeneral-purposeParallelandHeterogeneousTaskProgrammingSystem(github.com) ChunelFeng/CGraph:【AsimpleC++DAGframework】一个简单好用的、无三方依赖的、跨平台的、收录于awesome-cpp的、基于流图的并行计算框架。欢迎star&for......
  • prism软件-graphpad prism软件下载 安装包下载方式
    GraphPadPrism提供了丰富的工具,用于创建科学的图表,并生成相关统计数据等等。此外,最新版本的GraphPadPrism软件为GraphPadPrism9.3.0,功能强大,同时也很容易上手,能够满足绝大部分医学科研绘图的需求。软件地址:看置顶贴软件介绍GraphPadPrismMAC版是一款高效易用的科研绘图工具,它......
  • OWASP Top 10漏洞解析(2)- A2:Cryptographic Failures 加密机制失效
    作者:gentle_zhou原文链接:<https://bbs.huaweicloud.com/blogs/405125>Web应用程序安全一直是一个重要的话题,它不但关系到网络用户的隐私,财产,而且关系着用户对程序的新人。随着Web应用程序功能持续增加,复杂性不断提高,这些程序也面临着越来越多的安全威胁和挑战。为了帮助这些应用程......
  • [NIPS 2021]Do Transformers Really Perform Bad for Graph Representation
    [NIPS2021]DoTransformersReallyPerformBadforGraphRepresentation微软提出的graphtransformer,名叫GraphormerTransformer通常,transformerlayer有一个self-attentionmodule和一个position-wisefeed-forwardnetwork(FFN)组成。首先将特征映射成三组:\[Q=HW_Q,K=......
  • 3D力导向树插件 3d-force-graph
    3d-force-graph是什么?一个Web组件,使用强制导向的迭代布局来表示3维空间中的图形数据结构。使用ThreeJS /WebGL进行3D渲染,使用d3-force-3d或ngraph作为底层物理引擎。 3d-force-graph可以做些什么?参考以下效果:哔哩哔哩:https://www.bilibili.com/video/BV1WS4y1s7st......