1. 程式人生 > >吳恩達機器學習筆記 —— 17 推薦系統

吳恩達機器學習筆記 —— 17 推薦系統

htm 特征 問題 這就是 ref 圖片 系統 得出 工業

本章講述了推薦系統相關的知識,比如基於內容的推薦算法、基於協同過濾的推薦算法以及實踐中遇到的問題。

更多內容參考 機器學習&深度學習

推薦系統是機器學習在工業界應用最廣泛的方向,很多電子商務類、咨詢類的平臺都在做個性化推薦的工作,通過機器學習的算法讓自己的平臺個性定制,千人千面。
技術分享圖片
比如我們擁有這樣的數據集,其中nu代表用戶的個數,nm代表物品的個數,r(i,j)為1代表用戶j對物品i有評分,y(i,j)代表用戶j對物品的分值。

基於內容的推薦

現在我們有了上面的數據集,即用戶對電影的評分。還有電影的兩個特征,浪漫指數和動作指數,假設我們針對每個用戶都有一個θ,使得θTx能預測到一個分值——可以看做每個用戶擁有一個線性回歸的公式,通過這個公式,可以跟電影的兩個特征(還有一個偏置項,固定為1)計算出分值。

其中r(i,j)是用戶J對電影i是否有評分,y(i,j)是對應的分值,θ(j)代表用戶j的參數向量,x(i)代表電影i的特征向量,因此對於用戶j對電影i的評分就是(θ(j))T(x(i)),m(j)是用戶j評分的電影數量。因此就有下面的公式:

技術分享圖片

協同過濾

前面的算法有一個特點就是需要有每個電影的特征向量,這個需要人為的來標註,如果你的數據沒有這種現成的向量,而是有用戶的偏好特征。比如知道一個用戶對兩個特征的喜好程度x,又知道他對這個電影的評分,那麽就可以猜測出來這個電影對應的特征指數了。

比如上面的例子中如果用戶的洗好向量是[0,5,0],對於第一個電影它的評分又是5,第五個電影評分時0,我們就可以猜到第一個電影的特征是[1,1,0],第五個電影是[1,0,1],這樣就可以猜測出來每個電影的特征指數了。

總結來說,如果有電影的特征向量,就可以猜測出來用戶對電影的評分;如果有用戶的特征偏好,也可以猜測出來電影的特征指數。還有一種簡單的方式就是隨機給定θ,然後訓練得出x,再通過x訓練得出θ——這就是矩陣分解的意思啊!

技術分享圖片
技術分享圖片
這裏講到了通過評分矩陣可以計算相似物品,其實這也是物品協同過濾的核心:
技術分享圖片
有一個實踐的小技巧,如果用戶對任何的物品都沒有評分,那麽可以先給他初始化成均值(我們在做推薦系統的時候,這種用戶一般都不會用協同過濾來做推薦)
技術分享圖片

吳恩達機器學習筆記 —— 17 推薦系統