原文: https://blog.csdn.net/realnuannuan/article/details/93401214?locationNum=8&fps=1
独热编码
由FM引进的embedding思想将原始的高维稀疏数据嵌入为低维稠密特征.
独热编码(one-hot encoding)后的总的特征数量为n=10,特征领域(field)为f=3,如。embedding后的每个领域(field)内的特征向量维度设为k=5,如。
独热编码的意思就是,在每次输入的样本中x中,每个特征领域(field)内只能有一个特征值为1,其余特征值均为0,如。
Logistic Regression(LR)
LR是点击率(click through rate)
LR模型简单易懂,将数据的一阶特征进行线性组合后再压缩到0~1的概率范围内进行分类,权重因子的大小说明了对应特征对预测结果影响大小。但也是因为LR模型太简单,只能做输入特征的一阶线性组合,所以需要进行复杂的特征工程,用人工的方法进行特征交叉组合,再进入LR模型中(特征工程加广义线性模型LR)。
LR模型
ω0代表偏置,ωi代表权重系数,xi代表原始输入的数据特征。而最终的CTR预估值为
可以从另一个角度来看待LR模型,其就是一个单层的神经网络,将输入值与各自的权重系数相乘后进行累加,再经过一个sigmod神经单元,将输出值由 (−∞,+∞) 压缩到值域为 (0,1) 范围内的概率值。
图1 LR模型
poly2
LR是将输入的特征元素进行简单的一维线性加权,poly在LR基础上通过暴力的方式直接添加上二阶特征交叉方式的代数组合,其具体模型如式(3)所示(注:后文所提的模型方程均省略了sigmod激活单元)。可以看出poly2模型与LR本质上基本相同,二阶特征的交叉组合省去了部分特征工程的同时,也大幅度的提升了模型复杂度。
图2 poly2模型
FM
FM既相较于LR增加了二阶特征的自动组合,又完美的解决了上文所提的poly2模型的两个缺陷。通过FM模型(4)可以看出,FM并不是暴力的加上二阶特征组合,而是赋予每个特征xi一个专属的隐向量vi,从而用两个隐向量的内积替代poly2中的单一权重。这样只要xi在样本中出现,模型就可以学习更新vi,从而一定程度上增加了模型泛化能力。
图3 FM模型
图4 xi的嵌入
作者在设计FM算法时本意是将交互因子分解为两个特征向量权重的内积 ,但这却在另一方面引入了embedding思想。可以说FM为后面DL大行其道打通了一条坦途,这应该也是作者始料未及的。