每日最新頭條.有趣資訊

揭秘可解釋推薦系統:知其然,知其所以然

新智元推薦

來源:微軟研究院AI頭條(ID:MSRAsia)

作者:王希廷 謝幸

【新智元導讀】單純的推薦結果和推薦結果+理由的組合,哪個更讓你信服?長篇累牘的推薦語和言簡意賅的關鍵詞,你更願意看哪個?這是人們每天都會面對的場景,也是可解釋推薦系統研究需要不斷優化的問題。

近幾年,人工智能的可解釋性問題受到了來自政府、工業界和學術界的廣泛關注。美國國防部先進研究項目局DARPA資助了可解釋性人工智能項目XAI(Explainable AI);中國國務院在《新一代人工智能規劃》中提出的“實現具備高可解釋性、強泛化能力的人工智能”目標,得到了各個公司的積極響應;ICML 2017年的最佳論文《Understanding Black-Box Predictions via Influence Functions》以及NIPS 2017的最佳論文《A Linear-Time Kernel Goodness-of-Fit Test》也和可解釋性有著緊密關聯。

當深入研究這個新興且快速發展的領域時,一些尚未清楚的問題也困擾著我們。解釋的具體目標是什麽?當我們要將解釋呈現給普通用戶看時,我們的目標是否會有變化?怎麽對可解釋性的問題進行較為嚴格的定義?提高機器學習方法(如推薦模型)的可解釋性,現有方法的流程是什麽樣的?未來的發展方向是什麽樣的?

這些問題既困擾著我們,也帶來了研究的樂趣。本文將以推薦系統的解釋性為引,和大家分享我們探索到的部分答案,希望能對可解釋性研究起到拋磚引玉的作用。

目標及定義

可解釋機器學習的目標問題可以從2017年引起廣泛關注的機器學習煉金術之爭談起。NIPS 2017年時間檢驗獎(Test-of-Time Award)獲得者Rahimi在發表獲獎感言的時候表示,現在的機器學習已經越來越像煉金術了。其實如果只是簡單應用煉金術的結果倒也無妨,可是將類似煉金術的機器學習結果用於社交媒體甚至大選是不夠嚴謹和周密的,這也讓他感到不安。他的發言引起了很大的關注和爭論。他的質疑中提出的兩個問題,我們將它們總結為透明度和信任度

關於可解釋機器學習目標,最普遍的看法是提高機器學習方法的透明度。以深度學習方法為例,很多人對深度神經網絡進行調試時,都將其看作黑匣子。我們只能看懂黑匣子的輸入輸出,很難理解黑匣子中的工作原理。這就造成了機器學習模型結果難以預測(能否點石成金?)、難以調試等問題,最終影響對機器學習模型的深入理解及結果的進一步提高。另一個目標是提高人們對於機器學習算法的信任度。在醫療、金融、軍事、政治等關鍵領域,機器學習的結果影響甚大,而可解釋機器學習則可以幫助決策者決定是否信任機器學習的結果。

這些目標都和模型密切相關,我們將它們統稱為模型可解釋性。如果隻考慮這類目標,就忽視了解釋中非常關鍵的一環:用戶(解釋對象)。

當我們著眼於用戶,就發現解釋不僅要幫助我們提高對模型的理解,它本身的可讀性也很關鍵。如果解釋過於複雜,理解起來耗時耗力、需要極強的機器學習知識,這就和增強理解的初衷就背道而馳了。解釋本身需要簡明扼要、具有洞察力和高可讀性,否則和直接列印神經網絡每個參數輸出沒有本質區別。

在一些領域,我們需要把結果呈現給普通用戶看。例如推薦一本書給用戶,如果能用通俗易懂的解釋讓用戶了解到為什麽會推薦這本書給他,可以極大地提高推薦的有效性(幫助用戶快速做出是否看書的決策)甚至推薦的說服力(提高用戶閱讀這本書的可能性)。這對用戶和廣告商都有重要的應用意義,但是目前學術界對這方面的探討比較少。我們認為將用戶更多地納入可解釋機器學習的考慮範疇,將極大提高可解釋方法的應用和研究價值。可讀性、有效性、說服力這類目標,我們統稱為解釋品質。上述討論的可解釋機器學習兩大類目標可以總結如下圖所示。

這些目標相輔相成,又相互製約。研究表明,提高透明度有助於提升解釋的說服力;而透明度和可讀性卻需要協調平衡,一個面面俱到、幫助人們深入理解模型的解釋(透明度高)很可能可讀性較低,因為人們需要花長時間理解;有效性旨在幫助用戶做最適合他們的決策,這和說服用戶接受某種決策也有相互矛盾之處。不同目標如何協調平衡,主要取決於具體的應用場景。

