推荐系统(4)-逻辑回归LR、POLY2、FM、FFM
邏輯回歸LR、POLY2、FM、FFM
- 1.邏輯回歸LR
- 2.辛普森悖論
- 3.POLY2
- 4.FM-2010
- 5.FFM
- 6.GBDT+LR-2014
- 7.LS-PLM-2017
《深度學(xué)習(xí)/推薦系統(tǒng)》讀書(shū)筆記
1.邏輯回歸LR
Logistic Regression – 融合多種特征,通過(guò)sigmoid 函數(shù),預(yù)測(cè)樣本的被點(diǎn)擊的概率。樣本用特征向量x=[x1,x2,...,xn]x=[x_1,x_2,...,x_n]x=[x1?,x2?,...,xn?]表示,n為不同特征的數(shù)量。
f(z)=11+e?zf(z)=\frac{1}{1+e^{-z}}f(z)=1+e?z1?
z=w0+∑i=1nwixi(1)z=w_0+\sum_{i=1}^nw_ix_i\tag{1}z=w0?+i=1∑n?wi?xi?(1)
(每個(gè)特征如何編碼[性別,年齡,身高],這里應(yīng)該默認(rèn)每一維度就是一個(gè)特征吧,而不是每個(gè)特征one-hot 編碼的拼接。)
CTR-Click Through Rate
記樣本被點(diǎn)擊的概率為P(y=1∣x,w)=fw(x)P(y=1|x,w)=f_w(x)P(y=1∣x,w)=fw?(x),
樣本不被點(diǎn)擊的概率為P(y=0∣x,w)=1?fw(x)P(y=0|x,w)=1-f_w(x)P(y=0∣x,w)=1?fw?(x)
那么樣本被點(diǎn)擊的概率分布為:P(y∣x,w)=[fw(x)]y[1?fw(x)]1?yP(y|x,w)=[f_w(x)]^y[1-f_w(x)]^{1-y}P(y∣x,w)=[fw?(x)]y[1?fw?(x)]1?y
最大似然估計(jì)的目標(biāo)函數(shù)為:
L(w)=∏i=1mP(y∣xi,w)L(w)=\prod_{i=1}^mP(y|x^i,w)L(w)=i=1∏m?P(y∣xi,w)
邏輯回歸模型做推薦的優(yōu)勢(shì)
邏輯回歸的局限性:無(wú)法進(jìn)行特征交叉組成高維特征
后續(xù)的POLY2,FM,FFM 用于CTR預(yù)測(cè)時(shí),都可以看作在LR目標(biāo)函數(shù)的基礎(chǔ)上,研究不同的特征組合方式。訓(xùn)練參數(shù)的方法都與上述LR中的最大似然一致。
2.辛普森悖論
在對(duì)樣本進(jìn)行分組研究時(shí),在分組比較中占優(yōu)勢(shì)的一方,在總評(píng)中有時(shí)反而是失勢(shì)的一方。
demo:按性別分組后的數(shù)據(jù),男女都是推薦視屏B;但是將所有的數(shù)據(jù)合并在一起后,卻得出推薦視頻A的結(jié)論。
獲取特征非線性組合的一個(gè)常用方法和核方法(核方法計(jì)算量大,內(nèi)存需求大)
3.POLY2
Degree-2 Polynomial Margin–度為2多項(xiàng)式特征
考慮所有二階特征組合方式,并且為所有的二階特征構(gòu)建可學(xué)習(xí)參數(shù)。
z=w0+∑i=1nwixi+∑i=1n?1∑j=i+1nwi,jxixjz=w_0+\sum_{i=1}^nw_ix_i+\sum_{i=1}^{n-1}\sum_{j=i+1}^nw_{i,j}x_ix_jz=w0?+i=1∑n?wi?xi?+i=1∑n?1?j=i+1∑n?wi,j?xi?xj?
相比于原始LR的式子(1),新增組合特征n(n?1)2\frac{n(n-1)}{2}2n(n?1)?
缺點(diǎn):
4.FM-2010
Factorization Machine–因子分解機(jī)(原來(lái)因子分解機(jī)本身是一個(gè)可以展開(kāi)研究的內(nèi)容,本博文注重FM特征組合方式,)
2010年提出,2012-2014年,成為業(yè)內(nèi)主流的推薦模型之一。原文–《Fast Context-aware Recommendations with Factorization Machines》
FM為每個(gè)特征學(xué)習(xí)一個(gè)隱權(quán)重向量(latent vector), 在做特征交叉時(shí),使用兩個(gè)特征隱權(quán)重向量的內(nèi)積作為交叉特征的曲子權(quán)重(權(quán)重向量的學(xué)習(xí),后續(xù)補(bǔ)上好吧)
z=w0+∑i=1nwixi+∑i=1n?1∑j=i+1n<wj1,wj2>xixjz=w_0+\sum_{i=1}^nw_ix_i+\sum_{i=1}^{n-1}\sum_{j=i+1}^n<w_{j_1},w_{j_2}>x_ix_jz=w0?+i=1∑n?wi?xi?+i=1∑n?1?j=i+1∑n?<wj1??,wj2??>xi?xj?
優(yōu)點(diǎn):
5.FFM
Field-aware Factorization Machine
不同特征在組合時(shí),隱向量的作用域應(yīng)該不同;也就是說(shuō)不同的特征不止一個(gè)隱權(quán)重向量。
z=w0+∑i=1nwixi+∑i=1n?1∑j=i+1n<wj1,f2,wj2,f1>xixjz=w_0+\sum_{i=1}^nw_ix_i+\sum_{i=1}^{n-1}\sum_{j=i+1}^n<w_{j_1,f_2},w_{j_2,f_1}>x_ix_jz=w0?+i=1∑n?wi?xi?+i=1∑n?1?j=i+1∑n?<wj1?,f2??,wj2?,f1??>xi?xj?
適用于離散特征聚合,連續(xù)特征最好使用FM 。
參考博文:CTR預(yù)估傳統(tǒng)模型
6.GBDT+LR-2014
2014-Facebook 提出利用GBDT自動(dòng)進(jìn)行特征篩選和組合,進(jìn)而形成新的離散特征向量,將該特征向量當(dāng)作LR模型的輸入。
用GBDT構(gòu)建特工程和利用LR預(yù)估CTR這兩步是獨(dú)立訓(xùn)練的,不存在將LR的梯度回傳到GBDT的復(fù)雜問(wèn)題。
GBDT-梯度上升決策樹(shù)。每棵樹(shù)都是一棵標(biāo)準(zhǔn)的回歸樹(shù)生成過(guò)程,其目標(biāo)是上一棵樹(shù)的預(yù)測(cè)值D(x)D(x)D(x)與樣本標(biāo)簽f(x)f(x)f(x)之間的殘差:
R(x)=f(x)?D(x)R(x)=f(x)-D(x)R(x)=f(x)?D(x)
每棵樹(shù)每個(gè)節(jié)點(diǎn)分裂是一個(gè)自然的特征選擇的過(guò)程,多層結(jié)點(diǎn)結(jié)構(gòu)則對(duì)特征進(jìn)行了有效的自動(dòng)組合。(沒(méi)法產(chǎn)生新的特征)
每個(gè)樣本轉(zhuǎn)換成特征向量的方式很巧妙–樣本落入的葉子結(jié)點(diǎn)為1,沒(méi)有落入的結(jié)點(diǎn)為0,構(gòu)成一個(gè)類(lèi)似于one-hot編碼的向量,把所有子樹(shù)編碼向量串在一起,構(gòu)成了該樣本的特征向量。
迷惑點(diǎn)1:GBDT模型的訓(xùn)練過(guò)程沒(méi)有實(shí)驗(yàn)過(guò),特征分裂與一般回歸樹(shù)一樣么?殘差有什么用呢?
迷惑點(diǎn)2:樣本特征轉(zhuǎn)換,最終特征向量與原始特征的關(guān)聯(lián)不是很強(qiáng)了,可解釋性減弱。
7.LS-PLM-2017
2017年-阿里巴巴公布大規(guī)模分段線性模型(Large Scale Piece-wise Linear Model)。其實(shí)早在2012年他就成為了阿里巴巴主流的推薦模型。
LS-PLM 又被稱(chēng)作混合羅輯回歸(Mixed Logistic Regression),先對(duì)樣本進(jìn)行分片(聚類(lèi)操作?),在樣本分片中應(yīng)用羅輯回歸。
靈感來(lái)源很重要:女性受眾點(diǎn)擊女裝廣告的CTR,顯然不希望把男性用戶(hù)點(diǎn)擊數(shù)碼產(chǎn)品的樣本數(shù)據(jù)也考慮進(jìn)來(lái)。
某個(gè)樣本被點(diǎn)擊的概率為分片加權(quán)平均:
f(x)=∑i=1mπi(x)ηi(x)=∑i=1meμix∑j=1meμjx11+e?wixf(x)=\sum_{i=1}^m\pi_i(x)\eta_i(x)=\sum_{i=1}^m\frac{e^{\mu_ix}}{\sum_{j=1}^me^{\mu_jx}}\frac{1}{1+e^{-w_ix}}f(x)=i=1∑m?πi?(x)ηi?(x)=i=1∑m?∑j=1m?eμj?xeμi?x?1+e?wi?x1?
其中m為分片數(shù)。μi\mu_iμi?和wiw_iwi?的學(xué)習(xí)同時(shí)進(jìn)行么? 阿里巴巴給出m的經(jīng)驗(yàn)值12最佳。LS-PLM適用于工業(yè)級(jí)推薦、廣告等大規(guī)模稀疏數(shù)據(jù)場(chǎng)景。
主要優(yōu)點(diǎn):
LS-PLM可以看作加入了注意力機(jī)制的三層神經(jīng)網(wǎng)絡(luò):輸入層為樣本特征,隱藏層為m個(gè)以sigmoid為激活函數(shù)的神經(jīng)元,輸出層為單個(gè)神經(jīng)元。
總結(jié)
以上是生活随笔為你收集整理的推荐系统(4)-逻辑回归LR、POLY2、FM、FFM的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: C++:31---对象引用和赋值
- 下一篇: 利用posix_fadvise清理系统中