2020-06-10-深度學(xué)習(xí)推薦系統(tǒng) 0-2章

序言

本書的目的是“從技術(shù)創(chuàng)造的視角,以具體的技術(shù)誕生場(chǎng)景為藍(lán)圖,試圖引導(dǎo)讀者學(xué)習(xí)和掌握工業(yè)界模型設(shè)計(jì)背后真正“銀彈” - 目的是解決什么樣的問題”

深度學(xué)習(xí)打破之前原有的學(xué)術(shù)界模型復(fù)雜條件苛刻的情況,它具有以下特點(diǎn):

  1. 開源工具多
  2. 深度模型的模塊標(biāo)準(zhǔn)化程度高
  3. 模型的設(shè)計(jì)和實(shí)現(xiàn)結(jié)構(gòu),大大提升了算法迭代效率
    工業(yè)界技術(shù)的正確視角是問題驅(qū)動(dòng)而不是拿著錘子找釘子

問題驅(qū)動(dòng): 定義清楚問題,想清楚技術(shù)的需求,然后尋找或構(gòu)思相應(yīng)的技術(shù)工具

以阿里為例它通過電商場(chǎng)景的行為模式和用戶興趣的利用,進(jìn)行了一系列的算法迭代,是問題驅(qū)動(dòng)的典型例子.

現(xiàn)在,大部分公司的工業(yè)級(jí)深度學(xué)習(xí)處于1.0, 已經(jīng)遇到了瓶頸,傳統(tǒng)的:

  1. 搭積木
  2. 喂數(shù)據(jù)
  3. 算法改進(jìn)需要工程大量的升級(jí)改造

這幾種形式已經(jīng)難以為繼,需要進(jìn)入2.0階段,作者判斷和呼吁

對(duì)于推薦\搜索和廣告領(lǐng)域,業(yè)界需要重新定義和設(shè)計(jì)新的系統(tǒng)架構(gòu),以適應(yīng)深度學(xué)習(xí)爆發(fā)式發(fā)展帶來的領(lǐng)先算法那能力.

需要專項(xiàng)更為復(fù)雜和系統(tǒng)性的技術(shù)體系,進(jìn)一步創(chuàng)造技術(shù)紅利.

1. 互聯(lián)網(wǎng)增長(zhǎng)引擎-推薦系統(tǒng)

推薦系統(tǒng)的意義

用戶角度:推薦系統(tǒng)解決在"信息過載"的情況下,用戶如何高效獲得感興趣信息的問題. 即用戶體驗(yàn).
公司角度:推薦系統(tǒng)解決產(chǎn)品能夠最大限度地吸引用戶,留存用戶,增加用戶粘性,提高用戶轉(zhuǎn)化率的問題,從而達(dá)到公司商業(yè)目標(biāo)連續(xù)增長(zhǎng)的目的. 即商業(yè)利益.

這些目表可能是視頻公司的觀看時(shí)長(zhǎng)\新聞公司的點(diǎn)擊率\電商公司的轉(zhuǎn)化率等

推薦系統(tǒng)的邏輯框架

推薦系統(tǒng)的問題定義: 通過用戶U\場(chǎng)景C\物品I,預(yù)測(cè)用戶對(duì)特定物品的喜好程度.


image.png

推薦系統(tǒng)的架構(gòu)

如上圖,推薦工程師需要解決的問題有兩類:

  1. 數(shù)據(jù)問題:數(shù)據(jù)的存儲(chǔ),處理,實(shí)時(shí)數(shù)據(jù)處理
  2. 模型問題:模型的構(gòu)建,迭代,上線,流式更新

2. 前深度學(xué)習(xí)時(shí)代-推薦系統(tǒng)的進(jìn)化之路

傳統(tǒng)的推薦算法那的演進(jìn)如下圖, 傳統(tǒng)的推薦模型是很重要的基礎(chǔ):

  1. 目前cf\lr等傳統(tǒng)的推薦模型具有可解釋性強(qiáng)\硬件環(huán)境要求低\抑郁快速訓(xùn)練和部署的優(yōu)勢(shì),有大量使用的場(chǎng)景;
  2. 傳統(tǒng)的是深度學(xué)習(xí)推薦的基礎(chǔ).

例如,lr是是單層單神經(jīng)元的神經(jīng)網(wǎng)絡(luò);因子分解演化除了FM,deepFM等深度模型具有很好的效果.

上圖,可分為4個(gè)部分:

  1. 協(xié)同過濾(藍(lán)色)
  2. 邏輯回歸: LR
  3. 因子分解機(jī):FM,FFM
  4. 組合模型:GBDT+LR

CF

