Post

AutoEncoder based Collaborative Filtering

Based on the following lectures
(1) “Recommendation System Design (2024-1)” by Prof. Ha Myung Park, Dept. of Artificial Intelligence. College of SW, Kookmin Univ.
(2) "Recommender System (2024-2)" by Prof. Hyun Sil Moon, Dept. of Data Science, The Grad. School, Kookmin Univ.

AutoRec


01

  • AutoRec : 오토인코더를 활용한 협업필터링 모형으로서, 사용자-아이템 상호작용 행렬(\(\mathbf{R}\), If User based Collaborative Filtering) 혹은 아이템-사용자 상호작용 행렬(\(\mathbf{R}^{T}\), If Item based Collaborative Filtering)의 입력 벡터를 저차원 공간으로 축소했다가 복원하는 과정을 통해 누락된 평점을 예측함
  • Optimization

    \[\begin{aligned} \hat{\theta}, \hat{\phi}, \hat{\mathbf{z}} \mid K = \text{arg} \min{\sum_{(u,i) \in \Omega}{\Vert r_{u,i} - \hat{r}_{u,i}\Vert^{2}} + \lambda_{\Theta} \Vert \Theta \Vert^{2}} \end{aligned}\]
    • Encoder: \(\overrightarrow{\mathbf{z}}_{u}=F(\overrightarrow{\mathbf{r}}_{u} \mid \theta)\)
      • $K$ is Latent Space Dimension
    • Decoder: \(\hat{\mathbf{r}}_{u}=G(\overrightarrow{\mathbf{z}}_{u} \mid \phi)\)

CDAE


02

  • CDAE(Collaborative Denoising AutoEncoder) : 암시적 피드백에서, 관찰된 사용자-아이템 상호작용이 실제 선호도가 손상된 상태 혹은 편향된 상태라고 가정하고, 잡음 제거 오토인코더(Denoising AutoEncoder)를 활용하여 손상된 선호도를 복원함
  • Optimization

    \[\begin{aligned} \hat{\theta}, \hat{\phi}, \hat{\mathbf{z}}, \hat{v} \mid K, p = \text{arg} \min{\sum_{(u,i) \in \Omega}{\Vert r_{u,i} - \hat{r}_{u,i}\Vert^{2}} + \lambda_{\Theta} \Vert \Theta \Vert^{2}} \end{aligned}\]
    • Generate Masking Noise: \(x_{u,i} = r_{u,i} \cdot m, \quad m \sim \text{Bernouli}(1-p)\)

    • Encoder: \(\overrightarrow{\mathbf{z}}_{u}=F(\overrightarrow{\mathbf{x}}_{u}, v_{u} \mid \theta)\)
      • $K$ is Latent Space Dimension
      • $v_{u}$ is Bias of User $u$
    • Decoder: \(\hat{\mathbf{r}}_{u}=G(\overrightarrow{\mathbf{z}}_{u} \mid \phi)\)

Mult-VAE


03

  • Mult-VAE(Multinomial Variational AutoEncoder) : 변분 오토인코더를 활용하여 파라미터를 확률적으로 추정(Probabilistic Parameter Estimation Using the Bayesian Method) 함으로써 암시적 피드백의 정보 불확실성을 반영하고, 이때 우도 함수로서 다항 우도 함수(Multinomial Likelihood Function) 를 적용하여 아이템 간 암묵적 경쟁 관계를 반영함

Bayesian Framework

  • 사용자 벡터 \(\overrightarrow{\mathbf{x}}_{u}\) 가 파라미터 \(\overrightarrow{\mathbf{z}}_{u}\) 에서 생성되었다고 가정하자. \(\overrightarrow{\mathbf{x}}_{u}\) 의 우도 함수:

    \[\overrightarrow{\mathbf{x}_{u}} \mid \overrightarrow{\mathbf{z}}_{u} \sim \mathcal{L}\left(\Theta \right) = \text{Multinomial}\left(N_{u},\overrightarrow{\mathbf{p}}_{u}\right)\]
    • $N_{u}$ : 사용자 $u$ 의 총 상호작용 횟수
    • \(\overrightarrow{\mathbf{p}}_{u}\) : 파라미터 \(\overrightarrow{\mathbf{z}}_{u}\) 로부터 계산된, 아이템에 대한 확률 벡터

      \[\overrightarrow{\mathbf{p}}_{u} = \text{softmax}\left[G(\overrightarrow{\mathbf{z}}_{u}; \Theta)\right]\]
      • $G(\Theta)$ : Decoder Network
  • 파라미터 $\overrightarrow{\mathbf{z}}_{u}$ 의 사전 확률 분포 결정:

    \[\overrightarrow{\mathbf{z}}_{u} \sim \mathcal{N}\left(0, \mathbf{I}_{K}\right)\]
  • 파라미터 $\overrightarrow{\mathbf{z}}_{u}$ 의 사후 확률 분포 추정:

    \[p\left(\overrightarrow{\mathbf{z}}_{u} \mid \overrightarrow{\mathbf{x}}_{u} ; \Theta\right) \propto \mathcal{L}\left(\overrightarrow{\mathbf{x}}_{u} \mid \overrightarrow{\mathbf{z}}_{u} ; \Theta \right) \cdot \pi\left(\overrightarrow{\mathbf{z}}_{u}\right)\]

Variational Inference

  • \(\overrightarrow{\mathbf{z}}_{u} \mid \overrightarrow{\mathbf{x}}_{u} \sim P(\Theta)\) 의 근사 분포 \(\overrightarrow{\mathbf{z}}_{u} \sim Q(\Phi)\) 정의:

    \[\begin{aligned} q\left(\overrightarrow{\mathbf{z}}_{u} ; \Phi\right) &= \mathcal{N}\left(\mu(\overrightarrow{\mathbf{x}}_{u} ; \Phi), \text{diag}[\sigma^2(\overrightarrow{\mathbf{x}}_{u} ; \Phi)]\right)\\ &\approx \mu(\overrightarrow{\mathbf{x}}_{u} ; \Phi) + \sigma(\overrightarrow{\mathbf{x}}_{u} ; \Phi) \odot \epsilon \quad \text{for} \quad \epsilon \sim \mathcal{N}\left(0, \mathbf{I}_{K}\right) \end{aligned}\]
  • ELBO:

    \[\text{ELBO} = \underbrace{\mathbb{E}_{\mathbf{z}_{u} \sim Q(\Phi)}\Big[\log{\mathcal{L}\left(\overrightarrow{\mathbf{x}}_{u} \mid \overrightarrow{\mathbf{z}}_{u} ; \Theta \right)}\Big]}_{-\text{Reconstruction Loss}} - \beta \cdot \underbrace{D_{KL}\Big[q\left(\overrightarrow{\mathbf{z}}_{u} ; \Phi\right) \parallel \pi\left(\overrightarrow{\mathbf{z}}_{u}\right)\Big]}_{\text{KL Divergence}}\]
  • Optimization:

    \[\hat{\Theta},\hat{\Phi} \mid K, \beta = \text{arg}\max_{\Theta,\Phi}{\text{ELBO}}\]
    • $K$ : Dimension of Latent Space
    • $0 \le \beta \le 1$ : KL Annealing Param
This post is licensed under CC BY 4.0 by the author.