Post

DDFL

Shah, S. T. U., Li, J., Guo, Z., Li, G., & Zhou, Q.
(2020, September).
DDFL: a deep dual function learning-based model for recommender systems.
In International Conference on Database Systems for Advanced Applications (pp. 590-606).
Cham: Springer International Publishing.

idea

  • 삼각 부등식(tri-angular inequality): 세 점 사이의 거리에 대한 제약으로서 $A$와 $C$ 사이 거리는 $A$ 에서 $B$, 그리고 $B$ 에서 $C$ 로 우회하는 거리보다 작거나 같아야 함:
\[\begin{aligned} \mathrm{d}\left[A,C\right] \le \mathrm{d}\left[A,B\right] + \mathrm{d}\left[B,C\right] \end{aligned}\]
  • 잠재 공간은 삼각 부등식을 만족하여야 함. 즉, 사용자 $u$ 의 아이템 $i$ 에 대한 선호 강도는, 아이템 $j$ 에 대한 선호 강도, 그리고 $i$ 와 $j$ 간 유사도의 합보다 작거나 같아야 함:
\[\begin{aligned} \langle\mathbf{p}_{u},\mathbf{q}_{i}\rangle \le\langle\mathbf{p}_{u},\mathbf{q}_{j}\rangle + \langle\mathbf{q}_{i},\mathbf{q}_{j}\rangle \end{aligned}\]
  • DDFL(Deep Dual Function Learning-based Model): 표현 학습 모듈(representation learning) 대신 매칭 함수 학습 모듈(metric function learning)을 매칭 함수 학습 모듈(matching function learning)과 병렬 학습하는 앙상블 모형

01

notation

  • $u=1,2,\cdots,M$: user idx
  • $i=1,2,\cdots,N$: item idx
  • $\mathbf{Y} \in \mathbb{R}^{M \times N}$: user-item interaction matrix
  • $\mathbf{p}_{u} \in \mathbb{R}^{K}$: user latent factor vector @ MeFL
  • $\mathbf{q}_{i} \in \mathbb{R}^{K}$: item latent factor vector @ MeFL
  • $\mathbf{u}_{u} \in \mathbb{R}^{K}$: user latent factor vector @ MaFL
  • $\mathbf{v}_{i} \in \mathbb{R}^{K}$: item latent factor vector @ MaFL
  • $\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

  • DDFL is MeFL & MaFL Ensemble:

    • predictive vector of user $u$ and item $i$:

      \[\begin{aligned} \mathbf{z}_{u,i} &=\mathrm{mlp}_{\mathrm{ReLU}}\left(\mathbf{z}_{u,i}^{\text{(MeFL)}} \oplus \mathbf{z}_{u,i}^{\text{(MaFL)}}\right) \end{aligned}\]
    • final matching score of user $u$ and item $i$:

      \[\begin{aligned} \hat{y}_{u,i} &= \sigma\left(\mathbf{W} \cdot \mathbf{z}_{u,i}\right) \end{aligned}\]

metric function learning

01

  • conversion transformation:

    \[\begin{aligned} x_{u,i} &=\alpha\left(1-y_{u,i}\right) \end{aligned}\]
    • $\alpha$ is distance factor
  • history embedding:

    \[\begin{aligned} \mathbf{p}_{u} &=\mathbf{W} \cdot \mathbf{X}_{u*}\\ \mathbf{q}_{i} &=\mathbf{W} \cdot \mathbf{X}_{i*} \end{aligned}\]
  • calculate euclidean distance:

    \[\begin{aligned} \mathrm{d}\left[\mathbf{p}_{u}, \mathbf{q}_{i}\right] &=\Vert\mathbf{p}_{u} - \mathbf{q}_{i} \Vert_{2} \end{aligned}\]
  • metric function learning:

    \[\begin{aligned} \mathbf{z}_{u,i} &= \mathrm{mlp}_{\mathrm{ReLU}}\left(\mathrm{d}\left[\mathbf{p}_{u}, \mathbf{q}_{i}\right]\right) \end{aligned}\]
  • if use MeFL as a single prediction module:

    • compute distance:

      \[\begin{aligned} \hat{x}_{u,i} &= \sigma(\mathbf{W} \cdot \mathbf{z}_{u,i}) \end{aligned}\]
    • convert distance to matching score:

      \[\begin{aligned} \hat{y}_{u,i} &= 1 - \frac{\hat{x}_{u,i}}{\alpha} \end{aligned}\]

MaFL

01

  • history embedding:

    \[\begin{aligned} \mathbf{u}_{u} &=\mathbf{W} \cdot \mathbf{Y}_{u*}\\ \mathbf{v}_{i} &=\mathbf{W} \cdot \mathbf{Y}_{*i} \end{aligned}\]
  • matching fucntion learning:

    \[\begin{aligned} \mathbf{z}_{u,i} &= \mathrm{mlp}_{\mathrm{ReLU}}\left(\mathbf{u}_{u} \oplus \mathbf{v}_{i}\right) \end{aligned}\]
  • if use MaFL as a single prediction module:

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