微軟專家眼中個性化推薦系統的5大研究趨勢

“猜你喜歡”、“購買過此商品的用戶還購買過……”對於離不開社交平臺、電商、新聞閱讀、生活服務的現代互聯網用戶來說,個性化推薦已經不是什麼新鮮事兒。

隨着信息技術和互聯網行業的發展,信息過載成了人們處理信息的挑戰。對於用戶而言,如何在以指數增長的資源中快速、準確地定位到自己需要的內容是一個非常重要且極具挑戰的事情。對於商家而言,如何把恰當的物品及時呈現給用戶,從而促進交易量和經濟增長,也是一件頗具難度的事情。推薦系統的誕生極大地緩解了這個困難。

推薦系統是一種信息過濾系統,能根據用戶的檔案或者歷史行爲記錄,學習出用戶的興趣愛好,預測出用戶對給定物品的評分或偏好。它改變了商家與用戶的溝通方式,加強了和用戶之間的交互性。

據報道,推薦系統給亞馬遜帶來了35%的銷售收入,給Netflix帶來了高達75%的消費,並且Youtube主頁上60%的瀏覽來自推薦服務。

因此,如何搭建有效的推薦系統意義深遠。我們將從深度學習的應用、知識圖譜的應用、強化學習的應用、用戶畫像、可解釋推薦等幾個方面,一起看看推薦系統的未來。

研究熱點1:推薦系統與深度學習

近幾年深度學習的技術應用在語音識別、計算機視覺和自然語言理解等領域,取得了巨大的成功。如何將其應用到推薦系統是當前的研究熱點。深度推薦系統現階段的應用主要體現在如下三個層面:

提升表徵學習能力。深度神經網絡的優勢在於其強大的表徵學習能力。因此,一種最直接的應用是,利用深度學習技術從複雜的內容數據中學習出有效的隱因子特徵表示,從而後續可以很方便地爲推薦系統所用。

深度協同過濾。經典的矩陣分解模型可以被描述爲一種非常簡單的神經網絡。我們可以通過拓展其中的結構,引入更多的非線性單元來加強推薦模型的功能。例如,在WWW 2017論文《Neural collaborative filtering》中,作者提出了加強版的矩陣分解模型。一方面,它彌補了兩個隱向量的樸素點積操作不能區分各維度之間重要性差別的弱點;另一方面,它額外引入了一個多層感知機模塊,用來引入更多的非線性操作。除此之外,自動編碼機、卷積神經網絡、記憶網絡、注意力網絡等深度學習相關技術也分別被應用在改進傳統的協同過濾模型中,取得了不錯的效果。

特徵間的深度交互。企業級的推薦系統爲了儘量提高模型的準確性,往往會使用豐富的甚至異構的內容數據。這些特徵從不同的維度展現了不同的信息,而且特徵間的組合通常是非常有意義的。傳統的交叉特徵是由工程師手動設計的,這有很大的侷限性,成本很高,並且不能拓展到未曾出現過的交叉模式中。因此學者們開始研究用神經網絡去自動學習高階的特徵交互模式,彌補人工特徵工程帶來的種種侷限性。這個層面相關的模型包括Wide&Deep、PNN、DeepFM、DCN、以及我們近期提出的xDeepFM模型(《xDeepFM: Combining Explicit and Implicit Feature Interactions for Recommender Systems》,KDD 2018)等。

深度學習技術在推薦系統中的應用前景很廣闊。下面簡要介紹幾個未來可能的研究方向:

效率與可拓展性

對於工業界推薦系統而言,不僅需要考慮模型的準確度,運行效率和可維護性也是非常重要的方面。效率指的是當用戶發來一個請求時,推薦系統能夠以接近實時的速度返回結果,而不需讓用戶等待;可維護性指系統的部署簡便,能夠支持定期更新,或者增量式更新。衆所周知,複雜神經網絡的計算量是龐大的,如何將它們更高效的應用在超大規模的推薦平臺上,是亟需解決的技術難點。

