推薦算法之E&E


一、定義

E&E就是探索(explore)利用(exploit)

 Exploit:基於已知最好策略,開發利用已知具有較高回報的item(貪婪、短期回報),對於推薦來講就是用戶已經發現的興趣,繼續加以利用推薦。

優點:充分利用高回報item。

缺點:容易陷入局部最優,可能錯過潛在最高回報的item。

Explore:挖掘未知的潛在可能高回報的的item(非貪婪、長期回報),對於推薦來講,就是探索用戶新的未知的興趣點,防止推薦越來越窄。

優點:可以發現更高回報的item。

缺點:充分利用已有高回報的item機會減少(如果高回報item之前已經找到,再探索肯定就會浪費高回報的機會)

 

目標:要找到Exploit & Explore的trade-off,以達到累計回報最大化。

如果Exploit占比太高,那么推薦就會越來越窄,最終收益反倒下降;如果Explore占比過高的話,可能大多是用戶不太感興趣的,浪費的機會比較多,綜合收益下降更快。

 

二、MAB(Multi-armed bandit)多臂賭博機問題

一個賭徒,要去搖賭博機,走進賭場一看,一排賭博機,外表一模一樣,但是每個賭博機吐錢的概率可不一樣,他不知道每個。他不知道每個賭博機吐錢的概率分布是什么,那么想最大化收益該怎么辦?這就是MAB問題,又叫多臂賭博機問題。有很多相似問題都屬於MAB問題:

1)假設一個用戶對不同類別的內容興趣程度也不同,當推薦系統初次見到這個用戶,如何快速地知道用戶對每類內容的感興趣程度呢?這也是推薦系統常常要面對的冷啟動問題。

2)假設系統中有若干個廣告庫存物料,該給用戶展示哪個廣告,才能獲得最高的點擊收益呢?是不是每次都挑選收益最高的哪個呢?

這些問題都是關於選擇的問題,只要是選擇的問題,都可以簡化成一個MAB問題。

Bandit算法就是用來解決此類問題的。

 

三、Bandit算法

 Bandit不是一個算法,而是指一類算法。Bandit算法家族如何衡量選擇的好壞呢? 它們使用累計遺憾(collect regret)來衡量策略的優劣。

wB(i)是第i次試驗時被選中item的回報, w_opt是所有item中的最佳選擇item的回報。累計遺憾為T次的選擇的遺憾累計,每次選擇的遺憾為最優選擇回報與本次選擇回報之差。

為了簡單起見,我們假設每台機器的收益為伯努利收益,即收益要么是0,要么是1。對應到推薦系統中,賭博機即對應我們的物品(item),每次搖臂即認為是該物品的一次展示,我們可以用是否點擊來表示收益,點擊(win)的收益就是1,沒有點擊(lose)的收益就是0

比較常用的且效果比較好的Bandit算法主要有Thompson(湯普森)采樣算法UCB(Upper Confidence Bound)算法,后面會單獨開講。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM