FM又又又升级了?
點(diǎn)擊率模型大家都很熟悉了,特別是FM模型, 從最FM->FFM->...->FwFM->最后本篇的FmFM,全稱為 Field-matrixed Factorization Machines,該模型不僅可以做交叉特征的篩選,同時(shí)提出了一個(gè)高效的方式最小化維度的同時(shí)保證模型效果。
先回顧下最簡(jiǎn)單的LR,交叉特征需要人工挖掘,最后直接線性加權(quán),然后配上log loss:
然后是Poly2,在LR的基礎(chǔ)上增加特征交叉,每個(gè)特征之間都有wi,j要學(xué)習(xí),但是數(shù)據(jù)很稀疏,效果提升一般。
考慮到Poly2對(duì)交叉特征處理過于“暴力”,FM因此誕生,使得wi,j=<vi, vj>,這樣參數(shù)數(shù)量遠(yuǎn)遠(yuǎn)降低,同時(shí)也解決了數(shù)據(jù)稀疏的問題。
FFM則認(rèn)為wi,j=<vi, vj>是錯(cuò)的,沒有考慮到某些特征是屬于同一個(gè)field的,因此認(rèn)為wi,j=<vi, F(j), vj, F(i)>,取得了比FM更好的效果,如下所示:
FwFM被提出,顯示的指明交互特征的權(quán)重,因?yàn)橛行┙换ヌ卣鲿?huì)給模型帶來負(fù)向效果:
FmFM提出用一個(gè)矩陣MF(i),F(j)描述不同field之間的交互,如下式所示:
FmFM可以看作FwFM的擴(kuò)展,這里用一個(gè)矩陣代替標(biāo)量r來描述field之間的交互,該矩陣把特征i的embedding空間映射到特征j的embedding空間,論文給了一個(gè)范例解釋了如何計(jì)算特征i和j,特征i和k之間的交互特征:
論文接下來對(duì)FM家族的統(tǒng)一框架進(jìn)行了闡述,對(duì)于FM而言,我們只需將MF(i),F(j)變成單位矩陣,FmFM就變成FM了。對(duì)于FwFM而言,我們?nèi)菀椎玫?#xff1a;
所以對(duì)于FwFM而言,就是讓MF(i),F(j) = rF(i),F(j)*I。同理,FmFM與FvFM也是有著緊密的聯(lián)系,如下式所示:
所以FmFM可以算是一個(gè)統(tǒng)一FM/FwFM/FvFM的框架,同時(shí)FmFM和OPNN同樣關(guān)系緊密。
以下是各個(gè)模型的復(fù)雜度對(duì)比:
看到這里,想問FmFM就這?FmFM其實(shí)還有個(gè)獨(dú)一無(wú)二的特性。以往無(wú)論什么FM模型,都要求所有特征的維度是統(tǒng)一的,都是K的大小。在FmFM就沒必要統(tǒng)一維度,比如特征i,j,k維度都不同,我們依然可以計(jì)算他們之間的特征交叉,如下圖所示:
因?yàn)椴煌琭ield的特征數(shù)量不同,需要的維度其實(shí)是不同的,比如性別特征,就男/女兩種,沒必要用統(tǒng)一的128維度去表達(dá)。然后論文又提出了一個(gè)特別好的方法去降低各個(gè)特征的維度,一共分為兩步,第一步先統(tǒng)一設(shè)定為維度K,然后訓(xùn)練一個(gè)模型,訓(xùn)練完后對(duì)每個(gè)特征跑PCA降維,實(shí)驗(yàn)證明保留95%原始方差的降維效果最好,第二步就是降維后重train該模型,兩個(gè)模型最終對(duì)比效果并沒有下降。
FmFM在不同數(shù)據(jù)集的表現(xiàn)均不亞于其他FM模型。
在維度優(yōu)化后,效果依然不遜色。
論文還有很多其他細(xì)節(jié),感興趣參考原文。
1、FM2: Field-matrixed Factorization Machines for Recommender Systems
FM"又又又"升級(jí)了?更多干貨,請(qǐng)關(guān)注公眾號(hào):煉丹筆記總結(jié)
- 上一篇: AAAI21最佳论文Informer:效
- 下一篇: 炼丹侠必知的9大池化操作汇总