推薦系統(tǒng)入門
1. 推薦系統(tǒng)的意義
” role=”presentation” style=”position: relative;">網(wǎng)絡(luò)爆炸階段信息過載的解決方案:
” role=”presentation” style=”position: relative;”>對于用戶來說:找到有趣的東西,協(xié)助決策,找到新的東西。
” role=”presentation” style=”position: relative;”>對于商家來說:提供人性化的服務(wù),增強(qiáng)信任和粘性,增加收入。
2. 推薦系統(tǒng)的構(gòu)成
” role=”presentation” style=”position: relative;">前臺顯示頁面、后臺日志系統(tǒng)、推薦系統(tǒng)等部分,如圖所示:
3. 建議對系統(tǒng)進(jìn)行評估
3.1 離線試驗(yàn)
也就是線下部分,用來訓(xùn)練模型。
優(yōu)勢:
- 無需對實(shí)際系統(tǒng)進(jìn)行控制;
- 無需用戶參與感受;
- 速度快,可以檢測大量算法;
缺陷:
- 無法計(jì)算商業(yè)關(guān)注的指標(biāo);
- 離線試驗(yàn)指標(biāo)商業(yè)指標(biāo)存在差距;
3.2 用戶調(diào)查
優(yōu)勢:
- 獲得很多反映客戶主觀感受的指標(biāo);
- 測試風(fēng)險(xiǎn)很低,發(fā)生錯(cuò)誤后很容易填補(bǔ);
缺陷:
招募檢測客戶的成本較高;
設(shè)計(jì)雙盲試驗(yàn)比較困難,在試驗(yàn)環(huán)境中收集的試驗(yàn)指標(biāo)在現(xiàn)實(shí)環(huán)境中可能無法再現(xiàn);
一般情況下,一個(gè)新的推薦系統(tǒng)最終上線需要經(jīng)過以上三個(gè)實(shí)驗(yàn):
1) 在很多離線指標(biāo)上,通過離線實(shí)驗(yàn)證明其算法優(yōu)于當(dāng)前算法;
2) 根據(jù)用戶調(diào)查,確定其客戶滿意度不低于當(dāng)前算法;
3) 在我們關(guān)心的指標(biāo)上,通過在線AB檢測,確定其優(yōu)于當(dāng)前算法;
4 建議進(jìn)行系統(tǒng)評估
4.1 準(zhǔn)確度
- RMSE(均方根誤差),MAE(平均絕對誤差)
- Top N推薦
” role=”presentation” style=”position: relative;">主要是:precison準(zhǔn)確度,recall召回率指標(biāo)
” role=”presentation” style=”position: relative;">準(zhǔn)確性是指在推薦的10條信息中,顧客真正感興趣的條數(shù),召回率是指顧客真正感興趣的你推薦條數(shù)的比例。
下圖中R(U)為推薦,T(U)選擇用戶:
” role=”presentation” style=”position: relative;”>
有關(guān)更多信息,請參考:在機(jī)器學(xué)習(xí)中深入探討ROC和PR曲線
4.2 覆蓋率
” role=”presentation” style=”position: relative;">推薦的物品約占物品集合的比例;
4.3 多樣性
” role=”presentation” style=”position: relative;">推薦列表中物體兩組之間的差異;
4.4 原創(chuàng)、驚喜、實(shí)時(shí)、商業(yè)目標(biāo)等。
5. 推薦系統(tǒng)
5.1 基于內(nèi)容的推薦系統(tǒng)
優(yōu)勢:
- 推薦基于顧客喜歡的物品的屬性/信息。
- 需要對內(nèi)容進(jìn)行分析,不需要考慮用戶與客戶之間的聯(lián)系。
缺陷:
- 要求內(nèi)容易抽取成有價(jià)值的特征,特征內(nèi)容具有良好的結(jié)構(gòu)性;
- 無法很好地處理一詞多義和一義多詞帶來的語義問題;
步驟:
- 建立一個(gè)推薦物品的特點(diǎn)。
- 建立一個(gè)用戶喜歡的物品的特點(diǎn)。
- 計(jì)算相似度
例如,文檔中常用的余弦相似性:
cos=w1(w1,w2)?w2||w1||||?||w2||||| role=”presentation” style=”text-align: center; position: relative;”>cos=w1(w1,w2)?w2||w1||||?|w2||cos(w1,w2)=w1?w2||w1|||?||w2||
5.2 協(xié)同過濾
5.2.1 協(xié)同過濾基于用戶(UserCF)
算法步驟:
- 找出與目標(biāo)用戶興趣相似的客戶集合,計(jì)算用戶的相似性;
- 找出“近鄰”,對近鄰在新物品的評價(jià)(評分)加權(quán)推薦。
下面這個(gè)很直觀的例子:
兔與米老鼠最相似,則向米老鼠推薦兔喜愛的物品:
5.2.2 基于物體的協(xié)同過濾(ItemCF)
算法步驟:
- 對有相同用戶互動(dòng)的物品,計(jì)算物體的相似性;
- 找到物品“近鄰”,推薦。
衡量相似度:
協(xié)同過濾的對比:
在這些情況下,ItemCF可以在一定的前提下緩解冷啟動(dòng),而且它更穩(wěn)定,而且更有說服力。
協(xié)同過濾的優(yōu)點(diǎn)
- 基于用戶行為,推薦內(nèi)容不需要先驗(yàn)知識。
- 只要使用者與商品相關(guān)矩陣,結(jié)構(gòu)緊湊。
- 當(dāng)用戶行為豐富時(shí),效果良好。
協(xié)同過濾缺陷
- 需要大量的顯性/隱性用戶行為
- 商品之間需要完全相同的聯(lián)系,類似的不行。
- 假定顧客的興趣主要取決于以前的行為,而與當(dāng)前前后文環(huán)境無關(guān)。
- 受數(shù)據(jù)稀疏影響??蛇x擇二次關(guān)聯(lián)。
冷啟動(dòng)問題
對于新客戶
- 對于新客戶來說,所有推薦系統(tǒng)都有這個(gè)問題。
- 推薦很受歡迎的商品
- 收集一些信息 在用戶注冊的時(shí)候收集一些信息
- 用戶注冊后,使用一些互動(dòng)游戲等來決定喜歡和不喜歡。
對于新商品
- 根據(jù)自己的屬性,尋求與原產(chǎn)品的相似性。
- Item-可以推薦based協(xié)同過濾。
5.3 推薦系統(tǒng)基于矩陣分解。
” role=”presentation” style=”position: relative;">原理:根據(jù)現(xiàn)有的評分矩陣(很稀疏),將其分解為低維用戶特征矩陣(評分者對每一個(gè)因素的喜好程度)和商品特征矩陣(商品包括每一個(gè)因素的水平),然后反過來分析數(shù)據(jù)(客戶特征矩陣乘以商品特征矩陣獲得新的評分矩陣)以獲得預(yù)測結(jié)果;
SVD
” role=”presentation” style=”position: relative;">SVD的時(shí)間復(fù)雜度為O(m^3)M往往稀疏,有空缺值。簡單的方法就是把空缺值補(bǔ)上隨機(jī)值,然后svd就可以分解了,但是推薦效果一般,所以這個(gè)問題一般會轉(zhuǎn)化為優(yōu)化問題;同時(shí),原始矩陣有0多個(gè),不應(yīng)該用0填充。
矩陣分解
也就是說,給出一個(gè)損失函數(shù),然后進(jìn)行優(yōu)化。
5.4 混合推薦
(1)加權(quán)混合: 根據(jù)一定的權(quán)重,使用線性公式組合幾種不同的推薦。具體權(quán)重值需要在測試數(shù)據(jù)集中反復(fù)測試,才能達(dá)到最佳的推薦效果;
(2)轉(zhuǎn)換混合:對于不同的情況(信息量、系統(tǒng)運(yùn)行情況、用戶和物體的數(shù)量等)。),推薦策略可能有很大的不同,所以轉(zhuǎn)換混合方式是允許選擇最合適的推薦算法,在不同的情況下計(jì)算推薦;
(3)分區(qū)混合:采用多種推薦算法,并向用戶顯示不同的推薦結(jié)果;事實(shí)上,Amazon,當(dāng)當(dāng)網(wǎng)等許多電子商務(wù)網(wǎng)站都采用這種方式,用戶可以得到非常全面的推薦,也更容易找到自己想要的東西;
(4)分層混合:采用多種推薦算法,將一種推薦算法的結(jié)果作為另一種輸入,然后綜合每種推薦算法的優(yōu)缺點(diǎn),獲得更準(zhǔn)確的推薦;
參考資料:
1. 七月在線推薦系統(tǒng)原理與應(yīng)用
2. 推薦系統(tǒng)
1. 推薦系統(tǒng)的意義
” role=”presentation” style=”position: relative;">網(wǎng)絡(luò)爆炸階段信息過載的解決方案:
” role=”presentation” style=”position: relative;”>對于用戶來說:找到有趣的東西,協(xié)助決策,找到新的東西。
” role=”presentation” style=”position: relative;”>對于商家來說:提供人性化的服務(wù),增強(qiáng)信任和粘性,增加收入。
2. 推薦系統(tǒng)的構(gòu)成
” role=”presentation” style=”position: relative;">前臺顯示頁面、后臺日志系統(tǒng)、推薦系統(tǒng)等部分,如圖所示:
3. 建議對系統(tǒng)進(jìn)行評估
3.1 離線試驗(yàn)
也就是線下部分,用來訓(xùn)練模型。
優(yōu)勢:
- 無需對實(shí)際系統(tǒng)進(jìn)行控制;
- 無需用戶參與感受;
- 速度快,可以檢測大量算法;
缺陷:
- 無法計(jì)算商業(yè)關(guān)注的指標(biāo);
- 離線試驗(yàn)指標(biāo)商業(yè)指標(biāo)存在差距;
3.2 用戶調(diào)查
優(yōu)勢:
- 獲得很多反映客戶主觀感受的指標(biāo);
- 測試風(fēng)險(xiǎn)很低,發(fā)生錯(cuò)誤后很容易填補(bǔ);
缺陷:
招募檢測客戶的成本較高;
設(shè)計(jì)雙盲試驗(yàn)比較困難,在試驗(yàn)環(huán)境中收集的試驗(yàn)指標(biāo)在現(xiàn)實(shí)環(huán)境中可能無法再現(xiàn);
一般情況下,一個(gè)新的推薦系統(tǒng)最終上線需要經(jīng)過以上三個(gè)實(shí)驗(yàn):
1) 在很多離線指標(biāo)上,通過離線實(shí)驗(yàn)證明其算法優(yōu)于當(dāng)前算法;
2) 根據(jù)用戶調(diào)查,確定其客戶滿意度不低于當(dāng)前算法;
3) 在我們關(guān)心的指標(biāo)上,通過在線AB檢測,確定其優(yōu)于當(dāng)前算法;
4 建議進(jìn)行系統(tǒng)評估
4.1 準(zhǔn)確度
- RMSE(均方根誤差),MAE(平均絕對誤差)
- Top N推薦
” role=”presentation” style=”position: relative;">主要是:precison準(zhǔn)確度,recall召回率指標(biāo)
” role=”presentation” style=”position: relative;">準(zhǔn)確性是指在推薦的10條信息中,顧客真正感興趣的條數(shù),召回率是指顧客真正感興趣的你推薦條數(shù)的比例。
下圖中R(U)為推薦,T(U)選擇用戶:
” role=”presentation” style=”position: relative;”>
有關(guān)更多信息,請參考:在機(jī)器學(xué)習(xí)中深入探討ROC和PR曲線
4.2 覆蓋率
” role=”presentation” style=”position: relative;">推薦的物品約占物品集合的比例;
4.3 多樣性
” role=”presentation” style=”position: relative;">推薦列表中物體兩組之間的差異;
4.4 原創(chuàng)、驚喜、實(shí)時(shí)、商業(yè)目標(biāo)等。
5. 推薦系統(tǒng)
5.1 基于內(nèi)容的推薦系統(tǒng)
優(yōu)勢:
- 推薦基于顧客喜歡的物品的屬性/信息。
- 需要對內(nèi)容進(jìn)行分析,不需要考慮用戶與客戶之間的聯(lián)系。
缺陷:
- 要求內(nèi)容易抽取成有價(jià)值的特征,特征內(nèi)容具有良好的結(jié)構(gòu)性;
- 無法很好地處理一詞多義和一義多詞帶來的語義問題;
步驟:
- 建立一個(gè)推薦物品的特點(diǎn)。
- 建立一個(gè)用戶喜歡的物品的特點(diǎn)。
- 計(jì)算相似度
例如,文檔中常用的余弦相似性:
cos=w1∗(w1,w2);|w2|||||#x2217||||||;||w2||||| role=”presentation” style=”text-align: center; position: relative;”>cos=w1(w1,w2)?w2||w1|||?|w2||cos(w1,w2)=w1?w2||w1|||?||w2||
5.2 協(xié)同過濾
5.2.1 協(xié)同過濾基于用戶(UserCF)
算法步驟:
- 找出與目標(biāo)用戶興趣相似的客戶集合,計(jì)算用戶的相似性;
- 找出“近鄰”,對近鄰在新物品的評價(jià)(評分)加權(quán)推薦。
下面這個(gè)很直觀的例子:
兔與米老鼠最相似,則向米老鼠推薦兔喜愛的物品:
5.2.2 基于物體的協(xié)同過濾(ItemCF)
算法步驟:
- 對有相同用戶互動(dòng)的物品,計(jì)算物體的相似性;
- 找到物品“近鄰”,推薦。
衡量相似度:
協(xié)同過濾的對比:
在這些情況下,ItemCF可以在一定的前提下緩解冷啟動(dòng),而且它更穩(wěn)定,而且更有說服力。
協(xié)同過濾的優(yōu)點(diǎn)
- 基于用戶行為,推薦內(nèi)容不需要先驗(yàn)知識。
- 只要使用者與商品相關(guān)矩陣,結(jié)構(gòu)緊湊。
- 當(dāng)用戶行為豐富時(shí),效果良好。
協(xié)同過濾缺陷
- 需要大量的顯性/隱性用戶行為
- 商品之間需要完全相同的聯(lián)系,類似的不行。
- 假定顧客的興趣主要取決于以前的行為,而與當(dāng)前前后文環(huán)境無關(guān)。
- 受數(shù)據(jù)稀疏影響??蛇x擇二次關(guān)聯(lián)。
冷啟動(dòng)問題
對于新客戶
- 對于新客戶來說,所有推薦系統(tǒng)都有這個(gè)問題。
- 推薦很受歡迎的商品
- 收集一些信息 在用戶注冊的時(shí)候收集一些信息
- 用戶注冊后,使用一些互動(dòng)游戲等來決定喜歡和不喜歡。
對于新商品
- 根據(jù)自己的屬性,尋求與原產(chǎn)品的相似性。
- Item-可以推薦based協(xié)同過濾。
5.3 推薦系統(tǒng)基于矩陣分解。
” role=”presentation” style=”position: relative;">原理:根據(jù)現(xiàn)有的評分矩陣(很稀疏),將其分解為低維用戶特征矩陣(評分者對每一個(gè)因素的喜好程度)和商品特征矩陣(商品包括每一個(gè)因素的水平),然后反過來分析數(shù)據(jù)(客戶特征矩陣乘以商品特征矩陣獲得新的評分矩陣)以獲得預(yù)測結(jié)果;
SVD
” role=”presentation” style=”position: relative;">SVD的時(shí)間復(fù)雜度為O(m^3)M往往稀疏,有空缺值。簡單的方法就是把空缺值補(bǔ)上隨機(jī)值,然后svd就可以分解了,但是推薦效果一般,所以這個(gè)問題一般會轉(zhuǎn)化為優(yōu)化問題;同時(shí),原始矩陣有0多個(gè),不應(yīng)該用0填充。
矩陣分解
也就是說,給出一個(gè)損失函數(shù),然后進(jìn)行優(yōu)化。
5.4 混合推薦
(1)加權(quán)混合: 根據(jù)一定的權(quán)重,使用線性公式組合幾種不同的推薦。具體權(quán)重值需要在測試數(shù)據(jù)集中反復(fù)測試,才能達(dá)到最佳的推薦效果;
(2)轉(zhuǎn)換混合:對于不同的情況(信息量、系統(tǒng)運(yùn)行情況、用戶和物體的數(shù)量等)。),推薦策略可能有很大的不同,所以轉(zhuǎn)換混合方式是允許選擇最合適的推薦算法,在不同的情況下計(jì)算推薦;
(3)分區(qū)混合:采用多種推薦算法,并向用戶顯示不同的推薦結(jié)果;事實(shí)上,Amazon,當(dāng)當(dāng)網(wǎng)等許多電子商務(wù)網(wǎng)站都采用這種方式,用戶可以得到非常全面的推薦,也更容易找到自己想要的東西;
(4)分層混合:采用多種推薦算法,將一種推薦算法的結(jié)果作為另一種輸入,然后綜合每種推薦算法的優(yōu)缺點(diǎn),獲得更準(zhǔn)確的推薦;
參考資料:
1. 七月在線推薦系統(tǒng)原理與應(yīng)用
2. 推薦系統(tǒng)
本文僅代表作者觀點(diǎn),版權(quán)歸原創(chuàng)者所有,如需轉(zhuǎn)載請?jiān)谖闹凶⒚鱽碓醇白髡呙帧?/p>
免責(zé)聲明:本文系轉(zhuǎn)載編輯文章,僅作分享之用。如分享內(nèi)容、圖片侵犯到您的版權(quán)或非授權(quán)發(fā)布,請及時(shí)與我們聯(lián)系進(jìn)行審核處理或刪除,您可以發(fā)送材料至郵箱:service@tojoy.com


