27
汽車大全
下一代個性化推薦係統
下一代個性化推薦係統
文/王守崑
本文結合技術及社會需求發展的大背景,講述了當前推薦係統的價值及所麵臨的挑戰,並指出了下一代個性化推薦係統的設計思路及需要注意的問題。
作為個性化推薦係統核心的協同過濾(Collabora-tive Filtering)算法,是Goldberg等人在1992年的一篇學術論文中最早提出的。他們在這篇文章中提出一種方法,在一個新聞組中,根據 用戶下載的新聞計算他們之間在口味上的相似程度,並利用這種相似程度為他們進一步推薦相關的新聞。這也是最早期的個性化推薦係統的雛形。
20世紀90年代中後期,隨著電子商務的興起,個性化推薦係統迎來了第一波高潮,幾乎每個大型電子商務網站都把個性化推薦作為重要的營銷手段之一。更有文獻表 明早期Amazon的35%銷售增量都來自它的推薦係統。Amazon的幾位科學家和工程師在2000年發表的一篇關於“基於條目的協同過濾”的論文也成為了個性化推薦領域最基礎的文獻之一,是學術研究與工業實踐相結合的典範。之後越來越多的研究者和企業界的工程師投入到了個性化推薦係統的實踐中。
21世紀,互聯網領域兩個根本性的變化使得個性化推薦係統需要麵臨新的挑戰。
第一個變化是隨著Web 2.0的興起,個人用戶逐漸成為網站的中心。用戶樂於在網絡上建立和分享他們的社會關係和興趣愛好,展示個性。網站的創立者也更重視對用戶的基礎數據的收 集和分析,從而全方位地滿足用戶的需求。與傳統的以信息為中心的Web 1.0的組織方式相比,Web 2.0強調以用戶為中心,對個性化推薦係統的發展起到了極大的促進作用。因此,幾乎每個具有一定規模的Web 2.0網站都會建立用戶模型,甚至還湧現出不少以個性化推薦為核心的服務。這使得個性化推薦係統的研究和實踐獲得了非常大的進展。
第二個變化是互聯網越來越深入我們的真實生活。與早期的互聯網用戶不同,如今人們越來越習慣在網絡上使用真實身份,維持真實的社會關係,分享真實的生活軌跡。互聯網不再是虛擬世界的代表,而是真實世界的一部分。這使得網站的創立者能夠更準確地掌握用戶的各種信息。而用戶對個人隱私的關注也使得工程師在使用這些信息時不得不更加慎重。
對個性化推薦係統來說,這些變化是一把雙刃劍:人們提供更多的真實信息有利於提高推薦精度;而同時人們對隱私和信息流動 方向的關注為推薦係統如何使用這些信息設置了更高的門檻。個性化推薦係統不但要考慮推薦的精度,還要考慮在社會網絡中信息的來源和用戶對這些信息微妙的情 感因素,而這些因素在算法中往往是難以建模和衡量的。
對個性化推薦係統從業者來說,這既是巨大的市場機會,也是前所未有的挑戰。如何抓住機會、應對挑戰呢?本文試圖從當前推薦係統存在的一些問題出發,逐步闡述對下一代個性化推薦係統的初步構想和建議,同時也提出一些值得關注的問題,供本領域的從業者考慮和探討。
當前推薦係統麵臨的挑戰
根據出發思想的不同,個性化推薦係統可大致分為基於協同過濾和基於內容兩種。協同過濾的基本思想前麵已有所探討;基於內容的推薦係統的出發點則更直接,即通 過對被推薦條目的內容進行建模和分析,從而為相關用戶推薦出適合的內容。事實上,早期互聯網中的人工分類目錄就可以看作基於內容進行推薦的雛形。從實際應 用的角度,可更進一步把這兩種思想歸納為黑盒推薦和白盒推薦兩種模式。
黑盒推薦不需要考慮推薦的具體內容,而是利用機器學習、數據挖掘等統計方式和人工智能的方法對數據進行分析,建立相關模型和優化目標,在一定約束條件下求得最優解或局部最優解作為向用戶推薦的內容。
白盒推薦則是深入到被推薦的條目內容之中,依據對條目的先驗知識和對用戶的理解進行相關匹配的推薦,推薦的過程中也會用到機器學習和數據挖掘的算法,但先驗知識的來源往往是專家領域的知識。
這兩種模式各有優劣。在實踐中,通常會融合兩種模式的優勢建立所謂混合模型以求得更好的推薦效果。從實際應用來看,考慮到可擴展性及係統建立的成本,大型商用的個性化推薦係統大多以黑盒推薦為基礎,我們先來談談黑盒推薦的優劣。
黑盒推薦的核心是機器學習和數據挖掘算法,有著堅實的數學基礎和明確的優化指標與方法,所以推薦質量有基本的保證。搭建係統既不需要領域內的知識,也不需要 過多的人工幹預,同時模型的魯棒性比較好,應對用戶和條目的增長不需要付出更多額外的努力。這些優勢使得黑盒推薦獲得了非常廣泛的應用。但隨著前麵提到的 互聯網領域的兩個根本性變化的影響,黑盒推薦的弊端也越來越多地顯現出來(如圖1所示)。