多樣化數據融合

現實平臺中,用戶或者物品的數據往往是複雜多樣的。物品的內容可以包括文本、圖像、類別等數據;用戶的行爲數據可以來自多個領域,例如社交網絡、搜索引擎、新聞閱讀應用等;用戶的行爲反饋也可以是豐富多樣的,例如電商網站中,用戶的行爲可能有搜索、瀏覽、點擊、收藏、購買等。不僅如此,在這些不同的維度中,不同用戶或物品的數據分佈也千差萬別;用戶在不同的行爲反饋上的數據量也不同,點擊行爲的數據量往往遠大於購買行爲的數據量。因此,單一、同構的模型是不能有效地處理這些多樣化的數據的。如何深度融合這些複雜數據是一個技術難點。

捕捉用戶長短期偏好

用戶的偏好大致可以分爲長期和短期兩類。長期偏好往往指用戶的興趣所在,例如她是五月天的歌迷,那麼未來很長時間她都會對五月天的歌曲、演唱會門票感興趣;短期偏好指的是用戶在當前環境下的即時興趣,例如最近一週用戶比較喜歡聽抖音上的熱門歌曲,那麼推薦系統也應該捕捉到用戶的這個興趣,或者用戶在未來一個月有搬家的打算,那麼推薦系統可以適當地推送一些搬家公司的廣告。目前一些流行的做法是,將循環神經網絡與深度協同過濾技術結合,從而達到兼顧長短期記憶的功能。如何結合情境因素的影響,將用戶的長期偏好與短期需求更緊密、有效地結合起來,也是一個研究熱點。

研究熱點2:推薦系統與知識圖譜

在多數推薦場景中,物品可能包含豐富的知識信息,而刻畫這些知識的網絡結構即被稱爲知識圖譜。物品端的知識圖譜極大地擴展了物品的信息,強化了物品之間的聯繫,爲推薦提供了豐富的參考價值,更能爲推薦結果帶來額外的多樣性和可解釋性(圖1)。

image

圖1:利用知識圖譜發掘新聞間的潛在相關性

和社交網絡相比,知識圖譜是一種異構網絡,因此針對知識圖譜的推薦算法設計要更復雜和精巧。近年來,網絡特徵學習(network representation learning)逐漸成爲機器學習中的一個熱門的研究方向。
引入網絡特徵學習的方法處理推薦系統中知識圖譜的相關信息,有助於增強推薦系統的學習能力,提高精確度和用戶滿意度。

將知識圖譜引入推薦系統,主要有如兩種不同的處理方式:

第一,基於特徵的知識圖譜輔助推薦,核心是知識圖譜特徵學習的引入。一般而言,知識圖譜是一個由三元組<頭節點,關係,尾節點> 組成的異構網絡。由於知識圖譜天然的高維性和異構性,首先使用知識圖譜特徵學習對其進行處理,從而得到實體和關係的低維稠密向量表示。這些低維的向量表示可以較爲自然地與推薦系統進行結合和交互。

在這種處理框架下,推薦系統和知識圖譜特徵學習事實上就成爲兩個相關的任務。而依據其訓練次序不同,又有兩種結合形式:

  1. 知識圖譜特徵與推薦系統依次進行學習,即先學習特徵,再將所學特徵用於推薦。

  2. 交替學習法,將知識圖譜特徵學習和推薦系統視爲兩個相關的任務,設計一種多任務學習框架,交替優化二者的目標函數,利用知識圖譜特徵學習任務輔助推薦系統任務的學習。

