深度学习推荐模型
模型名称 | 基本原理 | 特点 | 局限性 | CSDN链接 |
AutoRec | 基于自编码器,对用户或者物品进行编码,利用自编码器的泛化能力进行推荐 | 单隐层神经网咯结构简单,可实现快速训练和部署 | 表达能力较差 | Go❤️ |
Deep Crossing | 利用“Embedding层+多隐层+输出层”的经典深度学习框架,预完成特征的自动深度交叉 | 经典的深度学习推荐模型框架 | 利用全连接隐层进行特征交叉,针对性不强 | Go❤️ |
NeuralCF | 将传统的矩阵分解中用户向量和物品向量的点积操作,换成由神经网络代替的互操作 | 表达能力加强版的矩阵分解模型 | 只使用了用户和物品的id特征,没有加入更多其它特征 | Go❤️ |
PNN | 针对不同特征域之间的交叉操作,定义“内积”“外积”等多种积操作 | 在经典深度学习框架上模型对提高特征交叉能力 | “外积”操作进行了近似化,一定程度上影响了其表达能力 | Go❤️ |
Wide&Deep | 利用Wide部分加强模型的“记忆能力”,利用Deep部分加强模型的泛化能力 | 开创了组合模型的构造方法,对深度学习推荐模型的后续发展产生重大影响 | Wide部分需要人工进行特征组合的筛选 | Go❤️ |
Deep&Cross | 用Cross网络替代Wide&Deep模型中的wide部分 | 解决了Wide&Deep模型人工组合特征的问题 | Cross网络的复杂度较高 | Go❤️ |
NN | 利用FM的参数来初始化深度神经网络的Embedding层参数 | 利用FM初始化参数,加快整个网络的收敛速度 | 模型的主结构比较简单,没有针对性的特征交叉层 | Go❤️ |
DeepFM | 在Wide&Deep模型的基础上,用FM替代原来的线性Wide部分 | 加强了Wide部分的特征交叉能力 | 与经典的Wide&Deep模型相比,结构差别不明显 | Go❤️ |
NFM | 用神经网络代替FM中二阶隐向量交叉的操作 | 相比FM,NFM的表达能力和特征交叉能力更强 | 与PNN模型的结构非常相似 | Go❤️ |
AFM | 在FM的基础上,在二阶隐向量交叉的基础上对每个交叉结构加入了注意力得分,并使用注意力网络学习注意力得分 | 不同交叉特征的重要性不同 | 注意力网络的训练过程比较复杂 | Go❤️ |
DIN | 在传统深度学习推荐模型的基础上引入了注意力机制,并利用用户行为历史物品和目标广告物品的相关性计算注意力得分 | 根据目标广告物品的不同,进行更有针对性的推荐 | 并没有充分利用除“历史行为”以外的其它特征 | Go❤️ |
DIEN | 将序列模型与深度学习模型结合,使用序列模型模拟用户的兴趣进化过程 | 序列模型增强了系统对用户兴趣变迁的表达能力,使推荐系统开始考虑时间相关的行为序列中包含的有价值信息 | 序列模型的训练复杂,线上服务的延迟较长,需要进行工程上的优化 | Go❤️ |
DRN | 将强化学习的思路应用于推荐系统,进行推荐模型的线上实时学习和更新 | 模型对数据实时性的利用能力大大加强 | 线上部分较复杂,工程实现难度较大 | Go❤️ |
参考资料
- 王喆 - 《深度学习推荐系统》