圖1 黑盒推薦的弊端
對於以協同過濾為基礎的推薦算法的弊端,文獻中討論比較多的是冷啟動問題,即數據稀少的情況下難以獲得高質量的推薦。這是黑盒推薦在係統啟動時麵臨的最大挑 戰。事實上,即便有了啟動數據,在數據稀疏的情況下黑盒係統偶爾也會放大噪聲,給出低質量的推薦。有人甚至專門為此造了一個單詞,叫做 “freakommendation”⁽³⁾,用來指代那些稀奇古怪的推薦。
例如在某著名電子商務網站上,每年母親節時都有鮮花促銷,十幾 歲的青少年在為母親購買鮮花之餘,順便會為自己買上幾部恐怖片。係統中的鮮花和恐怖片便建立了相似關聯,在有人購買鮮花時係統便會推薦恐怖片,反之亦然。 這種推薦自然會引起很多用戶的不適,雖然從統計意義的優化指標(如RMSE或者MAE)來看係統達到了最優,但對於某些主觀性的因素,比如用戶對係統推薦 的信任和心理感受,卻有著相當負麵的影響。這些影響可能很難用具體的指標和數字來衡量,但它們對一個產品的成敗來說,往往是長期的、根本性的,甚至是決定 性的。
與冷啟動相反,在實踐中,還可以看到另一種較少被文獻所提及的現象,稱為“宏觀與微觀的悖論”。當從宏觀的係統角度轉向微觀的用戶角 度時,我們會驚奇地發現,隨著數據的增長,整個係統在各項量化的推薦指標上的表現會越來越好,而對那些貢獻了更多數據和內容的重度用戶,卻越來越傾向於給 出平庸和保守的推薦。
這個悖論的尷尬之處在於,幾乎每個個性化推薦係統都宣稱用戶所獲得的推薦質量會隨著數據的增加和用戶的積累而顯著提 高,但實際所看到的卻是整體用戶推薦質量的改善並不意味著每一個用戶群體推薦質量的改善。黑盒推薦的基礎是基於統計的機器學習算法,為了在欠擬合 (Under-fitting)和過擬合(Over-fitting)之間求平衡,總有將結果拉回平均的傾向。
這就意味著,隨著用戶貢獻數據的增多,用戶的多個興趣維度往往會被當做白噪聲過濾掉。這種效應對推薦係統的影響也是根本性的。對任何產品來說,留不住活躍的用戶都是致命的缺陷。
圖1描述了黑盒推薦模式的推薦質量和用戶收藏之間的關係,可以比較清晰地劃分為三個階段。
第一階段,用戶收藏較少,係統在宏觀和微觀層麵都麵臨冷啟動問題,此時的推薦質量低於用戶的預期。這是用戶在使用個性化推薦係統時的第一個門檻,會把相當一部分用戶阻擋在產品外。
第二階段,隨著用戶收藏的增長,係統對用戶興趣的建模更加準確,推薦質量也獲得顯著提升,這是推薦係統和用戶之間的蜜月期,此時的推薦往往會給用戶帶來驚喜,能夠有效地幫助用戶發掘他們未知但感興趣的領域。
第三階段,也就是前麵提到的宏觀和微觀的悖論所產生的階段。此時,雖然從各項指標來看推薦質量還在繼續改善,但用戶所切身感受到的卻是推薦係統能給他們提供的幫助越來越少,推薦內容趨於平庸,缺乏眼前一亮的驚喜。
針對黑盒推薦的弊端,業內的研究者和工程師提出了很多補救的方案。例如結合基於內容的白盒推薦方法來解決冷啟動問題從而提高推薦的驚喜度、通過 Transfer Learning的方法利用其他領域的結果和訓練的模型獲得啟動數據,以及利用矩陣分解(Matrix Factorization)的方法改善數據稀疏性的問題。這些方法都收到了不錯的效果,值得實踐領域的從業者重視。
在前麵分析的基礎之上,我們嚐試提出一種框架性的改進,在解決黑盒推薦弊端的同時探索下一代個性化推薦係統的雛形。
下一代個性化推薦係統
目前,黑盒推薦之所以會麵臨種種挑戰,一個根本問題是推薦係統過分關注短期的優化目標或產品目標,忽視了產品的用戶價值和增長的源動力。其表現就是沒有把用 戶在領域內的動態成長模型納入到算法框架之中。好的個性化推薦算法,應該是始於用戶、終於用戶的,並且是一個健康的、動態的、具有自我生長和自我調節能力 的係統。用戶是係統的一部分,與係統共同促進和成長。
依據這樣的思想,可以把推薦係統分成三個層次(如圖2所示)。