第二,基於結構的推薦模型,則更加直接地使用知識圖譜的結構特徵。具體來說,對於知識圖譜中的每一個實體,我們都進行寬度優先搜索來獲取其在知識圖譜中的多跳關聯實體從中得到推薦結果。根據利用關聯實體的技術的不同,可分向外傳播法和向內聚合法兩種方法:

  • 向外傳播法模擬了用戶的興趣在知識圖譜上的傳播過程。我們近期的工作RippleNet (《RippleNet: Propagating User Preferences on the Knowledge Graph for Recommender Systems》, CIKM 2018)使用了向外傳播法,將每個用戶的歷史興趣作爲知識圖譜上的種子集合,沿着知識圖譜中的鏈接迭代地向外擴展。

  • 向內聚合法在學習知識圖譜實體特徵的時候聚合了該實體的鄰居特徵表示。通過鄰居聚合的操作,每個實體的特徵的計算都結合了其鄰近結構信息,且權值是由鏈接關係和特定的用戶決定的,這同時刻畫了知識圖譜的語義信息和用戶的個性化興趣。

結合知識圖譜推薦系統的機遇與挑戰

將推薦算法與知識圖譜的圖計算方法相結合已逐漸成爲學術熱點,前景廣闊。然而現有方法仍有一定侷限,有充分的研究空間。首先,現有模型都屬於統計學習模型,即挖掘網絡中的統計學信息並以此進行推斷。一個困難但更有研究前景的方向是在網絡中進行推理,將圖推理與推薦系統相結合。其二,如何設計出性能優秀且運行效率高的算法,也是潛在的研究方向。現有模型並不涉及計算引擎層面、系統層面甚至硬件層面的考量,如何將上層算法和底層架構進行聯合設計和優化,是實際應用中一個亟待研究的問題。最後,現有的模型網絡結構都是靜態的,在真實場景中,知識圖譜具有一定的時效。如何刻畫這種時間演變的網絡,並在推薦時充分考慮時序信息,也值得我們未來研究。

研究熱點3:推薦系統與強化學習

通過融合深度學習與知識圖譜技術,推薦系統的性能取得了大幅的提升。然而,多數的推薦系統仍是以一步到位的方式建立的。它們有着類似的搭建方式,即在充分獲取用戶歷史數據的前提下,設計並訓練特定的監督模型,從而得到用戶對於不同物品的喜好程度。這些訓練好的模型在部署上線後可以爲特定用戶識別出最具吸引力的物品,爲其做出個性化推薦。在此,人們往往假設用戶數據已充分獲取,且其行爲會在較長時間之內保持穩定,使得上述過程中所建立的推薦模型得以應付實際中的需求。然而對於諸多現實場景,例如電子商務或者在線新聞平臺,用戶與推薦系統之間往往會發生持續密切的交互行爲。在這一過程中,用戶的反饋將彌補可能的數據缺失,同時有力地揭示其當前的行爲特徵,從而爲系統進行更加精準的個性化推薦提供重要的依據。

強化學習爲解決這個問題提供了有力支持。依照用戶的行爲特徵,我們將涉及到的推薦場景劃分爲靜態與動態,並分別對其進行討論。

靜態場景下的強化推薦

在靜態場景之下,用戶的行爲特徵在與系統的交互過程中保持穩定不變。對於這一場景,一類有代表性的工作是基於上下文多臂老虎機(contextual multi-armed bandit)的推薦系統,它的發展爲克服推薦場景中的冷啓動問題提供了行之有效的解決方案。在許多現實應用中,用戶的歷史行爲往往服從特定的長尾分佈,即大多數用戶僅僅產生規模有限的歷史數據,而極少的用戶則會生成較爲充足的歷史數據。這一現象所帶來的數據稀疏問題使得傳統模型在很多時候難以得到令人滿意的實際效果。

爲此,一個直接的應對方法是對用戶行爲進行主動式的探索,即通過對用戶發起大量嘗試性的推薦,以充分的獲得其行爲數據,從而保障推薦系統的可用性。然而不幸的是,這一簡單的做法勢必引發極大的探索開銷,使得它在現實中並不具備可行性。爲使主動式探索具備可行的效用開銷,人們嘗試藉助多臂老虎機問題所帶來的啓發。多臂老虎機問題旨在於“探索-利用”間做出最優的權衡,爲此諸多經典算法,被相繼提出。儘管不同的算法有着不同的實施機制,它們的設計都本着一個共同的原則。

