传统推荐模型

image.png
image.png
  1. 即使是深度学习空前流行的今天,LR、FM等传统CTR模型仍然凭借其可解释性强、轻量级的训练部署要求、便于在线学习等不可替代的优势,拥有大量适用的应用场景。模型的应用不分新旧贵贱,熟悉每种模型的优缺点,能够灵活运用和改进不同的算法模型是算法工程师的基本要求。

  2. 传统CTR模型是深度学习CTR模型的基础。深度神经网络(Deep Nerual Network,DNN)从一个神经元生发而来,而LR正是单一神经元的经典结构;此外,影响力很大的FNN,DeepFM,NFM等深度学习模型更是与传统的FM模型有着千丝万缕的联系;更不要说各种梯度下降方法的一脉相承。所以说传统CTR模型是深度学习模型的地基和入口。

image.png

(1)协同过滤:物品/用户相似度,有矩阵稀疏的问题,引入矩阵分解模型(MF)解决这个问题。用户数量远大于商品数量,导致ItemCF比较受欢迎,UserCF比较少用。(而且用户在一段时间内往往对某一类商品感兴趣)

  • 协同过滤下,头部物品与其他物品相似性高(大家都买),尾部物品与其他物品相似性低(缺数据)。

  • 难以引入年龄,性别等特征


(2)矩阵分解:为每一个用户和视频生成一个隐向量,各自投影到隐向量的空间,在这个隐向量的空间距离越近,越是相似。

  • 用户矩阵:m个用户 X 隐向量(k维) 物品矩阵:隐向量(k维) X n个商品

  • k维越高表达能力越强,信息量越大,泛化程度越低。具体的取值需要多次实验得到推荐效果与工程开销的平衡。

  • 矩阵分解分为:特征值分解(只适用于方阵),奇异值分解(可以用于非方阵),梯度下降。

  • 奇异值分解:M=U_{mXk}\sum_{(kXk)}V_{kXn}^T,取奇异值topN的\sum对应的向量组成新的分解M=U_{mXk'}\sum_{(k'Xk')}V_{k'Xn}^T

  • 奇异值分解的问题:(1)互联网大部分用户历史很少,数据矩阵非常稀疏,但是奇异值分解要求共线矩阵是稠密的。(2)复杂度o(mn^2),对于用户上百万的互联网场景基本上凉凉。

  • 引入目标函数min_{p,q}\sum_{(u,i)\in R}(r_{ui}-q_i^Tp_u)^2+\lambda(||q_i||^2+||q_u||^2),利用梯度下降求解最优的U,V,加入U和V的L2防止过拟合。

  • 消除偏差系数:引入全局平均值u,物品i的平均评分bi,用户u的平均评分bu

  • 矩阵分解的有缺点:<1> 空间复杂度降到(n+m)*k的水平。<2> 与Embedding的思想不谋而合,可以和别的特征组合和拼接。


(3)LR模型:协同过滤只使用了用户之间,商品之间,还有用户-商品之间的显性还有隐性关系。LR则能融合更多的特征。此外还有增强了非线性能力的LS-PLM(大规模分片线性模型),LR发展出来的FM模型等。

  • LR将预测点击与否作为目标,参数wi可以解释为什么哪些特征更重要,输出y是一个(0,1)的连续型小数。

  • LR没法特征交叉还有筛选(没有交叉能力的模型可能会因为辛普森悖论得出错误的结论)


(4)因子分解机模型:在传统逻辑回归基础上,加入了二阶部分,使模型有了特征组合的能力。在此基础上发展的域感知因子分解机则通过加入特征域加强了特征交叉的能力。

  • LR无法特征交叉,人工特征又累效果又一般

  • POLY2模型:暴力穷举\sum_{j_1=1}\sum_{j_2=j1+1}w_{h(j_1,j_2)}x_{j_1}x_{j_2}(xj1与xj2是特征取1),<1> 处理互联网数据时本来就稀疏,这样暴力一下就更稀疏了,<2> 复杂度直接平方

  • FM模型(隐向量借鉴矩阵分解):

两阶(两特征交叉)

二阶部分:\sum_{j_1=1}\sum_{j_2=j1+1}w_{j_1}w_{j_2}x_{j_1}x_{j_2},使用两个特征隐向量做内积作为交叉特征的权重,训练复杂度从n^2降到了n*k级别。对于<B,C>的组合特征,可以利用<A,B>对B的隐向量进行更新,也可以利用<C,D>对C的隐向量进行更新。这大幅减少了模型对数据稀疏度的要求。对于从未出现的<A,D>也可以根据<A,B>和<C,D>中A和D的隐向量内积进行计算。FM可以利用梯度下降进行计算。

