Post

DACR

Cui, C., Qin, J., & Ren, Q.
(2022).
Deep collaborative recommendation algorithm based on attention mechanism.
Applied Sciences, 12(20), 10594.

idea

  • 암시적 피드백 데이터(implicit feedback)는 행동 데이터이기 때문에, 이로부터 선호 여부를 추론하기 위해서는 내재된 선호 정보를 부각하고 잡음을 여과하는 절차가 수반되어야 함
    • 관측의 불완전성(obs incompleteness): 관측과 미관측이 반드시 선호 혹은 비선호를 의미한다고 볼 수 없음
    • 선호의 비가시성(hidden signal): 관측의 불완전성으로 인하여 데이터로부터 선호의 의도나 강도를 포착하기 어려움
  • DACR(Deep Collaborative Recommendation Algorithm Based on Attention Mechanism): 사용자, 아이템 표현 및 그 결합 표현에 어텐션 메커니즘(Attention Mechanism)을 적용하여 차원별 가중치를 명시적으로 설계함으로써 입력 중 집중할(Focus) 정보를 선별하여 강조하는 앙상블 모형

    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{u}_{u} \in \mathbb{R}^{K}$: user latent factor vector
  • $\mathbf{v}_{i} \in \mathbb{R}^{K}$: item latent factor 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$
  • $\delta$: softmax function
  • $\sigma$: sigmoid function

function

  • dacr is arl & aml ensemble

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

attentive representation learning

  • history embedding:

    \[\begin{aligned} \mathbf{p}_{u} &=\mathbf{W}\cdot\mathbf{Y}_{u*}\\ \mathbf{q}_{i} &=\mathbf{W}\cdot\mathbf{Y}_{*i} \end{aligned}\]
  • attention weight:

    \[\begin{aligned} \alpha_{u} &= \delta\left(\mathbf{W}\cdot\mathbf{p}_{u}+\mathbf{b}\right)\\ \alpha_{i} &= \delta\left(\mathbf{W}\cdot\mathbf{q}_{i}+\mathbf{b}\right) \end{aligned}\]
  • denoised init. vector:

\[\begin{aligned} \phi_{u} &=\mathbf{p}_{u}\oplus\left[\alpha_{u}\odot\mathbf{p}_{u}\right]\\ \psi_{i} &=\mathbf{q}_{i}\oplus\left[\alpha_{i}\odot\mathbf{q}_{i}\right] \end{aligned}\]
  • representation learning:

    \[\begin{aligned} \mathbf{u}_{u} &= \mathrm{mlp}_{\mathrm{ReLU}}\left(\phi_{u}\right)\\ \mathbf{v}_{i} &= \mathrm{mlp}_{\mathrm{ReLU}}\left(\psi_{i}\right) \end{aligned}\]
  • bilinear interaction between user $u$ and item $i$:

    \[\begin{aligned} \mathbf{z}_{u,i} &=\mathbf{u}_{u}\odot\mathbf{v}_{i} \end{aligned}\]
  • if use ARL as a single prediction module:

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

attentive matching function learning

  • history embedding:

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

    \[\begin{aligned} \mathbf{x}_{u,i} &=\mathbf{p}_{u}\oplus\mathbf{q}_{i} \end{aligned}\]
  • attention weight:

    \[\begin{aligned} \alpha_{u,i} &=\delta\left(\mathbf{W}\cdot\mathbf{x}_{u,i}+\mathbf{b}\right) \end{aligned}\]
  • denoised agg. vector:

\[\begin{aligned} \chi_{u,i} &=\mathbf{x}_{u,i}\oplus\left[\alpha_{u,i}\odot\mathbf{x}_{u,i}\right] \end{aligned}\]
  • matching function learning:

    \[\begin{aligned} \mathbf{z}_{u,i} &=\mathrm{mlp}_{\mathrm{ReLU}}\left(\chi_{u,i}\right) \end{aligned}\]
  • if use AML 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.