具體說來,系統在做出推薦的時候會綜合考慮物品的推薦效用以及累積嘗試。較高的推薦效用預示着較低的探索開銷,而較低的累積嘗試則表明較高的不確定性。爲此,不同的算法都會設計特定的整合機制,使得同時具備較高推薦效用與不確定性物品可以得到優先嚐試。

動態場景下的強化推薦

在多臂老虎機的設定場景下,用戶的實時特徵被假設爲固定不變的,因此算法並未涉及用戶行爲發生動態遷移的情況。然而對於諸多現實中的推薦場景,用戶行爲往往會在交互過程中不斷變化。這就要求推薦系統依照用戶反饋精確估計其狀態發展,併爲之制定優化的推薦策略。具體來講,一個理想的推薦系統應滿足如下雙方面的屬性。一方面,推薦決策需要充分基於用戶過往的反饋數據;另一方面,推薦系統需要優化整個交互過程之中的全局收益。強化學習爲實現上述目標提供了有力的技術支持。

在強化學習的框架之下,推薦系統被視作一個智能體(agent),用戶當前的行爲特徵被抽象成爲狀態(state),待推薦的對象(如候選新聞)則被當作動作(action)。在每次推薦交互中,系統依據用戶的狀態,選擇合適的動作,以最大化特定的長效目標(如點擊總數或停留時長)。推薦系統與用戶交互過程中所產生的行爲數據被組織成爲經驗(experience),用以記錄相應動作產生的獎勵(reward)以及狀態轉移(state-transition)。基於不斷積累的經驗,強化學習算法得出策略(policy),用以指導特定狀態下最優的動作選取。

我們近期將強化學習成功應用於必應個性化新聞推薦(《DRN: A Deep Reinforcement Learning Framework for News Recommendation》,WWW 2018)。得益於算法的序列化決策能力及其對長效目標的優化,強化學習必將服務於更爲廣泛的現實場景,從而極大地改善推薦系統的用戶感知與個性化能力。

強化推薦的機遇與挑戰

強化學習推薦算法尚有諸多富有挑戰性的問題亟待解決。

現行主流的深度強化學習算法都試圖避開對環境的建模,而直接進行策略學習(即model-free)。這就要求海量的經驗數據以獲取最優的推薦策略。然而,推薦場景下的可獲取的交互數據往往規模有限且獎勵信號稀疏(reward-sparsity),這就使得簡單地套用既有算法難以取得令人滿意的實際效果。如何運用有限的用戶交互得到有效的決策模型將是算法進一步提升的主要方向。

此外,現實中人們往往需要對不同推薦場景進行獨立的策略學習。不同場景下的策略互不相同,這就使得人們不得不花費大量精力以對每個場景都進行充分的數據採集。同時,由於不具備通用性,既有策略難以迅速適應新的推薦場景。面對這些挑戰,人們需要儘可能地提出通用策略的學習機制,以打通算法在不同推薦場景間的壁壘,並增強其在變化場景中的魯棒性。

研究熱點4:推薦系統中的用戶畫像

構建推薦系統的核心任務之一在於如何準確地分析出用戶的興趣特點,也就是我們常說的用戶畫像。

簡單說來,用戶畫像是指從用戶產生的各種數據中挖掘和抽取用戶在不同屬性上的標籤,如年齡、性別、職業、收入、興趣等。完備且準確的屬性標籤將有力地揭示用戶本質特徵,因而極大地促進精準的個性化推薦。

用戶畫像研究的現狀和挑戰

目前,主流用戶畫像方法一般是基於機器學習尤其是有監督學習的技術。這類方法從用戶數據中抽取特徵來作爲用戶的表示向量,並利用有用戶屬性標籤的數據作爲有標註數據來訓練用戶畫像預測模型,從而對更多的沒有標籤的用戶的屬性進行預測。

