推荐系统论文汇总与FM演化

1 FM演化

其一是从FM开始推演其在深度学习上的各种推广(对应下图的红线),另一条是从embedding+MLP自身的演进特点结合CTR预估本身的业务场景进行推演(对应下图黑线部分).

2 论文汇总

经典!工业界深度推荐系统与CTR预估必读的论文汇总

DeepCTR:易用可扩展的深度学习点击率预测算法包

https://github.com/shenweichen/DeepCTR

3 经典模型

3.1 FM模型

参考:推荐系统遇上深度学习(一)--FM模型理论和实践

3.1.1 特征组合

    普通的线性模型,我们都是将各个特征独立考虑的,并没有考虑到特征与特征之间的相互关系。但实际上,大量的特征之间是有关联的。最简单的以电商为例,一般女性用户看化妆品服装之类的广告比较多,而男性更青睐各种球类装备。那很明显,女性这个特征与化妆品类服装类商品有很大的关联性,男性这个特征与球类装备的关联性更为密切。如果我们能将这些有关联的特征找出来,显然是很有意义的。

一般线性模型为:

                                             y=w_{0} +\sum_{i=1}^n w_{i}x_{i}

一般的线性模型压根没有考虑特征间的关联。为了表述特征间的相关性,我们采用多项式模型。为简单起见,只讨论二阶多项式。

                                 y=w_{0} +\sum_{i=1}^n w_{i}x_{i}+\sum_{i=1}^{n-1} \sum_{j=i+1}^{n} w_{ij}x_{i}y_{i}

3.1.2 FM求解

从上面的式子可以很容易看出,组合部分的特征相关参数共有n(n−1)/2个。但是如第二部分所分析,在数据很稀疏的情况下,满足x_{i},y_{i}都不为0的情况非常少,这样将导致w_{ij}无法通过训练得出。

为了求出w_{ij},我们对每一个特征分量x_{i}引入辅助向量Vi=(vi1,vi2,⋯,vik)。然后,利用v_{i}v_{j}^T w_{ij}进行求解。

求解过程如下:

经过这样的分解之后,我们就可以通过随机梯度下降SGD进行求解:

3.1.3 应用

(1)如下数据

进行one-hot编码:

:特征维度n,是one-hot展开之后的总长度,如有三组特征,两个连续值,一个离散值,有5个取值,那么n=7而不是n=3

(2)tensorflow 网络实现:

3.2 FFM模型

参考:推荐系统遇上深度学习(二)--FFM模型理论和实践

如下数据,国家、日期和广告类型看作一个field,在FFM中,每一维特征 x_{i},针对其它特征的每一种field f_{j},都会学习一个隐向量 v_{i,f_{j}}。因此,隐向量不仅与特征相关,也与field相关。也就是说,“Day=26/11/15”这个特征与“Country”特征和“Ad_type"特征进行关联的时候使用不同的隐向量,这与“Country”和“Ad_type”的内在差异相符,也是FFM中“field-aware”的由来。

假设样本的 n个特征属于 f个field,每个特征对每个filed都有一个隐向量,那么FFM的二次项有 nf个隐向量。而在FM模型中,每一维特征的隐向量只有一个,可以看作FFM的特例,是把所有特征都归属到一个field时的FFM模型。根据FFM的field敏感特性,可以导出其模型方程。

           y=w_{0} +\sum_{i=1}^n w_{i}x_{i}+\sum_{i=1}^{n-1} \sum_{j=i+1}^{n} <x_{i,f_{j}},x_{jf_{i}}>x_{i}y_{i}

可以看到,如果隐向量的长度为 k,那么FFM的二次参数有 nfk 个,远多于FM模型的 nk个。此外,由于隐向量与field相关,FFM二次项并不能够化简,其预测复杂度是 O(kn^{2})

3.3 FNN模型

FM通过对于每一维特征的隐变量内积来提取特征组合,最终的结果也非常好。但是,虽然理论上来讲FM可以对高阶特征组合进行建模,但实际上因为计算复杂度的原因一般都只用到了二阶特征组合。那么对于高阶的特征组合来说,我们很自然的想法,通过多层的神经网络即DNN去解决

对于离散特征的处理,我们使用的是将特征转换成为one-hot的形式,但是将One-hot类型的特征维度高且比较稀疏,输入到DNN中,会导致网络参数太多

为解决该问题,FNN包含两个过程:先通过预训练得到embeding向量,然后把one-hot稀疏数据,映射到稠密层,作为DNN输入

模型底层先用FM对经过one-hot binary编码的输入数据进行embedding,把稀疏的二进制特征向量映射到 dense real 层,之后再把dense real 层作为输入变量进行建模,这种做法成功避免了高维二进制输入数据的计算复杂度。

3.4 NFM模型

参考:推荐系统遇上深度学习(七)--NFM模型理论和实践

在CTR预估中,为了解决稀疏特征的问题,学者们提出了FM模型来建模特征之间的交互关系。但是FM模型只能表达特征之间两两组合之间的关系,无法建模两个特征之间深层次的关系或者说多个特征之间的交互关系,因此学者们通过Deep Network来建模更高阶的特征之间的关系。

因此,FM和深度网络DNN的结合也就成为了CTR预估问题中主流的方法。有关FM和DNN的结合有两种主流的方法,并行结构和串行结构。

根据FM二阶推导:

去掉FM二阶中的最外层求和,可得到一个f维的向量,因此NFM模型预测公式为:

                     y=w_{0} +\sum_{i=1}^n w_{i}x_{i}+f(x)

其中,f(x)是用来建模特征之间交互关系的多层前馈神经网络模块,架构图如下所示:

Bi-Interaction Layer名字挺高大上的,其实它就是计算FM中的二次项的过程,因此得到的向量维度就是我们的Embedding的维度。最终的结果是:

                       f_{BI}(V_{x})=\frac{1}{2} [(\sum_{i=1}^nx_iv_i )^2-\sum_{i=1}^n(x_iv_i)^2 ]

3.5 DeepFM模型

参考:推荐系统遇上深度学习(三)--DeepFM模型理论和实践

网络结构如下:

                             \hat{y}=sigmoid(y_{FM}+y_{DNN})

FM部分:

                                   y=<w,x>+\sum_{j_1=1}^d \sum_{j_2=j_1+1}^dx_{j_1}\cdot x_{j_2}

DNN部分:

与其他网络区别:

实现:


3.6 Wide&Deep

https://blog.csdn.net/u010352603/article/details/80590129

参考:

[1] 经典!工业界深度推荐系统与CTR预估必读的论文汇总

[2] 从FM推演各深度学习CTR预估模型(附代码)

[3] 推荐系统理论及实战

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,905评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,140评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,791评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,483评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,476评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,516评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,905评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,560评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,778评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,557评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,635评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,338评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,925评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,898评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,142评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,818评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,347评论 2 342

推荐阅读更多精彩内容