ConvNCF
He, X., Du, X., Wang, X., Tian, F., Tang, J., & Chua, T. S.
(2018).
Outer product-based neural collaborative filtering.
arXiv preprint arXiv:1808.03912.
prior research
MFKoren, Y., Bell, R., & Volinsky, C. (2009). Matrix factorization techniques for recommender systems. Computer, 42(8), 30-37.- 행렬 분해(matrix factorization)는 쌍선형 가정 하에 엔티티의 사상 공간만을 모델링할 뿐(representation learning) 매칭 함수(matching function)를 모델링하지 않아 고차 상호작용을 포착하기 어려움
NCFHe, 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).- mlp(
multi-layerperceptron) 기반 매칭 함수(matching function)는 사전 가정의 제약을 받지 않아 데이터에 적합한 여러 매칭 함수를 근사할 수 있지만 그 자유도로 인하여 과적합 위험이 있음
- mlp(
idea
-
ConvNCF(
ConvolutionalNeuralCollaborativeFiltering): 외적(Outer Product)으로 사용자와 아이템의 차원 간 2차 교차 상호작용(pairwise cross-dimensional interaction)을 명시적으로 생성하고, 합성곱 신경망(Convolution Neural Networks)으로 상호작용의 국소적 패턴(higher-order interaction patterns)을 모델링함으로써 자유도(파라미터 수)를 개선하는 단일 모형
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{p}_{u} \in \mathbb{R}^{K}$: user latent factor vector
- $\mathbf{q}_{i} \in \mathbb{R}^{K}$: item latent factor vector
- $\mathbf{E}_{u,i} \in \mathbb{R}^{K \times K}$: interaction map of user $u$ and item $i$
- $\mathbf{z}_{u,i} \in \mathbb{R}^{K}$: 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{p}_{u} &=\mathbf{W}\cdot\mathbf{X}_{u*}^{\mathrm{(user)}}\\ \mathbf{q}_{i} &=\mathbf{W}\cdot\mathbf{X}_{i*}^{\mathrm{(item)}} \end{aligned}\] -
outer product of user $u$ and item $i$:
\[\begin{aligned} \mathbf{E}_{u,i} &=\mathbf{p}_{u}\otimes\mathbf{q}_{i} \end{aligned}\] -
capture interdimensional high-level interaction of user $u$ and item $i$:
\[\begin{aligned} \mathbf{z}_{u,i} &= \mathrm{flatten}\left[\mathrm{conv}_{\mathrm{ReLU}}\left(\mathbf{E}_{u,i}\right)\right] \end{aligned}\]- \(\mathcal{W} \in \mathbb{R}^{2 \times 2}\): kernel window dimension
- the number of filters per kernel size is $32$ (empirical args)
- dimension of feature map is reduced $K \times K, K/2 \times K/2, \cdots, 1 \times 1$
-
predict interaction probability of user $u$ and item $i$:
\[\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.