儘管目前的用戶畫像方法已經取得了不錯的效果並被廣泛應用於實際推薦系統中,這些方法仍然存在一定的問題和挑戰:

  • 首先,這些已有的方法大多數都基於手工抽取的離散特徵,這些特徵無法刻畫用戶數據的上下文信息,因此對於用戶的表徵能力較爲有限。

  • 其次,現有的用戶畫像方法通常基於簡單的線性迴歸或分類模型,無法從用戶數據中自動學習高層次抽象特徵,也無法對特徵之間的交互關係進行建模。另外,已有的用戶畫像方法往往基於單一類型和單一來源的數據,這些數據對於用戶的表徵不夠豐富。而實際上,用戶數據往往是多來源和多類型的。

  • 最後,已有的用戶畫像方法大都沒有考慮用戶屬性標籤的時效性,因此很難刻畫用戶動態變化的屬性如興趣等。

從多源異構用戶數據中構建深度、統一和動態的用戶畫像

爲了應對上述挑戰,我們認爲應該從以下方面展開用戶畫像研究:

  1. 構建具有更強表徵能力的用戶表示模型。隨着深度學習技術的發展和成熟,利用深層神經網絡從用戶原始數據中自動抽取深層次的、有信息量的特徵來構建用戶的特徵表示能夠有助於更加充分地利用用戶數據並有效提升用戶畫像的精度。使用基於深層神經網絡的用戶表示模型能夠有效克服目前已有的基於特徵工程和線性模型的用戶畫像方法的不足。我們提出的HURA模型(《Neural Demographic Prediction using Search Query》, WSDM 2019)基於多層注意力機制和神經網絡結構,有效地通過搜索日誌預測了用戶個人屬性。

  2. 基於多源和異構數據的用戶畫像。用戶產生的數據往往分佈在不同的平臺,並且具有不同的結構(如無結構的社交媒體文本數據和有結構的電商網站購買記錄等)和不同的模態(如文本數據和圖像數據),給用戶畫像帶來了很大的挑戰。如何設計一個深度信息融合模型來利用不同來源、不同結構和不同模態的用戶數據進行用戶建模,是未來用戶畫像領域的一個重要方向。基於深度神經網絡的協同學習和多通道模型可能是值得嘗試的技術。

  3. 不同平臺用戶畫像數據的共享和用戶隱私保護。目前很多用戶數據存在於不同的平臺當中,例如搜索引擎擁有用戶的搜索和網頁瀏覽記錄,電商網站擁有用戶的商品瀏覽、購物、收藏和購買信息。這些不同平臺的用戶數據對於用戶畫像都具有重要的價值,互相之間可以提供互補信息,有助於構建更加豐富全面的用戶表示。然而,平臺之間直接共享用戶信息可能會使得用戶的隱私受到泄露和損害。如何在不轉移和不共享用戶數據的情況下,充分利用不同平臺的用戶信息實現協同用戶畫像和建模是值得研究的一個方向。

  4. 面向用戶畫像的統一用戶表示模型。已有的用戶畫像方法在實際的應用中往往會涉及大量模型的訓練、存儲和調用,時間和空間的複雜度都比較高,使用起來也比較繁瑣。另外,不同的用戶屬性之間潛在的聯繫也無法充分挖掘。如何基於多源異構的用戶數據構建一個統一的用戶表示模型,使得該模型可以儘可能全面而準確地包含一個用戶在不同屬性和維度的特徵信息並能夠應用於多個用戶畫像任務是一個非常值得研究的方向。基於深層神經網絡的多任務學習技術和類似詞嵌入的用戶嵌入技術有希望能夠應用於這個問題。

研究熱點5:推薦系統的可解釋性

上文所述推薦系統研究大都將重心放在提高推薦準確性上,與推薦對象的溝通考慮得不夠。近期,學者們開始關注推薦是否能夠以用戶容易接受的方式,充分抓住用戶心理,給出適當的例子與用戶溝通。研究發現,這樣的系統不僅能夠提升系統透明度,還能夠提高用戶對系統的信任和接受程度 、用戶選擇推薦產品的概率以及用戶滿意程度。設計這樣一個可解釋的推薦系統是我們的終極目標。

