论文《How to Learn Item Representation for Cold-Start Multimedia Recommendation》阅读

论文《How to Learn Item Representation for Cold-Start Multimedia Recommendation》阅读

  • 论文概况
  • 方法论
    • 嵌入层
    • 预测层

今天简要介绍一下ACM MM 2020的多模态推荐模型 MTPR,文章名称《How to Learn Item Representation for Cold-Start Multimedia Recommendation》,由中科大何向南老师组完成,旨在解决面向多模态推荐背景下冷启动问题。

论文概况

本文模型相对简单,考虑主动将物品向量分成两部分,一部分表示interaction,一部分表示feature,冷启动物品由于没有过interaction,所以直接将两个向量拼接完成预测就会不准确(因为在训练阶段冷启动用户的interaction embedding做全0处理 )。

作者的做法就是把embeding分成两部分,直接将物品的interaction embedding赋零表示无交互,然后使用多任务同时训练,完成 MTPRMulti-Task Pairwise Ranking)。

论文《How to Learn Item Representation for Cold-Start Multimedia Recommendation》阅读_第1张图片

作者从反事实思维(Counterfactual Thinking)角度出发,思考物品向量变为冷启动物品会如何影响推荐模型性能表现。

方法论

整个模型相对简单,就是在原来一个物品一个embedding的基础上,将embedding分成两个,一个标准向量(normal representation),表示为 q i N \mathbf{q}_{i}^{N} qiN ;一个反事实向量(counterfactural representation),表示为 q i C \mathbf{q}_{i}^{C} qiC

嵌入层

用户向量表示为 p u \mathbf{p}_{u} pu,损失函数使用BPR损失。

具体来说,针对每个物品,使用两部分拼接的形式表示,前一部分是 e i \mathbf{e}_{i} ei ,后一部分是 c i \mathbf{c}_{i} ci,分别表示 interaction 和 multimodal feature。

q i N = e i ∥ c i \mathbf{q}_{i}^{N} = \mathbf{e}_{i} \| \mathbf{c}_{i} qiN=eici

q i C = 0 ∥ c i \mathbf{q}_{i}^{C} = \mathbf{0} \| \mathbf{c}_{i} qiC=0ci

q i C \mathbf{q}_{i}^{C} qiC 的意思就是我直接赋零,保持在feature上的一致性。

预测层

正例有一个N,一个C;反例有一个N,一个C。和用户向量进行组合得到4个预测结果,分别如下:

y ^ u i N = ϕ ( p u o , q i N ) , y ^ u i C = ϕ ( p u o , q i C ) , y ^ u j N = ϕ ( p u o , q j N ) , y ^ u j C = ϕ ( p u o , q j C ) . \begin{aligned} \hat{y}_{u i}^{N} &= \phi\left(\mathrm{p}_{u}^{o}, \mathrm{q}_{i}^{N}\right),\\ \hat{y}_{u i}^{C} &= \phi\left(\mathrm{p}_{u}^{o}, \mathrm{q}_{i}^{C}\right), \\ \hat{y}_{u j}^{N} &= \phi\left(\mathrm{p}_{u}^{o}, \mathrm{q}_{j}^{N}\right),\\ \hat{y}_{u j}^{C} &= \phi\left(\mathrm{p}_{u}^{o}, \mathrm{q}_{j}^{C}\right) . \end{aligned} y^uiNy^uiCy^ujNy^ujC=ϕ(puo,qiN),=ϕ(puo,qiC),=ϕ(puo,qjN),=ϕ(puo,qjC).

正例、负例两两组合得到四个损失函数,对应四个任务,分别如下:

L N N ( u , i , j ) = − ln ⁡ σ ( y ^ u i N − y ^ u j N ) , L C C ( u , i , j ) = − ln ⁡ σ ( y ^ u i C − y ^ u j C ) , L N C ( u , i , j ) = − ln ⁡ σ ( y ^ u i N − y ^ u j C ) , L C N ( u , i , j ) = − ln ⁡ σ ( y ^ u i C − y ^ u j N ) . \begin{aligned} L_{N N}(u, i, j) &= -\ln \sigma\left(\hat{y}_{u i}^{N}-\hat{y}_{u j}^{N}\right) ,\\ L_{C C}(u, i, j) &= -\ln \sigma\left(\hat{y}_{u i}^{C}-\hat{y}_{u j}^{C}\right) ,\\ L_{N C}(u, i, j) &= -\ln \sigma\left(\hat{y}_{u i}^{N}-\hat{y}_{u j}^{C}\right) ,\\ L_{C N}(u, i, j) &= -\ln \sigma\left(\hat{y}_{u i}^{C}-\hat{y}_{u j}^{N}\right). \end{aligned} LNN(u,i,j)LCC(u,i,j)LNC(u,i,j)LCN(u,i,j)=lnσ(y^uiNy^ujN),=lnσ(y^uiCy^ujC),=lnσ(y^uiNy^ujC),=lnσ(y^uiCy^ujN).

你可能感兴趣的:(论文阅读,人工智能,深度学习,推荐算法,神经网络)