基於上述理解,我們可以嘗試對可解釋推薦下個定義。一般來說,可解釋推薦是在給出推薦結果的同時,給出對結果的支持論據(即解釋)。如果需要更細地進行定義,就要考慮具體應用及目標。如果更側重模型可解釋性(模型導向),就要求論據能夠幫助用戶更好地理解模型行為;如果更注重解釋品質中的說服力,則要求論據能夠增加用戶接受推薦物品的概率;如果更注重解釋品質中的有效性,則要求論據能夠幫助用戶做出更好地決定。

下圖是一個偏重解釋有效性的例子。和偏重說服力的相比,它不僅會突出餐館值得一去的原因(擔擔面好吃),還會指出餐館的一個缺點(價格偏高),幫助用戶做出更好的決定。

可解釋推薦流程

下面,我們回歸到可解釋推薦的場景下,看看現在可解釋方法的主要流程是什麽樣的。這些流程裡面主要涉及到推薦中的幾個關鍵要素:用戶集合U、物品集合V、被解釋的推薦系統f(u,v)、推薦系統的推薦物品集合V',解釋模塊以及其輸出的解釋z。

最常見的一種流程是後處理(Post-hoc)。如下圖所示,後處理的方法是在推薦結果已經給出後再進行解釋,解釋內容不受推薦系統f(u,v)的影響,即使換了一個推薦系統,只要給定同一個用戶和物品,解釋都是一樣的。這種方法主要優化的是解釋品質(希望生成可讀性、有效性高甚至具有說服力的解釋),但是模型解釋性較差,同時也比較容易實現,適合面向不懂機器學習的普通用戶進行解釋。主要應用場景包括廣告電商平台、新聞、音樂、電影推薦等等。

後處理方法主要研究解釋文本生成,分為三種方法:(1)基於規則;(2)基於檢索;(3)基於生成式模型。

基於規則是指由解釋方法設計者事先給定一些簡單模板(例如“N個微博用戶都喜歡這個商品”),算法隻負責對模板中涉及的內容根據規則進行填充。基於檢索的方法是由解釋方法設計者規定解釋集合,算法負責對解釋集合進行排序,挑選排在最靠前的解釋輸出給用戶。例如給用戶推薦書時,解釋集合規定為用戶曾經看過的書,此時解釋模板為“看過X的用戶都很喜歡這本書”,算法只需要從集合中根據用戶的興趣及書的相似度挑選一本放入解釋即可。

基於規則和基於檢索的方法在生成解釋文本時,都需要模板,難免讓用戶覺得千篇一律、缺乏驚喜。有沒有辦法從數據中進行學習,進一步提高解釋的多樣性和說服力呢?我們組在這方面做了一些研究,發現可以從數據中學習,綜合廣告商提供的文案和被展示廣告的點擊率,利用改進的序列生成技術自動寫出廣告文案,這種方法已經被應用在微軟的搜索廣告中。下表展示了我們的廣告生成結果,可以看到不僅有一些具有說服力的話(如“Apply today & find your perfect job!”),而且生成結果多種多樣。

可解釋推薦的第二種流程是嵌入式(Embedded)。嵌入式的方法把解釋模塊融入到推薦系統的構建中(如下圖所示)。解釋模塊往往對物品的特徵進行選擇,將對推薦準確性影響最大的物品挑選出來作為解釋。這裡面用作解釋的物品特徵往往是一些詞組(“螢幕清晰”)、語句(“這本書自2018年開始在全世界銷量5億本,是歷史上銷量最高的一本書。”)或者是圖片。嵌入式的方法和後處理的相比,具有很高的模型解釋性,但是難以確保解釋品質,例如,難以保證解釋之間的連貫性及一致性,因此比較適合研究人員及算法開發人員。

嵌入式方法的大部分解釋模塊都是淺層的,比如RecSys 2013年的論文《Hidden factors and hidden topics: Understanding rating dimensions with review text》中用到的主題模型,SIGIR 2014年的論文《Explicit factor models for explainable recommendation based on phrase-level sentiment analysis》中用到的矩陣分解,以及WWW 2018年論文《Neural attentional rating regression with review-level explanations》中用到的單層注意力網絡。

能否構建一個深層的網絡,每一層的特徵和它們之間的關聯都是可解釋的呢?沿著這個思路研究,我們利用Microsoft Concept Graph構建了深度可解釋網絡的初始結構,並且利用Attentive Multi-View Learning對這個深度可解釋網絡中每層的參數進行優化,使它不僅可以提高推薦準確性、有用性,還可以通過無監督的方式自動對用戶的層次興趣進行建模。例如,我們可以知道用戶是隻對壽司(低層特徵)感興趣,還是對日料(高層特徵)整體都比較感興趣。這部分工作我們發表在AAAI 2019論文《Explainable Recommendation Through Attentive Multi-View Learning》中,模型框架如下圖所示。

後處理和嵌入式的流程一個側重解釋品質,一個側重模型解釋性。有沒有方法能夠更好地兼顧兩者呢?在這樣的思考下,我們提出了封裝式(Wrapper)流程。如下圖所示,封裝式的方法不需要改變現有的推薦系統,只是將解釋模塊和推薦系統放在相對平等的位置,解釋模塊通過與推薦系統互動生成模型相關的解釋。這樣既可以自由控制解釋品質,又可以保證模型解釋性,同時也不需要像嵌入式的方法一樣針對不同的推薦模型設計不同的解釋方法,是一種協調模型解釋性與模型品質的很好的方法。

