前言
今天继续写王喆老师的《深度学习推荐系统》,我会根据已经梳理好的知识体系对其中的模型分别讲解。前面也已经讲过很多模型了,前一个模型是Deep&Cross其中是对W&D模型的Deep部分进行的改进。按理说今天还是将根据W&D的思想衍生而来的其他模型,但是今天先讲一下FM在深度学习时代的三大延伸模型变体FNN(Factorization Machine supported Neural Network)模型, DeepFM(Factorization-Machine based Neural Network)模型和NFM(Neural Factorization Machine)模型中的FNN模型,主要是为后面的两个模型打好基础。老规矩先来一下知识结构体系图。
前面也写了很多经典的推荐系统中的模型了,今天也就在这里总结一下过去,展望一下未来。
对于现在的推荐算法来说总的就三点,一是加大特征之间的交叉,来增强算法的表达能力,在这一点上面DNN有着天然的优势,使得特征之间的高阶交互信息的挖掘和学习变得天然了一些, 可以非常容易的学习到特征之间的高阶交叉信息。二是虽然高阶的特征交叉非常好,但是过于深层的网络很容易产生无法训练的情况,因为推荐系统不像CV一样,数据大多都是稀疏向量,很难取训练大的网络。而且大型的DNN网络没有很强的记忆能力,并不能根据实时数据进行更新。所以2016年,W&D的提出开启了一个新篇章, 使得后面在其基础上出现了各种各样的组合模型,比如DCN,FNN,DeepFM, NFM等。三是像W&D需要进行繁重的特征工程,根据不同的特征进行不痛的操作,这样也是对人力不友好的。所以接下来的一个发展就是端到端的无脑高。在这里说一句题外话,虽然我也没有做过一些实际的推荐系统项目,但是我感觉在公司里面实习项目的时候还是做特征工程更多一些,就像kagger比赛一样,获胜者永远都是对数据敏感的那一队,这里说的不对的还希望大佬给出