圖2 下一代個性化推薦係統的三個層次
第一層是猜(Prediction),就是提供一個靜態的數據集,拿掉其中的一部分,想辦法利用剩下的數據把拿掉的部分恢複起來,使得恢複誤差做到最小。這部分工 作可以認為是個數學問題,能夠形式化並給出嚴格的定義,這也是目前在學術界和工業界研究得最透徹、解決得最好的一部分。在前幾年的Netflix競賽中, 層出不窮的新算法和持續的推薦精度的改進也讓我們看到了這裏麵隱藏的巨大潛力。這部分工作也是建立個性化推薦係統的第一步,其意義是從數據形成信息。
第二層是預測(Forecasting),把給定的數據集看成一個自洽的係統,預測這個係統下一步的變化。用上一個層次的方法也可以解決這一層次的問題,但 其中有一個重要的區別,即在時間維度上預測要解決的問題在係統之外,而猜要解決的在係統之內。這使得預測比猜在優化指標的設置上要複雜一些。
同時,因為時間方向的不同,所以在係統中要考慮人的心理和社會環境因素起到的作用。這兩個因素的作用使預測的係統比上一個層次的複雜度高了很多,原來的方法 可行,但未必有效。解決預測的問題,僅從給定的數據出發是不夠的,需要整合其他來源的數據,可能需要先驗知識,甚至需要一點用戶的認知和心理模型。目前, 商用的個性化推薦係統都在或多或少地解決這個問題。這部分工作是建立一個真正有用的個性化推薦係統,其意義是從信息形成知識。
第三層是推薦(Recommendation),這才是真正意義的個性化推薦。這個係統應該具備所推薦領域的知識,同時還要認識它的每一個用戶。這個係統能夠自我啟 動,同時能夠生長和進化;這個係統是有記憶的,同時還能夠學習。這個係統沒有嚴格的定義,同時它的基本技術架構可能也不會僅局限於目前流行的個性化推薦係 統的各種框架、技術和算法之中。隨著計算能力的飛速發展和數據的極大豐富,當前我們有理由向著那些更高的目標邁進。這部分工作會給用戶帶來全新的、突破性的體驗,成為用戶的良師益友,其意義是從知識形成係統。
幾個值得關注的問題
要想完全描繪出下一代個性化推薦係統的藍圖還有很長的路要走。下麵是幾個值得關注的問題。
不同的數據集如何影響推薦算法的表現。用戶對於不同的條目有不同的行為,以圖書、電影、音樂、新聞、圖片、視頻、服裝等為中心的數據集在稀疏性、時效性、關聯程度、反饋快慢等各方麵有著不同的特性,如何根據這些特性挑選合適的算法對實踐會有很強的指導意義。
對不同的領域,用戶期待的推薦形式和對推薦質量的預期各不同。如何把這些相關知識融入到算法之中,再反映到優化指標上,使推薦係統能跟用戶一起成長?
推薦係統的優化指標,如何與產品的關鍵指標相結合,使算法的優化和係統調整更加有的放矢,成為產品的一部分?
對大規模實時的個性化推薦係統而言,如何有效地分配離線與在線計算任務,以及尋找可接受的近似算法,從而求得消耗計算資源和優化在線響應速度之間的平衡?
針對相似性指標的研究。在推薦係統中,如何依據不同的數據集特性和用戶特征選擇合適的相似性指標?
個性化推薦係統對用戶行為的影響。用戶的行為是個性化推薦係統的基礎,反過來,個性化推薦係統推薦的內容也會對用戶的行為產生影響。如何評估這些因素對係統和產品的進一步影響,也是個有意思的話題。
從技術角度來看,以上所提到的這些問題基本都有解決方案。但從其他角度來看,則未必如此。一個關鍵的角度是:個性化推薦到底是一項技術,一個功能,還是一個產品?這決定了個性化推薦係統未來的發展方向和影響力。
未來的互聯網(包括移動互聯網),不是平台就是平台的一部分。Amazon是電子商務及其相關基礎設施的平台,Google是自由開放的信息平 台,Apple是相對封閉的平台,Facebook是社會關係和私有信息的平台。個性化推薦係統未必會成為平台,但在未來的互聯網時代,它會是各個平台核心競爭力的一部分。
作者王守崑,豆瓣網首席科學家兼副總裁,負責算法部門和音樂產品線。目前專注於互聯網信息架構與算法、Web2.0網絡模式創新、數字音樂、推薦係統與在線收聽等應用。
最後更新:2017-04-04 07:03:16