我有一個社交網絡圖,人們有朋友聯繫,興趣,他們去的事件。我想建立一個推薦系統,可以向人們推薦潛在的朋友。人們對人推薦系統
我使用的是矩陣(不知道它是否是正確的)休耕:
Interest1 Interest2 Interest3 Event_Type1 Event_Type2 Event_Type3
u1 1 0 1 3 5 2
u2 0 0 1 1 0 2
u3 1 1 0 2 1 7
正如你所看到的,矩陣是混合數據類型的矩陣。興趣列是二進制數據{0,1},Event_Type列是用戶進入這種事件的次數。
我想在矩陣上應用聚類技術,以便將具有相似興趣和行爲的人羣分組,然後應用更多算法來分析特定組。
我想我不能直接在矩陣上應用k-means或分層聚類,所以我試圖將矩陣轉換成Gower距離矩陣,並在Gower距離矩陣上應用k-medoids算法。但是,我認爲結果是根據相似性將相似度的值分組,而不是基於相似性的人。
我很困惑如何對原始矩陣進行聚類。我也對如何開始建立人員推薦系統感到困惑。
非常感謝您!我發現相同的問題,難以使其趨於一致並確定羣集的數量。我使用BFS來找到共同的朋友和相似度算法(如gower和CF-pearson)來獲得相似度矩陣,但我真的想爲用戶製作一個排名列表。有沒有一種算法可以將這兩種信息結合在一起並給出建議的分數? – whataever
如果你想得到10個結果,那麼沒有什麼*可靠*比每種方法的前5位更好。 –
明白了。謝謝! – whataever