• 【GCN-RS】MCL: Mixed-Centric Loss for Collaborative Filtering (WWW‘22)


    MCL: Mixed-Centric Loss for Collaborative Filtering (WWW’22)

    Pointwise和pairwise损失函数挖掘的信息太少了,只是采样样本,然后更新权重

    为了从可用的偏好信息中挖掘更多的信号,考虑了难样本和全局信息。

    先采集难样本

    E E E是欧式距离。

    难正样本是指正样本的距离比 距离最小的负样本的距离减阈值 还要大的样本。
    E u j > min ⁡ k ∈ N u E u k − ϵ E_{u j}>\min _{k \in N_{u}} E_{u k}-\epsilon Euj>kNuminEukϵ
    难负样本是指负样本的距离比 距离最大的正样本的距离加阈值 还要小的样本。
    E u k < max ⁡ j ∈ P u E u j + ϵ E_{u k}<\max _{j \in P_{u}} E_{u j}+\epsilon Euk<jPumaxEuj+ϵ
    在这里插入图片描述

    混合中心loss (CML)

    采集得到的正负样本集合分别为: P u s , N u s \mathrm{P}_{\mathrm{u}}^{\mathrm{s}}, \mathrm{N}_{\mathrm{u}}^{\mathrm{s}} Pus,Nus。在训练过程中,给定一个batch B(包含m个用户),定义损失函数:
    L M C L = 1 α log ⁡ [ 1 + 1 m ∑ u ∈ B ∑ j ∈ P u s e α ( E u j + λ p ) ] + 1 β log ⁡ [ 1 + 1 m ∑ u ∈ B ∑ k ∈ N u s e − β ( E u k + λ n ) ]

    LMCL=1αlog[1+1muBjPuseα(Euj+λp)]+1βlog[1+1muBkNuseβ(Euk+λn)]" role="presentation" style="position: relative;">LMCL=1αlog[1+1muBjPuseα(Euj+λp)]+1βlog[1+1muBkNuseβ(Euk+λn)]
    LMCL=α1log 1+m1uBjPuseα(Euj+λp) +β1log 1+m1uBkNuseβ(Euk+λn)
    解释为什么设计这个loss,这个loss对于一对正样本的影响:
    ∂ L ∂ E u j = w u j + = 1 m ⋅ e α E u j e − α λ p + 1 m ∑ u ′ ∈ B ∑ i ∈ P u ′ s e α E u ′ i = 1 m ⋅ 1 w 1 + ( u , j ) + w 2 + ( u , j ) + w 3 + ( u , j )
    LEuj=wuj+=1meαEujeαλp+1muBiPuseαEui=1m1w1+(u,j)+w2+(u,j)+w3+(u,j)" role="presentation" style="position: relative;">LEuj=wuj+=1meαEujeαλp+1muBiPuseαEui=1m1w1+(u,j)+w2+(u,j)+w3+(u,j)
    EujL=wuj+=m1eαλp+m1uBiPuseαEuieαEuj=m1w1+(u,j)+w2+(u,j)+w3+(u,j)1

    在这里插入图片描述

    • 用户-物品中心 w 1 + w_1^+ w1+):仅和用户-物品的距离有关,越远 w 1 w_1 w1越小,loss越大。
    • 同类型中心 w 2 + w_2^+ w2+):计算当前正样本物品 j j j与用户其他正难样本之间的关系。如果正样本物品 j j j与用户的距离比其他难正样本的距离更大,则 w 1 w_1 w1越小,loss越大。这类似于对物品embedding空间加一个约束,希望相同类型物品与用户的距离相似(在embedding空间,同一个用户交互过的物品,围绕在用户附近。)
    • 同批次中心 w 3 + w_3^+ w3+):和同一个batch中的其他用户进行对比,提供了跨用户的额外一致性,希望每个用户和其正样本的距离都相同。

    在这里插入图片描述

  • 相关阅读:
    基于体系结构-架构真题2022(四十一)
    VB.NET—窗体引起的乌龙事件
    TypeScript基础语法
    Python中8种经典数据结构 之 列表
    【Scala专栏】字符串与集合
    【实用软件】【VSCode】使用技巧大全(持续更新)
    基于Hive的搜狗搜索日志与结果Python可视化设计
    数据同步工具Sqoop
    QT:使用自定义的信号与槽的方式
    uniapp的配置文件、入口文件、主组件、页面管理部分
  • 原文地址:https://blog.csdn.net/yanguang1470/article/details/125903380