• 沒有找到結果。

第二章 相關研究

2.3 推薦系統

推薦系統(Recommender System)是能夠自動地依據使用者的喜好、使用行為,

向使用者推薦他可能會感興趣的資訊。Rashid 與 Varian 在 1997 年正式提出推薦 系統[27],依據 Rashid 等人的定義,推薦系統是在大量的資訊中幫助人們做篩 選,基於對使用者的認識以及了解,針對使用者可能的需求做一些分析,推薦使 用者可能感興趣的項目。著名的例子為亞馬遜(Amazon)網路書店的推薦系統,系 統會依據顧客過去的購物清單資料,推薦顧客感興趣的書籍。

8

依據 2005 年 Adomavicius 等人[1]對推薦系統分類的說法,推薦系統依據推薦 的方式可以分成三類:

1. 內容式推薦: 將相似使用者過去所喜歡之項目的項目,推薦給使用者。

2. 協同式推薦: 將與使用者喜好相似之其他人所喜愛的項目,推薦給使用者。

3. 混合式方法: 結合協同式推薦與內容式推薦的做法。

以下將各別介紹這三類推薦方式:

A. 內容式推薦(Content-based recommendations):

也稱為內容式過濾(Content-based filtering)[20][24][12],依據使用者個人過去 所喜愛的項目內容,得知使用者的喜好,進而推薦使用者相近的項目。內容式推 薦最早是用於訊息檢索與訊息過濾的研究。內容式推薦的過程分為以下三部分:

1. Item Representation:對每個項目(Item)抽取出一些特徵來表示此項目。

2. Profile Learning:利用使用者過去喜歡的項目之特徵資料,來學習出此使用者 的喜好特徵(Profile)。

3. Recommendation Generation:通過比較使用者喜好特徵(User Profile)與項目 (Item)的特徵,為此使用者推薦相關性最大的項目清單。

內容式推薦的優點為直覺、易於理解,但是缺點是推薦出的項目都與使用者 過去喜好的項目過去相似,缺乏新穎性。在內容式推薦之後,提出的協同式推薦 方式,不依據項目的內容本身來進行推薦,而是依據使用者的對項目的偏好來推 薦,因此協同式推薦不會有推薦項目缺乏新穎性的缺點。

B. 協同式推薦(Collaborative recommendations):

又稱協同式過濾(Collaborative filtering)[30][29][35],利用與特定使用者擁有類 似經驗之群體使用者所顯示的偏好,來預測特定使用者未呈現的偏好資訊,以推 薦角度的不同分為基於使用者的協同式過濾與基於項目的協同式過濾兩種。

9

 基於使用者的協同式過濾(User-based collaborative filtering)

基於使用者的協同式過濾[30],又稱基於鄰居的協同過濾(Neighbor-based Collaborative Filtering),推薦給使用者的項目,是與使用者喜好相似的其它使用 者(鄰居)所喜歡的項目。基於使用者的協同式過濾以使用者對項目的評分資訊建 立之矩陣,計算使用者與其他使用者之間的相似度,找出與使用者評分行為相似 的鄰居們,進一步透由他們對使用者未評分過的項目之評分資訊,來預測使用者 對那些項目的評分,將預測之評分最高的前幾個項目推薦給使用者。評分預測公 式如下:

(公式 1)

Pu,i是使用者 u 對項目 i 的預測評分,𝑟̅u是使用者 u 對項目的評分之平均,𝑟̅𝑢′為 使用者u’對項目所有評分的平均,𝑟𝑢,𝑖為使用者u’對項目 i 的評分,s(u, u′)是使用 者 u 和其他使用者u’的相似度,N 是與使用者評分行為相似的鄰居。

 基於項目的協同式過濾(Item-based collaborative filtering)

基於項目的協同式過濾方法[30][29],有一個假設「引起使用者喜好的項目,

