DeepFM模型是为了解决特征组合学习的准确性和计算量矛盾产生的。在学习DeepFM的思想前,首先要学习fm和ffm的思想。
fm:对于拥有多个特征的样本,两两组合原始特征,生成大量组合特征,并将组合特征作为输入项进入模型训练。
ffm:对所有特征分类,相同类型的特征放在一个field中,如性别类,年龄类,喜好类。对一个特定类增加一个field向量,并在交叉得出组合向量时只交叉自身field之外的向量,同时减少计算量和保留每个特定field的信息,增加准确度。
deepfm中对于field思想的使用主要是指通过field思想来构建dense vector层,减少组合特征量,同时因为dense vector能够向上交叉得出新特征,因此能够让模型学习到高阶特征。
但是此时会发现如果只用dense vector向上交叉,会忽略低阶特征的作用,因此deepfm中采用了wide&deep的思想,用deep侧学习高阶特征中的信息,用wide侧学习低阶特征中的信息,只是这里的wide侧不只有一阶特征,还有一些低阶(二阶)特征。这样就同时保留了原始特征,低阶特征,高阶特征三者供模型学习。
思考题
2.稀疏特征中黄色点是能够代表其所属的field中大部分特征的一个特征,灰色的点是没有较大泛化性的,只能代表自身所含有的信息的特征,可以被embedding进黄色特征中。