在上一篇文章中,我們主要介紹了論文《Mobile Targeting Using Customer Trajectory Patterns》的整體思路,並推薦了這篇論文關於檢驗推薦效果的實驗設計。
現在我們繼續對這篇文章的探討,本次我們聚焦演算法的部分。這篇論文的演算法之所以效果高於其他組別,核心思想就在於:1)從多個角度加權計算了用戶之間的相似度;2)根據兩兩之間的相似度進行了Graph Clustering。最終的效果就是有相同偏好的用戶被聚在了同一組,那麼既然大家興趣類似,你喜歡的自然大概率也是我喜歡的。
在這兩種不同的結構中,度量與相似度的關係正好是反著的,這自然也就衍生出兩種完全不同的聚類方法:Vector Clustering 和 Graph Clustering。
Vector Clustering似乎大家更熟悉些,經典的演算法包括K-Means等等。Graph Clustering雖然也常見,但感覺大家對Markov Clustering Algorithm要相對陌生一些,而我們推薦的這篇論文恰恰選擇的是把用戶建立在了圖上,然後用Markov Clustering進行聚類,因此我們接下來著重介紹Graph Clustering。