Post

DELF

Cheng, W., Shen, Y., Zhu, Y., & Huang, L.
(2018, July).
DELF: A dual-embedding based deep latent factor model for recommendation.
In IJCAI (Vol. 18, pp. 3329-3335).

prior research

  • NCF He, X., Liao, L., Zhang, H., Nie, L., Hu, X., & Chua, T. S. (2017, April). Neural collaborative filtering. In Proceedings of the 26th international conference on world wide web (pp. 173-182).
    • 암시적 피드백 데이터(implicit feedback)에서는 관측과 미관측이 반드시 선호 혹은 비선호를 나타낸다고 볼 수 없으나, 식별자 임베딩(index embedding)은 오로지 감독 신호(supervised signal)로부터 학습되므로 잡음(noise)이 섞여 있음
  • NSVD Paterek, A. (2007, August). Improving regularized singular value decomposition for collaborative filtering. In Proceedings of KDD cup and workshop (Vol. 2007, No. 2007, pp. 5-8).
    • 사용자 표현을 감독 신호(supervised signal)로부터 직접 추론하지 않고, 다른 사용자들과 공유되는 관측 아이템들을 집계하여 생성하므로 암시적 피드백 데이터(implicit feedback)의 잡음(noise)에 강건함

idea

  • DELF(Dual Embedding based Deep Latent Factor Model): 아이디 임베딩과 히스토리 임베딩을 조합함으로써 다양한 정보원으로부터 다수의 매칭 함수를 병렬 학습하는 모형

    01

notation

  • $u=1,2,\cdots,M$: user idx
  • $i=1,2,\cdots,N$: item idx
  • $\mathbf{X}^{\mathrm{(user)}} \in \mathbb{R}^{M \times M}$: user one-hot matrix
  • $\mathbf{X}^{\mathrm{(item)}} \in \mathbb{R}^{N \times N}$: item one-hot matrix
  • $\mathbf{Y} \in \mathbb{R}^{M \times N}$: user-item interaction matrix
  • $\mathbf{u}{u},\mathbf{p}{u} \in \mathbb{R}^{K}$: user ID embedding vector
  • $\mathbf{v}{i},\mathbf{q}{i} \in \mathbb{R}^{K}$: item ID embedding vector
  • $\mathbf{m}_{u} \in \mathbb{R}^{K}$: user history embedding vector
  • $\mathbf{n}_{i} \in \mathbb{R}^{K}$: item history embedding vector
  • $\mathbf{h}^{\mathrm{(user)}},\mathbf{h}^{\mathrm{(item)}} \in \mathbb{R}^{1}$: global context vector
  • $\mathbf{z}_{u,i}$: predictive vector of user $u$ and item $i$
  • $\hat{y}_{u,i}$: interaction probability of user $u$ and item $i$

function

  • index embedding:

    \[\begin{aligned} \mathbf{u}_{u},\mathbf{p}_{u} &=\mathbf{W}\cdot\mathbf{X}_{u*}^{\mathrm{(user)}}\\ \mathbf{v}_{i},\mathbf{q}_{i} &=\mathbf{W}\cdot\mathbf{X}_{u*}^{\mathrm{(item)}} \end{aligned}\]
  • history embedding:

    \[\begin{aligned} \mathbf{m}_{u} &=\mathrm{att}\left[\mathbf{h}^{\mathrm{(user)}},f(\mathbf{q}_{j}),\mathbf{q}_{j}\right],\quad\forall j \in \mathcal{R}_{u}^{+} \setminus \{i\}\\ \mathbf{n}_{i} &=\mathrm{att}\left[\mathbf{h}^{\mathrm{(item)}},f(\mathbf{p}_{v}),\mathbf{p}_{v}\right],\quad\forall v \in \mathcal{R}_{i}^{+} \setminus \{u\} \end{aligned}\]
  • key transform function:

    \[\begin{aligned} f(\phi) &=\mathrm{tanh}\left(\mathbf{W}\cdot\phi+\mathbf{b}\right) \end{aligned}\]
  • pairwise neural interaction layers:

    \[\begin{aligned} \mathbf{z}_{u,i}^{(1)} &=\mathrm{mlp}_{\mathrm{ReLU}}\left(\mathbf{u}_{u}\oplus\mathbf{v}_{i}\right)\\ \mathbf{z}_{u,i}^{(2)} &=\mathrm{mlp}_{\mathrm{ReLU}}\left(\mathbf{m}_{u}\oplus\mathbf{n}_{i}\right)\\ \mathbf{z}_{u,i}^{(3)} &=\mathrm{mlp}_{\mathrm{ReLU}}\left(\mathbf{u}_{u}\oplus\mathbf{n}_{i}\right)\\ \mathbf{z}_{u,i}^{(4)} &=\mathrm{mlp}_{\mathrm{ReLU}}\left(\mathbf{m}_{u}\oplus\mathbf{v}_{i}\right) \end{aligned}\]
  • predict interaction probability of user $u$ and item $i$:

    \[\begin{aligned} \hat{y}_{u,i} &= \sigma\left(\mathbf{W}\cdot\left[\mathbf{z}_{u,i}^{(1)}\oplus\mathbf{z}_{u,i}^{(2)}\oplus\mathbf{z}_{u,i}^{(3)}\oplus\mathbf{z}_{u,i}^{(4)}\right]+\mathbf{b}\right) \end{aligned}\]
This post is licensed under CC BY 4.0 by the author.