背景
CTR预估是推荐系统的核心技术之一。对于CTR问题,更好地学习特征组合能够有效提升模型效果。特征包括用户行为的低阶特征和高阶特征。低阶特征可以由人工构造(如Wide&Deep模型),高阶特征可以由神经网络学习得到,由全连接层实现高阶特征的组合。很显然,低阶特征和高阶特征需要分别进行处理。例如在FNN模型中,首先预训练一个FM模型得到每个特征的Embedding向量,然后再输入多个全连接层。由于FM和DNN的串行结构。这个模型没有学到多少低阶特征组合。Wide&Deep模型将低阶特征的处理和高阶特征的处理设置为并行,但Wide模型部分需要人工来完成特征工程。同时,Wide&Deep模型将低阶特征和高阶特征直接在输出层进行组合,这样模型很容易侧重学习低阶或者高阶的特征,因此不能很好地将两者结合。
DeepFM模型包括FM和DNN两部分,其中FM模型用来抽取低阶特征,DNN模型用来抽取高阶特征。
下面分别对各部分进行介绍。
模型结构
FM
FM(Factorizaiton Machine)于2010年被提出,旨在解决稀疏数据下的特征组合问题。多项式模型是特征组合最直观的模型,FM模型通常用来学习二阶特征交叉组合。
可以由数学公式表示为:
其中表示第i个特征的值,w为模型参数,n表示样本特征数量。由公式可得,当
和
都非零时,组合特征
才有意义。同时在训练中,参数
的训练需要大量
和
都非零的样本,由于样本数据的稀疏性,这种情况会很少。因此容易导致训练出来的参数
不准确。借助矩阵分解,所有的二项式参数
可以组成一个对角元素为正数的对称阵W。那么这个矩阵就可以分解为
,其中
的第j列表示第j个特征的隐向量,因此参数