Neural Collaborative Filtering(NCF) 代码实战(Keras)

博客主要分为两部分。第一部分为论文简介,第二部分为代码实战。

论文简介:

1. 通用框架
下图是作者提出的用神经网络解决推荐系统问题的通用框架。论文先将用户与物品分别进行one-hot编码,然后通过一个Embedding层映射得到对应的向量,这就类似于矩阵分解(MF)中用户与物品的潜在相量。通过此操作可以使网络自己训练调整参数,还可以降低以及控制输入神经网络的维度。
在这里插入图片描述
2. GMF
在这里插入图片描述
GMF被称为广义矩阵分解,其原理图如上图所示(图片取自如雨星空的博文,链接在最后给出)。使用用户与物品Embedding后的潜在向量作为输入,输出层的计算公式为:
在这里插入图片描述
3. MLP
在这里插入图片描述
论文使用MLP(多层感知机)来学习用户和物品潜在向量之间的相互作用。网络示意图如上所示。MLP的计算公式:
在这里插入图片描述
4. NeuMF
在这里插入图片描述
将前面介绍的GMF与MLP相融合就得到了论文所提出的NeuMF,即NCF。作者让GMF和MLP共享相同的嵌入层(Embedding Layer),为了使得融合模型具有更大的灵活性,允许GMF和MLP学习独立的嵌入,并通过拼接它们最后的隐层输出使两种模型融合。具体公式如下:
在这里插入图片描述

5. 几个实验重点

  • 论文采用leave-one-out。即,将每个用户最近的一次交互作为测试集(时间戳),将剩余记录作为训练集。为节省时间,随机抽取100个用户没有评分记录的物品,将测试物品与这100个物品一同评分然后排列。命中率(HR)和归一化折扣累积增益(NDCG)作为评估标准,且截取长度为10。因此,HR衡量测试项目是否存在于前10名列表中,而NDCG确定其位置。将这两个指标求取平均分作为衡量指标。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值