基于神经网络与因子分解机的点击率预估应用研究(陈检)
摘要
长久以来广告点击预估率问题属于用户行为预测研究问题,其主要解决是特征工程问题。
深度神经网络主要提取高阶特征,因子分解机提取二阶以下特征
注改:因子分解机实际应用中受限于计算复杂度,一般只考虑到2阶交叉特征(FM预测时间复杂度O(kn),FFM预测时间复杂度O(kn^2),FM提取低阶组合特征,Deep提取低阶组合特征,同时学习低阶和高阶的组合特征。 FM与Deep共享同样的输入。
通过对比试验发现:基于深度神经网络和因子分解机的组合模型比单独使用两者的准确率和AUC值表现更佳。
注:AUC(Area Under Curve)被定义为ROC曲线下与坐标轴围成的面积,显然这个面积的数值不会大于1。又由于ROC曲线一般都处于y=x这条直线的上方,所以AUC的取值范围在0.5和1之间。AUC越接近1.0,检测方法真实性越高;等于0.5时,则真实性最低,无应用价值 。
关键词
点击率预估;深度神经网络;因子分解机;DeepFM
引言
描绘信息大爆炸时代,人们获得信息的准确性、多样性受到严重的限制,形成严重的信息超载现象,推荐系统应运而生发挥巨大的作用。
推荐系统的使命是用户和物品建立连接,根据连接的形式,预测问题模式可以分为两类。
评分预测:预测连接的强度。
行为预测:预测是否会产生连接。
描绘了用户行为预测问题难点:数据噪音多、异常行为数据干扰模型的判断(数据科学家大部分时间都在做数据清洗的工作)、模型对多类别特征的表征能力欠缺。引用杨与白学者强调解决特征构造问题已经成为数据挖掘的瓶颈之一。并且通过构造二次交叉特征以及利用 Xgboost 的分类算法,能够得到比传统机器学习算法更佳的预测性能。潘等提出基于分而治之的思想,提出了基于用户相似度和特征分化的混成模型。该模型首先根据混合高斯分布来评估用户相似度,将其划分为多个群体(基于用户的协同过滤算法),分别构建子模型并进行有效组合。
相关理论
线性模型中,提取高阶特征的普遍方式是基于手工和先验知识,当特征维度变大特征组合变的异常困难,人工开销变的更加昂贵。
因子分解机是嵌入了embedding layer的神经网络系统,其主要作用是构造特征之间的隐变量,这个隐变量度量的是基于所有特征的二阶组合特征
FM在线性模型上引入了隐变量,对于几乎不出现或者很少出现的隐变量,FM也可以很好学习。
神经网络部分:深度部分是一个前置神经网络。在第一层隐含层之前,引入一个嵌入层来完成将输入向量压缩到低维稠密向量。网络结构有两个有趣的特性,尽管不同field的输入长度不同,但是embedding之后向量的长度均为K。在FM里得到的隐变量Vik现在作为了嵌入层网络的权重。深度神经网路(NN)部分和因子分解机(FM)部分的输出共同进入到输出层,并且同时训练。
Adam 是一种可以替代传统随机梯度下降(SGD)过程的一阶优化算法,它能基于训练数据迭代地更新神经网络权重。Adam 最开始是由 OpenAI 的 Diederik Kingma 和多伦多大学的 Jimmy Ba 在提交到 2015 年 ICLR 论文(Adam: A Method for Stochastic Optimization)中提出的。
直截了当地实现
高效的计算
所需内存少
梯度对角缩放的不变性
适合解决含大规模数据和参数的优化问题
适用于非稳态(non-stationary)目标
适用于解决包含很高噪声或稀疏梯度的问题
超参数可以很直观地解释,并且基本上只需极少量的调参
实验研究
公开数据集(4千万训练样本,13个数值体征,26个分类特征,5百万的测试样本,模型性能度量方式选的是基尼值,值多大,准确率越高,基尼系数值等于2倍的AUC系数减去1,基尼值由ROC曲线计算而来)。
关键计算方程与结果图
Deep FM算法其模型训练的速度最快,达到模型收敛所需要的时间更少,模型也更加稳定。
结论
posted @
2020-01-06 22:22
*小龙人*
阅读(
274 )
评论()
编辑
收藏
举报