作爲推薦領域被探索得較少的一個方向,可解釋推薦的很多方面值得研究與探索。目前,我們在考慮從下面三個方面進行研究。

利用知識圖譜增強算法解釋能力

知識圖譜作爲可讀性高的外部知識載體,給提高算法解釋能力提供了極大的可能性。現有的可解釋推薦所生成的推薦解釋往往只侷限於以物品爲媒介、以用戶爲媒介或者以特徵爲媒介中的某一種,對這三類媒介之間的關聯挖掘得還不夠。我們希望能夠利用知識圖譜,打通這三類媒介之間的關聯,根據具體情況靈活選擇其中最合適的媒介對用戶進行推薦與解釋。另外,我們還可能利用Microsoft Concept Graph這類概念圖譜,建立特徵之間的可讀深度結構,從而用來代替目前解釋性極弱的深度學習網絡,在提高可讀性的同時保證算法的準確性。

在可解釋人工智能越來越重要的時代,將知識圖譜這類符號知識(symbolic knowledge)和深度學習結合,會是極有前景的方向。

模型無關的可解釋推薦框架

目前可解釋推薦系統大多是針對特定的推薦模型設計,可拓展性較弱,對於新興的推薦模型,例如含有深度神經網絡的複雜、混合模型的解釋能力還不夠。如果有一個模型無關的可解釋推薦框架,就可以避免針對每個推薦系統分別設計解釋方案,從而提高方法的可拓展性。我們對此做了初步嘗試(《A Reinforcement Learning Framework for Explainable Recommendation》,ICDM2018)。在這一工作中,我們提出用如下的強化學習框架(圖2)來對任何推薦模型進行解釋,同時確保可拓展性、解釋能力以及解釋質量。

image

圖2:模型無關的可解釋推薦強化學習框架

結合生成模型進行對話式推薦

目前的推薦解釋往往形式是預先設定、千篇一律的(如預先設定推薦解釋是以用戶爲媒介的)。這樣儘管也能根據用戶心理舉出一些例證,但是在溝通方式上還過於呆板。如果能用生成模型讓推薦系統“自創”一句通順甚至高情商的話,就可以在與用戶聊天的過程中進行靈活、多變地推薦解釋了。我們團隊與微軟小冰合作,在這方面進行了一些嘗試,爲小冰生成音樂推薦解釋。

我們認爲未來的推薦系統需要進一步考慮推薦算法的效率與可拓展性、融合多源異構的用戶行爲數據,並捕捉用戶長短期的偏好;在推薦系統中結合知識圖譜推理、設計通用策略的學習機制、以及通過有限的用戶交互數據得到有效的決策模型是重要的研究方向;在可解釋性方面,我們需要藉助知識圖譜來增強算法解釋能力、設計模型無關的可解釋推薦框架、並考慮結合生成模型進行對話式推薦;最後,我們需要認真關注用戶隱私問題,設計在不同平臺間共享用戶數據的機制,並建立面向推薦系統的統一用戶表示模型。我們相信個性化推薦系統將在準確性、多樣性、計算效率、以及可解釋性多個不同的方向持續演進,最終解決用戶信息過載的困擾。

本文貢獻者:謝幸,練建勳,劉政,王希廷,吳方照,王鴻偉,陳仲夏

作者介紹

社會計算組

微軟亞洲研究院社會計算組致力於將計算機科學與社會學、心理學、認知科學等領域相結合,基於用戶在各種異構社交平臺上產生的大規模行爲數據,對用戶進行全面和深度的理解,進而爲用戶提供更加智能和個性化的服務。該組目前的主要研究方向包括用戶建模、推薦系統、時空數據挖掘、圖數據挖掘、情感分析與個性化聊天系統等,其學術水平在社會計算、普適計算與數據挖掘等領域均享有盛名,並與微軟人工智能產品團隊有着密切的合作關係。

image

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