7
  • 什麼是最好的方法?
  • 使用什麼算法?他們的優點和缺點是什麼?
  • 爲什麼目前的電影推薦系統無法提供良好的建議?
+0

可能[webmasters.stackexchange.com](http://webmasters.stackexchange.com)更適合此答案 – 2011-03-09 23:07:25

+0

我知道爲什麼嗎? – melhosseiny 2011-03-09 23:13:03

+0

「爲什麼大多數電影推薦系統吸?」聽起來不像一個編程問題。也許我對webmasters.stackexchange.com不正確 – 2011-03-09 23:15:14

回答

7

這是一個非常開放的問題,涉及很多不同的概念。

作爲最初的討論點,請考慮k-nearest neighbor algorithm。它被廣泛用於類似於電影選擇器的問題。這種算法的一個大問題是決定你多少維度用於細分功能空間,選擇每個這些維度的屬性,使每個增加價值,而不是複製另一個維度的價值的人力投入。

與k-NN算法直接相關的是cluster analysis的字段。當您繪製的具有較爲散亂異常團塊內的信息數據點,你可以直觀地看到,在成羣的點相似的一些性質。你可能可以很容易地將一些分散的離羣點與一個或另一個叢集合起來,但是會有許多點位於可能適合兩個或更多個競爭叢塊的叢塊之間。解決這一難題的唯一方法是在您的數據點中添加更多的維度參數,以便將那些未提交的異常值繪製成一個叢。 (按照鏈接看到成羣的數據的漂亮的圖片。)

此簡要介紹引出了下一個概念:Pattern Recognition。這個科目是數學重和理論計算科學,統計學,人工智能,機器學習和洞察力領域的大量研究的主題。這最後一個是半開玩笑,但它指向你的問題的癥結所在:計算機如何預測你將來會做什麼?簡短的回答是它不能。較長的答案試圖解釋爲什麼你的口味和情緒在似乎隨機的時間看似隨機的方向改變。一個好的模式識別系統可能會選擇20部你真正喜歡的電影,然後推薦另一部來自其他20部電影,你完全討厭。系統失敗了?是否在算法實現中,初始選擇參數用於特徵空間的維度,或者因爲其他人使用您的Netflix帳戶訂購'鴨子','巡航' ,'海灘'?

'模式識別'的維基百科頁面列出了很多不同的算法和方法。你可以從那裏開始閱讀,以更好地處理個人的優點和缺點。您也可以嘗試在Theoretical Computer Science堆棧中詢問此問題以獲得長髮答案。

2

來自BellKor的團隊贏得了Netflix Prize。所以,可以說,這種方法可能是最好的方法。

要對這些推薦系統的工作原理給出高級,直觀的解釋,請考慮以下情況。我每週看兩次星球大戰。現在,如果你不得不向我推薦一部我喜歡的電影,你會選擇哪部電影?哈里森福特的電影?一部科幻電影?也許是80年代製作的電影?

推薦系統背後的重要思想是,他們越知道自己喜歡什麼(即什麼類型,演員等),他們就可以提供更好的建議。但是,如果你的口味互相矛盾(例如,你喜歡Saving Ryan,但也喜歡關於和平主義者的電影),那麼很難向你推薦一部電影。

總之,許多推薦算法需要知道:

  1. 你喜歡什麼:這涉及知道什麼功能設置在錄製你喜歡什麼電影使用。例如。什麼是電影的流派,電影中有什麼演員等等。
  2. 什麼電影與你喜歡的相似。這涉及到根據您在上一步中使用的功能集找到一個很好的相似性度量標準。