How to Learn Item Representation for Cold-Start Multimedia Recommendation

Du X., Wang X., He X., Li Z., Tang J. and Chua T. How to learn item representation for cold-start multimedia recommendation? MM, 2020.

作者以往的多媒体推荐对于 cold items 在训练阶段没有足够的重视, 提出细分的训练目标加以纠正.

符号说明

  • \(\mathbf{p}\), user embeddings;
  • \(\mathbf{q}\), item embeddings;
  • \(\mathbf{e}_i\), item collaborative (ID) embedding;
  • \(\mathbf{c}_i\), item content embedding

Motivation

  • 在多媒体推荐中, 我们常常用

    \[\mathbf{q}_i = \rho (\mathbf{e}_i, \mathbf{c}_i) \]

    为 item 的 embedding, 其通过函数 \(\rho\) 将 collaborative/content embeddings 融合在一起 (比如通过拼接的方式).

  • 在测试的时候, 对于那些冷启动的 items, 常常使用

    \[\mathbf{q}_i = \rho (\mathbf{0}, \mathbf{c}_i) \]

    来代替.

  • 但是, 由于训练中并没有实际上接触过 \(\rho(\mathbf{0}, \mathbf{c}_i)\) 这种反事实的处理方式, 所以实际上, 可能会导致 train/test 的一个 gap.

  • 如上图所示:

    • \(\mathbf{q}_1\) 是 non-cold item 但是用户 \(\mathbf{p}\) 并不喜欢;
    • \(\mathbf{q}_2\) 是 non-cold item 且用户 \(\mathbf{p}\) 喜欢;
    • \(\mathbf{q}_3\) 是 cold item 且用户 \(\mathbf{p}\) 喜欢.
  • 由于上述的 gap 的存在, 导致简单的设定 collaborative embedding 为 0 并不那么可靠. 我们需要在训练中让模型意识这一点.

Multi-Task Pairwise Ranking (MTPR)

  • 定义

    \[\mathbf{q}_i^N = \rho(\mathbf{e}_i, \mathbf{c}_i), \mathbf{q}_i^C = \rho(\mathbf{0}, \mathbf{c}_i), \]

    分别为 Normal RepresentaionCounterfactual Representation.

  • 对于用户 \(\mathbf{p}_u\), 对于正负样本 \(i, j\), 我们可以得到四种情况下的预测:

    \[\hat{y}_{ui}^N = \phi(\mathbf{p}_u, \mathbf{q}_i^N), \hat{y}_{ui}^C = \phi(\mathbf{p}_u, \mathbf{q}_i^C), \\ \hat{y}_{uj}^N = \phi(\mathbf{p}_u, \mathbf{q}_j^N), \hat{y}_{uj}^C = \phi(\mathbf{p}_u, \mathbf{q}_j^C). \]

  • 此时, 应用 BPR, 得到四种损失:

    \[L_{NN}(u, i, j) = -\log \sigma(\hat{y}_{ui}^N - \hat{y}_{uj}^N), L_{CC}(u, i, j) = -\log \sigma(\hat{y}_{ui}^C - \hat{y}_{uj}^C), \\ L_{NC}(u, i, j) = -\log \sigma(\hat{y}_{ui}^N - \hat{y}_{uj}^C), L_{CN}(u, i, j) = -\log \sigma(\hat{y}_{ui}^C - \hat{y}_{uj}^N). \]

  • 可以理解:

    • NN: 实际上就是最普通的情况, 这种实际上主要针对的是 non-cold items 的优化;
    • CC: 实际上针对的是所有的 items 的优化;
    • NC/CN: 实际上在训练的过程中, 将 cold/non-cold items 的 gap 抹去了.
  • 最后 MTPR 就是这四个损失的加和:

    \[L_{MTPR} = \sum_{(u, i, j) \in \mathcal{D}} \bigg\{ L_{NN} + L_{CC} + L_{NC} + L_{CN} \bigg\}. \]

  • 如上图所示, 作者展示通过 MTPR 训练后的 t-sne 的可视化情况, 此时 cold items 本身成簇, 同时又和 non-cold items 混合在一起.

代码

[official]

posted @ 2024-05-11 14:35  馒头and花卷  阅读(13)  评论(0编辑  收藏  举报