介绍一下它,首先也还是回顾cf的回顾
但是这个模型由于结构太简单,计算也太简单, 使得输出层无法对目标进行有效的拟合。
简单来说就是原始向量被隐向量相乘表达时被表达的并不准确。可以看下图。
直观的看, 是隐向量计算相似度的时候存在问题, 因为相似度是夹角衡量的, 夹角关系在降维之后有可能发生了错乱, 但是这间接的说明了单单使用内积不足以可靠的预测评分。
所以我们就把单纯的点积操作给换成了一个mlp
GMF
作者指出如果上图中的 Neural CF Layers 部分做的工作就是将 user 和 item 的 Embedding 做点积(对应元素相乘),得到一个和 Embedding 等长的向量,然后交给 一个逻辑回归,那样就会给隐向量进行对应元素相乘之后会有个权重, 也就是各个隐向量维度的重要性不一定相同了。 如果h hh是一个全1向量的话, 那模型实际上就是MF了。 这也就是Generalized Matrix Factorization (GMF)名字的来历。
最后 作者就将GMF和MLP相结合提出了Neural CF的混合模型版, 整合了原始的Neural CF模型和以元素积伟互操作的广义矩阵分解模型, 使得模型有了更强的线性组合和非线性组合的表达能力。