Post

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). image:

prior research

  • MF Koren, Y., Bell, R., & Volinsky, C. (2009). Matrix factorization techniques for recommender systems. Computer, 42(8), 30-37.

  • mf(matrix factorization) uses the inner product as the interaction function between users and items:

    \[\begin{aligned} \hat{y}_{u,i} &:=\langle\mathbf{u}_{u},\mathbf{v}_{i}\rangle \end{aligned}\]
  • inner product holds under the assumptions that (1) the relational structure between users and items is bilinear and (2) the two entities are mapped to the same space:

    \[\begin{aligned} f(\mathbf{u},\mathbf{v}) &:=\langle\mathbf{u},\mathbf{W}\mathbf{v}\rangle\\ \mathbf{W} &:=\mathbf{I} \end{aligned}\]

problem

  • contributions of the basis to the interaction cannot necessarily be considered equal:

    \[w_{i,i}\ne w_{j,j}\quad(i\ne j)\]
  • embedding spaces for users and items cannot necessarily be considered identical:

    \[\mathbf{W}\ne\mathrm{diag}(\cdot)\]
  • it cannot be assumed that the each basis are processed independently during interaction:

    \[u_{i}\cdot x_{j} \ne 0,\quad \mathbf{x}:=\mathbf{W}\mathbf{v}\in\mathcal{U}\]
  • It cannot be assumed that interaction is necessarily explained in terms of the entities’ conceptual spaces:

    \[\mathbf{z}_{i,j}\notin\mathcal{U},\mathcal{V}\]

idea

  • neumf(neural matrix factorization) is an ensemble model which combine gmf module and ncf module in parallel.

    01

  • gmf(general matrix factorization) is modeling bilinear relationship but appling differential treatement to contribution of each basis. since the matching function is fixed by the inductive bias, stable performance can be achieved by learning only the representations.

    \[\begin{aligned} f(\mathbf{u},\mathbf{v}) :=\mathbf{u}^{T}\mathbf{W}\mathbf{v},\quad w_{i,j} =\begin{cases} 0,\quad i\ne j\\ k,\quad i=j,\quad k\ne1 \end{cases} \end{aligned}\]
  • ncf(neural collaborative filtering) is modeling non-linear relationship. specifically, it do not assume that: (1) user, item and interaction space is same; (2) interaction space can be mapped via a linear transformation in the user space or the item space. since the matching function is learned from the data without being constrained by prior assumptions, complex relational structures can be captured.

    \[\begin{aligned} f(\mathbf{u},\mathbf{v}) &:=\mathrm{mlp}\left([\mathbf{u}\oplus\mathbf{v}]\right) \end{aligned}\]
This post is licensed under CC BY 4.0 by the author.