在協(xié)同過(guò)濾推薦算法總結(jié)中,我們講到了用圖模型做協(xié)同過(guò)濾的方法,包括SimRank系列算法和馬爾科夫鏈系列算法。現(xiàn)在我們就對(duì)SimRank算法在推薦系統(tǒng)的應(yīng)用做一個(gè)總結(jié)。
1. SimRank推薦算法的圖論基礎(chǔ)
SimRank是基于圖論的,如果用于推薦算法,則它假設(shè)用戶和物品在空間中形成了一張圖。而這張圖是一個(gè)二部圖。所謂二部圖就是圖中的節(jié)點(diǎn)可以分成兩個(gè)子集,而圖中任意一條邊的兩個(gè)端點(diǎn)分別來(lái)源于這兩個(gè)子集。一個(gè)二部圖的例子如下圖。從圖中也可以看出,二部圖的子集內(nèi)部沒(méi)有邊連接。對(duì)于我們的推薦算法中的SimRank,則二部圖中的兩個(gè)子集可以是用戶子集和物品子集。而用戶和物品之間的一些評(píng)分?jǐn)?shù)據(jù)則構(gòu)成了我們的二部圖的邊。
2. SimRank推薦算法思想
對(duì)于用戶和物品構(gòu)成的二部圖,如何進(jìn)行推薦呢?SimRank算法的思想是,如果兩個(gè)用戶相似,則與這兩個(gè)用戶相關(guān)聯(lián)的物品也類似;如果兩個(gè)物品類似,則與這兩個(gè)物品相關(guān)聯(lián)的用戶也類似。如果回到上面的二部圖,假設(shè)上面的節(jié)點(diǎn)代表用戶子集,而下面節(jié)點(diǎn)代表物品子集。如果用戶1和3類似,那么我們可以說(shuō)和它們分別相連的物品2和4也類似。
如果我們的二部圖是
延伸閱讀
學(xué)習(xí)是年輕人改變自己的最好方式