当前位置: 首页 > 科技观察

如何使用DeepFM算法设计推荐系统_1

时间:2023-03-14 22:54:01 科技观察

【.com快译】经过十多年的发展,推荐系统在互联网行业越来越受欢迎。从早年没有合适的产品形态,到如今在今日头条、抖音等商业产品中发挥重要作用,推荐系统越来越受到互联网公司和研究界学者的关注。早年的推荐算法主要是各种单一的模型,比如逻辑回归、协同过滤、矩阵分解等等。后来推荐算法演变为混合模型,如GBDT+LR、GBDT+FM等。随着深度学习的兴起,深度神经网络越来越深刻地影响了推荐系统领域的发展。郭惠峰等中国国内学者在IJCAI2017上发表了一篇名为《DeepFM: A Factorization-Machine based Neural Network for CTR Prediction 》的论文,阐述了如何将FM和深度学习模型结合起来进行算法推荐。DeepFM具有以下三个主要优点:DeepFM可以在不进行特征工程的情况下对低阶特征交互和高阶特征交互进行建模。DeepFM可以被高效地训练,因为模型的wide部分和deep部分不仅共享输入,还共享嵌入向量。实验数据表明,DeepFM在点击率预测问题上可以取得优异的效果。DeepFM的输入数据是点击率预估的常用(X,y)元组,其中X是代表用户和物品的特征向量,可能包含非数值数据,y是点击数据标签,y=1表示表示用户点击了该项目,y=0表示用户没有点击该项目。DeepFM的预测函数如下:实际上,使用sigmoid函数融合了基于FM的预测和基于DNN的预测。算法模型中FM部分的算法架构如下图所示:DNN部分的算法结构如下图所示:在混合模型中,FM和DNN共享相同的特征嵌入层。embedding层的结构如下图所示:embedding层得到的向量记为:,这个向量参与后续的DNN计算:,和。作者随后在测试数据集上评估了近年来几种不同的点击率预测算法。选定的评估标准包括AUC和Log-loss。评估结果如下图所示:与DeepFM相比,其他几种点击率预测算法存在以下不足:FNN:FNN是由FM初始化的前馈神经网络。FM预训练策略存在以下两个问题:1)。嵌入层参数受FM影响很大。2).FM预训练对算法效率有影响。此外,FM仅包含高阶特征组合。PNN:PNN及其变体IPNN和OPNN忽略低阶特征的组合。Wide-DeepNetworks:宽体网络的FM部分需要手动处理特征工程。DeepFM的设计思路很简单,源自谷歌2016年的wideanddeepnetwork方法,但效果却很出众。自推荐系统诞生以来,已经设计了各种模型融合方法。从修改主题模型的CollaborativeTopicRegression,到基于blending的GBDT+LR再到后来的wide-depthnetwork方法,为我们提供了不同的算法设计思路。算法本身是一门既考虑模型又考虑数据和参数的学科。DeepFM向我们展示了一个关于如何设计模型的好例子。原标题:DeepFM:AFactorization-MachinebasedNeuralNetworkforCTRPrediction,作者:HuifengGuo,RuimingTang,YunmingYe,ZhenguoLi,XiuqiangHeWangHao,恒昌力通高级架构师,美国犹他大学硕士,in百度、新浪、网易、豆瓣等公司拥有多年研发和技术管理经验,擅长机器学习、大数据、推荐系统、社交网络分析、计算机图形学、可视化等技术。在TVCG、ASONAM等国际会议和期刊发表论文8篇。本科毕业论文获IEEESMI2008国际会议最佳论文奖。【翻译稿件,合作网站转载请注明原译者及出处.com】