Rethinking Recommendation Engines

原文:: http://www.readwriteweb.com/archives/rethinking_recommendation_engines.php


推薦引擎的改進不是一個算法問題,而是表述問題( Presentation issue )。

推薦引擎除了是一個技術問題,還有一些重要的心理學問題:人們想要推薦嗎?如果想要,何時推薦給他們?也許還有個更大的問題:用戶收到糟糕的推薦會發生什麼?

 

推薦引擎的基礎

所有的推薦引擎都試圖解決這個問題: given a set of ratings for a particular user, along with those of the whole user base, come up with new items that this user will like 。用到的很多算法都聚焦於:個人的、社會的和重要的( personal, social, fundamental )三個要素。

(1)       個性化推薦( personalized ~ ):基於某個用戶的過去的行爲

(2)       社會推薦( social ~ ):基於相似用戶的過去的行爲

(3)       項目推薦( item ~ ):基於項目( item

(4)       上述三項的聯合

 

The guy in the garage

推薦問題的複雜性是由於可能性的巨大空間。非常類似,很難指出是哪個基因負責人的某個特徵;很難指出究竟是電影或音樂的哪點使得我們給了它五星評價。人類思維的逆向工程是很難的( Reverse engineering human thinking is hard )。

Nicknamed Guy In The Garage , Gavin Potter from London 很信賴人的惰性 / 慣性( inertia )。顯然,對電影的評價依賴於對之前看過的電影的評價。比如,如果你連續看了三部電影,對它們的評價是四星,之後你看了第四部稍好一點的(和前三部相比),你會對它評價五星。相反,如果你對連續觀看的三部電影評價爲一星,之後,相同的電影,你換種方式可能評價爲五星,現在卻只評價四星。 -- 對於連續觀看的四部電影,第四部的評分常常是在前三部基礎上進行的。

Just when you think that this is not true, you will discover that this algorithm now sits in the 5th place and still is making progress, while other algorithms are spinning. Enhancing formulas with a bit of human psychology is a really good idea and this is where we turn next. 通過一點人類心理學增強規則會是一個好主意。

 

用過濾代替推薦

這些事在你身上發生了多少次:朋友向你推薦一部電影或一個餐館,你興奮的前往,但結果很失望。太多了!很明顯,大肆宣傳 / 廣告宣傳使得期待很高,卻增加了失敗( miss ,失望?)的機會。數學上稱之爲 false positive 。如果你的朋友並沒有向你推薦某部電影,反而告訴你你不會喜歡某部電影,讓你別租它,試想一下結果是什麼(會發生什麼)?

那樣會帶來負面結果嗎?不會太多,因爲很可能你不會去看它。但是,即使你看了而且喜歡它,你也不會體驗到負面情緒。這個例子指出了我們對 false negative false positive 的不同迴應。 False positives 是我們心煩( upset us ),但是 false negatives 不會。使用過濾而不是推薦的主意,就來自這種現象。

文章據此認爲, Netflix 舉辦的改進推薦算法的大賽遲早會失敗。要是不那樣做,而是展示給你最新上映的影片和一個按鈕,會怎麼樣:過濾掉我不喜歡的。算法是一樣的,但是想法( perception )不同。

 

實時文化中的過濾( Filters in real-time culture

這個想法在實時新聞的時代變得越來越重要和有力,我們越來越面臨持續過濾的新信息( And this idea becomes increasingly important and powerful in the age of real-time news. We are increasingly oriented towards continuously filtering new information. )。我們每天都在用 RSS 閱讀器這樣做。我們從一系列的新鮮事物發生的角度來看待這世界,舊有的事物是不相關的( We think of the world in terms of streams of news, where things of the past are not relevant. )。我們不需要推薦,因爲我們已經訂閱過量了( We do not need recommendations, because we are already over subscribed )。我們需要噪音過濾。一個算法是:嗨,你一定不喜歡它,隱藏掉吧。如果機器能爲我們丟掉一些信息,那麼我們就能自己處理剩下的。借用 Email 中的垃圾郵件功能,如果我們身邊的工具有這樣一個按鈕“給我過濾掉它”,甚至有默認開啓這個過濾的模式, we'd all to get more things done

 

討論

 

建立一個完美的推薦引擎是一個非常複雜的任務。不管什麼方法,協同過濾或者事物的繼承屬性 ---- 推薦是一個 unforgiving business false positives 很快會使用戶厭煩。也許在問題上應用心理學,能使人們覺得這些複雜的算法真的在工作。讓機器過濾掉我們明顯不會喜歡的事物,而不是推薦,我們可能會更寬容、理解。

 

-----------

作者的意思,思考問題時,加入心理學,會產生新的思路。不改變算法的前提下,換個角度,將推薦替換爲過濾,可能效果更好。


PS 謝謝Boey同學。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章