三阶(三特征交叉)
  • FFM模型(引入特征域):

在FM中计算x_{j1}与其他特征的交叉影响时,使用的都是同一个隐向量V_i

二阶部分:\sum_{j_1=1}\sum_{j_2=j1+1}(w_{j_1,f_2}w_{j_2,f_1})x_{j_1}x_{j_2},每个特征对应一组k维的隐向量,对x_{j_1}x_{j_2}进行交叉的时候,特征x_{j_1}会从底下的一组隐向量中挑出与特征x_{j_2}的域f_2对应的隐向量w_{j_1,f_2}进行交叉。复杂度k*n*n比FM的kn更高。

  • 如果引申到三阶特征交叉,甚至更高阶,又会因为组合爆炸的问题无法突破二阶特征交叉的瓶颈。接下来就需要GBDT上场了。

(5)组合模型:GBDT(生成离散的特征)+LR(CTR预测)

图中有两个树,一般都是多少个类对应多少棵树(多个二分类叠加)

按照决策树的规则落到的叶节点置为1,其他置为0,则有离散输出[0,...,1,...0],将各个子树的离散向量拼接在一起可得[0,..,1,..0..,1,..0,..1],决策树的深度决定了特征组合的阶数。GBDT模型容易过拟合。GBDT这种特征转换方式实际上丢失了大量特征的数值信息(连续变离散),因此我们不能简单说GBDT由于特征交叉的能力更强,效果就比FM或FFM好。

  • GBDT处理高维稀疏特征效果比较差,GBDT的惩罚项通常为叶子节点数和深度等,对于稀疏型数据,需要的树的节点不会太多,所以惩罚也有限,为了解决这个问题,后来的模型一般都加上了叶节点权重的惩罚项。(每棵tree在进行生长时,仅会选取一个特征,所以,高维稀疏特征,大部分是没有被选到是无效的。)
image.png
  • 特征交叉:两个特征年龄和性别,可以组合成 年龄_性别 的一个新特征,比如M_18,F_22等等,然后再对这个特征做one hot编码,即可得到新的特征属性值

  • LS-PLM(大规模分段线性模型,又称MLR模型)

如果对女装预测,显然不需要男生的数据,所以需要对不同用户群体先聚类,然后对各个分类施以LR进行CTR预估。

如图,LR不能拟合非线性数据,MLR可以拟合非线性数据.png

MLR就像它的名字一样,由很多个LR模型组合而成。用分片线性模式来拟合高维空间的非线性模式。

理论上来说,增大分片m可以带来无限制的非线性拟合能力,但是同样会增加计算、存储的开销,同时会带来过拟合的风险。

当我们将softmax函数1/1+e^{-x}作为分割函数σ(x),将sigmoid函数e^x1 / e^x1+...+e^xm作为拟合函数η(x)的时候,MLR模型为:p(y=1|x)=\sum_{i=1}^{m}\frac{e^{u_i^Tx}}{\sum_{j=1}^{m}e^{u_j^Tx}}\frac{1}{1+e^{-w_i^Tx}}

此时的混合模型可看做一个sum{softmax系数权重*sigmoid概率},当m=1时,退化为普通的LR:p(y=1|x)=\sum_{i=1}^{m}p(z=i|x)p(y|z=i,x)

MLR 在建模时引入了 L1 和 L2,1 范数正则,可以使得最终训练出来的模型具有较高的稀疏度。L2,1=\sum_{i=1}^{n}\sqrt{\sum_{j=1}^t}X_{i,j}^2(L2,1范数实为矩阵X每一行的l2范数和)L2,1范数还要求行稀疏(从行的角度看是l1)

image.png

线性偏置:< 1 > Position Bias:排名第1位和第5位的样本,点击率天然存在差异。宝贝展示的页面、位置影响点击率< 2 > Sample Bias:PC和Mobile上的样本,点击率天然存在差异。

?物品特征x,偏移向量y(场景,页数,位置等),学习联合概率p(x, y)

LS-PLM可看作加了注意力机制的三层神经网络,隐层是m个神经元(分片),注意力机制就是分片函数对神经元的打分权重。

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