通過貢獻(xiàn)矩陣和合適的相似性度量的方法,進(jìn)行推薦的技術(shù)

userCF細(xì)節(jié)不贅述
缺點(diǎn):

  1. 實(shí)際場(chǎng)景中user量大,開銷大,計(jì)算量大

itemCF細(xì)節(jié)不贅述

CF的缺點(diǎn)

協(xié)同過濾雖然直觀,可解釋性強(qiáng),但是不具有較強(qiáng)的泛化能力,無法將兩個(gè)物品相似這一信息推廣到其他物品的相似性計(jì)算上.導(dǎo)致里一個(gè)嚴(yán)重的問題:

熱門物品具有很強(qiáng)的頭哦不相應(yīng),容易跟大量物品產(chǎn)生相似性;而尾部物品由于特征向量稀疏,很少與其他物品產(chǎn)生相似性,導(dǎo)致很少被推薦.

矩陣分解

矩陣分解即將共現(xiàn)矩陣分解得到用戶和物品的隱向量.


矩陣分解有幾種方式:
1.特征值分解eigen decomposition
2.奇異值分解sigular value decomposition
- 要求共現(xiàn)矩陣是稠密的,復(fù)雜度高,不適合大數(shù)據(jù)場(chǎng)景
3.梯度下降

優(yōu)缺點(diǎn)

  1. 泛化能力強(qiáng)
  2. 空間復(fù)雜度低(n+m)k
  3. 易于擴(kuò)展和靈活:和embedding的思路類似

邏輯回歸

理論知識(shí)略,網(wǎng)上很多了

優(yōu)點(diǎn)

1.物理意義匹配:邏輯回歸是廣義線性模型的一種,它的假設(shè)是因變量y服從伯努利分布.對(duì)于用戶是否點(diǎn)擊的場(chǎng)景也可以定義為這個(gè)分布.
2.可解釋性強(qiáng):根據(jù)權(quán)重解釋特征的強(qiáng)弱.
3.工程化簡(jiǎn)單

缺點(diǎn)

無法進(jìn)行交叉,特征篩選等,有信息損失.

FM/FFM

書中使用辛普森悖論解釋了不同性別數(shù)據(jù)和總體數(shù)據(jù)得到不同物品點(diǎn)擊率順序的例子,說明單一特征信息的大量損失問題.

ploy2

二階乘積是最直接的方法,但是數(shù)據(jù)非常稀疏,權(quán)重參數(shù)數(shù)量n^2上升

FM模型-隱向量特征交叉

FM與PLOY相比,主要區(qū)別是用兩個(gè)向量的內(nèi)積(w_{j1}.w_{j2})取代了直接交叉.

參數(shù)量nk個(gè)

優(yōu)點(diǎn)

  1. 參數(shù)從n^2縮減到了n^k;
  2. 稀疏性減少:不局限于單一的交叉存在時(shí)才能學(xué)習(xí),只要有其中一個(gè)特征參數(shù),就會(huì)被更新.

FFM模型-引入特征域的概念

引入了特征域的概念,每個(gè)特征對(duì)于另外的特征(域)都有一個(gè)單獨(dú)的向量表達(dá)f_1
參數(shù)量nkf個(gè)

image.png

GBDT+LR-特征工程化的開端

之前提到了FFM模型,提升了特征的交叉English,但也只有二階交叉的形式,如果再進(jìn)行更高階的交叉,會(huì)產(chǎn)生組合爆炸和計(jì)算復(fù)雜度過高的問題.

2014年FB提出了GBDT+LR的方式: 利用GBDT自動(dòng)進(jìn)行特征篩選和組合,進(jìn)而生成新的離散特征向量,在吧該向量特征當(dāng)做LR模型的輸入.


image.png

GBDT的特征轉(zhuǎn)換過程

我們首先需要訓(xùn)練一個(gè)GBDT,假設(shè)我們訓(xùn)練好的模型有三顆樹組成,一個(gè)樣本輸入樹中后,會(huì)知道它到底經(jīng)過了這些樹的那些葉子節(jié)點(diǎn),我們把這些階段標(biāo)成1其他為0即可.

MLR

阿里提出的MLR模型是對(duì)lr模型的一個(gè)擴(kuò)展,它假設(shè)樣本可分為m類,每一類也會(huì)學(xué)習(xí)到參數(shù),并與lr結(jié)合,使得模型有了更強(qiáng)的學(xué)習(xí)復(fù)雜分布數(shù)據(jù)的能力:


如果從深度學(xué)習(xí)的角度來理解這個(gè)模型,可看做是一個(gè)加入了(attention)機(jī)制的神經(jīng)網(wǎng)絡(luò)模型.

第二章模型總結(jié)

image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容