會與之前被使用者評分過的項目相似」。因此,基於項目的協同式過濾使用項目 之間評分模式的相似度代替使用者之間評分行為的相似性,來預測使用者喜好程 度。基於項目的協同式過濾以使用者對項目的評分資訊建立之矩陣,計算已評價 項目和待預測項目的相似度,進一步以相似度作為權重,加權各已評價項目的分 數,計算出待預測項目的評分預測值,對評分預測公式如下:

(公式 2)

10

Pu,i是使用者 u 對項目 i 的預測評分,𝑟𝑢,𝑖為使用者 u 對項目 i 的評分,s(i, j)是項 目 i 與項目 j 被評分的相似度,S 是與項目 i 被評分相似的項目。

協同式推薦在計算出預測項目的評分預測值後,可將對於使用者來說尚未評 分的項目,依據項目的預測值,將預測值最高的前幾個項目產生推薦清單,推薦 給使用者。

雖然協同式推薦是目前推薦系統最普遍的方法之一,但是仍然存在以下兩個 問題:

1. 稀疏性問題(Sparsity Problem):如果需要被評分的項目個數比已經被評分的項 目個數大很多,會導致使用者對項目的評分矩陣過於稀疏,使得共同被評比 的資料相形之下過少,造成推薦的結果不準確。

2. 冷啟動問題(Cold-Start Problem): 新項目由於被很少或沒有使用者評分,導致 於不會被推薦。

協同式推薦雖然不用有內容式推薦推薦項目缺乏新穎性的缺點,但是會有新項目 尚未被評分而產生的冷起動問題,以及由於使用者評分項目遠小於未評分項目造 成的稀疏性問題等缺點。反之,內容式推薦則沒有協同式推薦的缺點,在使用者 評分資訊過少的情況下,依據項目內容推薦的內容式推薦方式,推薦效果高於協 同式推薦。

C. 混和式方法 (Hybrid approach):

混和式方法[3][4][36]結合內容式推薦與協同式推薦,可以克服內容式推薦與 協同式推薦各自的缺點,以達到更有效的推薦。混合式方法依據推薦技術的結合 方式可分為以下七類[3]:

1. Weighted: 將不同推薦技術的分數以線性組合結合,產生單一的推薦結果。

2. Switching: 系統依據當前的情況選擇推薦技術使用。

3. Mixed: 將不同推薦技術的推薦結果一同呈現。

11

4. Feature Combination: 將不同資料來源之特徵結合至單一推薦技術演算法。

5. Feature Augmentation: 將一個推薦技術計算所使用的特徵,作為另一個推薦 技術輸入資料的一部分。

6. Cascade: 將一個推薦技術去過濾另一個推薦技術的推薦結果。

7. Meta-level: 將一個推薦技術學習出來的模型,作為另一個推薦技術的輸入。

推薦系統的應用非常廣泛,有應用在音樂、電影、新聞、書籍、好友…等領 域,例如 Facebook、Twitter、LinkedIn 等社群網站使用協同式過濾方法推薦好友,

網路音樂電台 Pandora Radio 使用內容式過濾方法推薦音樂,線上影音串流服務 Netflix 應用混和式推薦方法推薦電影。不過在過去推薦系統的應用中,未曾有應 用推薦系統在西洋棋開局上。本論文提出的西洋棋開局推薦系統使用結合基於使 用者的協同式過濾(User-based collaborative filtering)與內容式過濾(Content-based filtering)的混合式方法,以 Cascade 的方式結合。使用基於使用者的協同式過濾 方法是希望透由棋手們的開局經驗來推薦開局給使用者;使用內容式過濾方法是 因為希望推薦給使用者本身下棋習慣模式相似的開局。而以 Cascade 的方式結合 的原因為由棋手們開局經驗所推薦的開局,也必須進一步篩選出符合使用者下棋 習慣模式的開局,才能讓使用者易於接受,使推薦出的開局投其所好。

12

相關文件