Please enable JavaScript.
Coggle requires JavaScript to display documents.
Neural Collaborative Filtering - Coggle Diagram
背景
矩阵因式分解
缺点
- 用户和物品间的关系只能是线性的
- 在低纬空间中,因为维数有限,计算出的Jaccard系数可能无法反映高纬的距离,但过多的维数又会导致泛化问题
损失函数
-
成对损失
概述
最大化观察到的预测y_ui和未观察到的预测y_uj之间的差距
量化结果
概述
y_ui为user 和 item的0,1正交矩阵,有交互为1,没有为0
组件
损失函数
概述
相比使用计算均方差的逐点损失,改而计算每个ui对的交叉熵计算损失,转换为二分类问题
Embedding Layer
概述
分别输出user和item的one-hot,经过一个全连接层得到一个embedding
Neural CF Layer
概述
输入user和item的Embeding到几个全连接层中去
模型的多种表示
-
广义矩阵分解(GMF)
-
组件
潜在向量
概述
NCF的one-hot embedding可以通过一个全连接层得出一个稠密的embedding,这就类似CF里的潜在向量
-
因式分解
概述
NCF的第一层把隐藏向量合并然后做全连接映射,就类似于隐藏向量间的点乘
公式
$$\phi_1(p_u, q_i)=p_u \odot q_i$$
输出层
概述
输出层的计划函数值等于恒等函数,全连接权重变为1
-
多层感知机(MLP)
概述
在向量连接上增加隐藏层,使用标准的MLP(多层感知机)学习用户和项目潜在特征之间的相互作用
-
公式
$$z_1 = \phi_1(p_u, q_i)= [p_u, q_i]$$
-
结构
概述
将GMF和MLP分开计算,知道最后的输出层合并起来输出
公式
-
$$\phi^{MLP}=a_L(W_L^T[p_u^M,q_i^M] + b_L))$$
$$\hat{y_{ui}} = \sigma(h^T [\phi^{GMF},\phi^{MLP} ])$$