封裝式可解釋方法是利用增強學習實現的。具體來說,就是利用下圖所示的增強學習框架來對任何推薦模型進行解釋,可以同時確保模型解釋性以及解釋品質。在這個框架中,被解釋的推薦模型是環境(Environment)中的一部分。框架中有兩個智能體 (Couple Agents),其中智能體1負責生成解釋,智能體2負責利用解釋預測被解釋推薦模型的輸出(用戶對物品的打分)。這兩個智能體把需要解釋的模型當作黑盒子,通過與環境進行互動得到的獎勵(Reward)決定優化方向。

這裡,環境給予的獎勵由兩個方面決定。如果智能體可以利用解釋準確預測(模仿)被解釋推薦模型的結果,則被獎勵,這體現的是對推薦模型的解釋能力。如果智能體給出的解釋精煉、有連貫性、可讀性較高,也會被獎勵,這是為了提高解釋本身的品質。這樣的框架適用於任何推薦模型,同時解釋能力和解釋品質都較高。這部分工作發表在ICDM 2018的論文《A Reinforcement Learning Framework for Explainable Recommendation》 中。

這個框架是我們在可解釋推薦框架方面的一個初步嘗試,它目前還有不少需要改進的地方。例如利用目前增強學習方法生成解釋有收斂較慢的問題,另外預先設定的獎勵機制是否與實際應用中希望的獎勵有直接聯繫也需要進一步研究。接下來,我們會延續這個方向進行探索。

機遇與挑戰

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

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

知識圖譜作為可讀性高的外部知識載體,給提高算法解釋能力提供了極大的可能性。例如,我們可以利用知識圖譜打通不同媒介之間的關聯。現有的可解釋推薦所生成的推薦解釋往往隻局限於以物品為媒介、以用戶為媒介或者以特徵為媒介中的某一種,對這三類媒介之間的關聯挖掘得還不夠。我們希望能夠利用知識圖譜,打通這三類媒介之間的關聯,根據具體情況靈活選擇其中最合適的媒介對用戶進行推薦與解釋。在可解釋人工智能越來越重要的時代,將知識圖譜這類Symbolic Knowledge和深度學習結合,會是極有前景的方向。

普適的可解釋推薦框架及評測標準

目前可解釋推薦系統大多是針對特定的推薦模型設計,可拓展性較弱,對於新興的推薦模型,例如含有深度神經網絡的複雜、混合模型的解釋能力還不夠。如果有一個模型無關的可解釋推薦框架,就可以避免針對每個推薦系統分別設計解釋方案,從而提高方法的可拓展性。

另外,可解釋推薦如何評測一直是困擾可解釋性研究員的一個難題,線上(online)測試和人工標注條件要求較為苛刻,線下(offline)的評測標準還不夠成熟,我們希望在這個方向進一步研究,降低可解釋性研究的門檻,建立可解釋性的基礎理論。

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

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

除了可解釋推薦系統,個性化推薦未來還有哪些研究熱點?在《預見未來 | 個性化推薦系統,必須關注的五大研究熱點》一文中,微軟亞洲研究院社會計算組的研究員們從深度學習、知識圖譜、強化學習、用戶畫像、可解釋推薦等五個方面展望了推薦系統的未來發展。

作者介紹

王希廷,微軟亞洲研究院研究員。2011年於清華大學獲得工學學士學位。2017年於清華大學獲得工學博士學位。她的研究成果發表在數據挖掘和可視化的頂級會議和期刊上,包括KDD、TKDE、AAAI、IJCAI、VAST和TVCG等。她的一篇一作論文被TVCG選為2016年12月的spotlight article。她曾擔任TKDE、TVCG、InfoVis等頂級會議、期刊的審稿人。

謝幸,微軟亞洲研究院首席研究員,中國科技大學兼職博士生導師。他的團隊在數據挖掘、社會計算和普適計算等領域展開創新性的研究。他在國際會議和學術期刊上發表了200余篇學術論文,共被引用18000余次,多次在KDD、ICDM等頂級會議上獲最佳論文獎。他是ACM、IEEE高級會員和電腦學會傑出會員,曾擔任ACM UbiComp 2011、PCC 2012、IEEE UIC 2015、以及SMP 2017等大會程式委員會共同主席。

本文授權轉載自微軟研究院AI頭條(ID:MSRAsia)

【加入社群】

新智元 AI 技術 + 產業社群招募中,歡迎對 AI 技術 + 產業落地感興趣的同學,加小助手微信號:aiera2015_2入群;通過審核後我們將邀請進群,加入社群後務必修改群備注(姓名 - 公司 - 職位;專業群審核較嚴,敬請諒解)。

獲得更多的PTT最新消息
按讚加入粉絲團