目前使用比較普遍的個性化推薦演演算法有三種,分別是:協同過濾推薦演演算法、基於內容的推薦演演算法和基於社交網路的推薦演演算法。
1 、協同過濾推薦演演算法
該演演算法的基本思想是,如果您的朋友或者親戚購買了某件商品並且評價不錯,那麼您很有可能也會購買該商品。根據相似度比較的物件不同,可以細分為基於多使用者的推薦和基於物品的推薦。在用該演演算法的有 Amazon 等一些電商平臺。
a)基於多使用者的近鄰推薦
基於多使用者的協同推薦的基本思想是:尋找當前多使用者的近鄰 (即計算多使用者之間的相似性),從而根據近鄰的喜好預測您也可能喜歡什麼。
b)基於物品的近鄰推薦
該演演算法的核心是計算物品兩兩之間的相似度,從而為多使用者推薦相似的物品。當需要對多使用者推薦物品 A 時,透過確定與 A 相似的物品 B,計算多使用者對這些近鄰物品 B 評分的加權總和來得到多使用者對物品 A 的預測評分。
2 、基於內容的推薦演演算法
基於內容的推薦與協同過濾推薦不同,它不需要多使用者對物品的評分資料,也不需要比較多個多使用者或多個物品之間的相似度。該演演算法的基本思想是根據多使用者的歷史興趣資料,建立多使用者模型,然後針對推薦物品的特徵描述進行特徵提取,後將物品特徵與多使用者模型相比較,相似度較高的物品就可以得到推薦。
基於內容的推薦目前主要應用於文字、視訊、音訊的推薦,比如新聞、視訊和電臺等。
3 、基於社交網路的推薦演演算法
基於社交網路的推薦是協同過濾推薦在社交網路中的延伸,同時又具有基於網路結構推薦的特點。大體上可以分為兩類,即基於鄰域的社交網路推薦和基於網路結構的社交網路推薦。
a)基於鄰域的社交網路推薦
其基本思想是查詢社交網路中當前多使用者所有的好友,根據好友的興趣資料,向當前多使用者推薦好友喜歡的物品集合。
b)基於網路結構的社交網路推薦
該演演算法把多使用者、多使用者的好友、多使用者的喜好和好友的喜好連線起來形成一個社交網路結構圖。同時,根據多使用者之間的熟悉程度和喜好相似度,來定義多使用者之間和多使用者的喜好之間的權重,然後選擇與多使用者沒有直接相關的物品,按照優先順序別生成推薦列表。
個性化推薦的一些缺陷
也許您已經發現,現如今很多產品的個性化推薦系統還談不上智慧。我就經常遇到在某電商平臺買了一臺電腦,接下來就向我推薦各種品牌的電腦。對於買電腦這種低頻行為,該個性化推薦顯得太粗糙了一點。還有當我在一些資訊 WordPress APP 瀏覽新聞時,總是受到相同內容的新聞資訊,讓我沒有繼續使用下去的慾望。
一個好的個性化推薦系統,多使用者能夠從系統提供的推薦列表中購買自己確實需要但在購買過程中沒有想到的商品,有利於流量和商品轉化,也會讓多使用者對該系統產生依賴。個性化推薦系統不僅能夠為多使用者提供個性化的推薦服務,而且能與多使用者建立長期穩定的關係,從而提高多使用者的忠誠度。
個性化推薦系統是一個非常複雜系統,背後還涉及到很多問題。比如冷啟動問題、資料稀疏性問題、推薦的精確度和準確度問題等。
1 、冷啟動問題
如果多使用者的標籤資訊為零,那麼個性化推薦就等於不存在。這個情況下,往往是讓多使用者進入興趣標籤填寫的頁面,或者透過蒐集多使用者在其它平臺的標籤資料來進行推薦。
2 、資料稀疏性問題
很多電商平臺的資訊資料之大,使得任意兩個多使用者瀏覽的商品交集非常小,這時候通常採用商品聚類或者多使用者聚類的方式。
3 、推薦的精確度和準確度問題
透過收集更多的多使用者標籤,不斷最佳化推薦演演算法,多種推薦演演算法的組合推薦來大化保證推薦的精確度和準確度。
4 、傳統的個性化推薦,無法保證推薦的實時性
比如網易雲的多使用者無意中聽到了一種沒聽過的曲風,覺得很好聽又連續聽了幾。如果這時候推薦的還是他過去愛聽的,這就不能很好地滿足多使用者的需求。
5 、精確度與多樣性的平衡問題
盲目的精確推薦可能會使多使用者的視野越來越狹窄,也就無法向多使用者推薦其它多樣的物品和資訊。如何平衡兩者的關係是一個要解決的問題。