Reference: 可解釋推薦系統:身懷絕技,一招擊中用戶心理網絡
《戰國策》中有個有趣的故事:當年趙國被入侵,只有送出質子才能求來救兵。可是趙太后特別疼愛小兒子,怎麼也不肯意讓他當質子。大臣們越是勸諫,趙太后就越是憤怒。這時候觸龍出面,成功說服了趙太后,讓她的愛子出質於齊,換來救兵。他究竟是如何作到的呢?框架
這個故事其實跟咱們最近進行的推薦系統的研究很是相關。若是把「送出質子」看成一個推薦給太后的策略,那麼故事的關鍵不在於推薦內容的好壞,而在於對推薦內容的解釋。若是要讓趙太后這樣頑固的用戶接受這個推薦,關鍵點是什麼?測試
觸龍給出的答案是:溝通方式、用戶心理、合適例證。讓咱們詳細看看他是怎麼作的。網站
觸龍剛見到趙太后就開始話家常,說:「我老啦,有個小兒子年齡很小,真是擔憂他的將來啊。」趙太后問:「大家男人也很寵愛小兒子嗎?」觸龍說:「比女人更寵呀。我認爲趙太后更喜歡您的女兒,而不是小兒子。」趙太后表示不認同。觸龍解釋道:「您送公主出嫁的時候,儘管傷心,但也但願她不要被趕回來。這還不是爲她的長遠將來打算?」趙太后贊成。觸龍又說:「可是您卻沒怎麼爲長安君計劃將來。您看趙國剛創建時的諸侯王,他們的子孫還有享受爵位的嗎?其餘國家的呢?」趙太后想了想,表示沒有。觸龍又說:「那是由於他們榮華富貴太甚,又沒有什麼功勞的緣故。您如今讓長安君有如此高的地位,卻不讓他有功於國,一旦您駕崩了,長安君憑什麼在趙國立足呢?」聽了這番話後,趙太后贊成了將長安君做爲人質。設計
咱們能夠在這個故事裏看到兩類推薦系統。一類是朝廷大臣這種傳統的推薦系統(下圖(a)),將重心放在提升推薦準確性上,與推薦對象的溝通考慮得不夠;而另外一類是觸龍這種可解釋的推薦系統(下圖(b)),可以以用戶容易接受的方式(話家常),充分抓住用戶心理(父母愛本身的小孩,應該爲他們長遠將來考慮),給出適當的例子(趙太后送公主出嫁)與用戶溝通。研究發現,這樣的系統不只可以提高系統透明度,還可以提升用戶對系統的信任和接受程度 、用戶選擇體驗推薦產品的機率以及用戶滿意程度等等。3d
(a) 傳統推薦系統對象
(b) 可解釋推薦系統blog
設計一個像觸龍這樣可解釋的推薦系統是咱們的終極目標。目前,這個方向進展如何呢?將來,有什麼比較好的研究課題呢?下面,我來介紹一下可解釋推薦的分類、推薦解釋生成方法以及可解釋推薦面臨的機遇和挑戰。圖片
通常來講,可解釋的推薦分爲下圖所示的三大類:以物品爲媒介、以用戶爲媒介、以及以特徵爲媒介。ip
以物品爲媒介的推薦解釋用一句話表述是「這個推薦物品和您喜歡的其餘物品類似」。在趙太后的故事中,觸龍用了相似的推薦解釋: 「派長安君作人質」這個推薦策略與趙太后曾經採用過的策略(送公主出嫁)類似。這類解釋在各大網站上如亞馬遜、Netflix等有較爲普遍的應用。它的展示方式經常是一個曾經購買、評論或者瀏覽物品的列表,列表中的物品和目前推薦的物品比較類似。研究代表這類方法可以增長系統的被接收程度。可是這類推薦解釋的問題是用戶有時可能難以找到物品之間的關聯,另外用戶有時可能但願看到一些本身沒有購買過的、不同的物品。
以用戶爲媒介的推薦解釋用一句話表述是「跟您類似的用戶都喜歡該推薦物品」。在趙太后的故事中,這個與趙太后類似的用戶就是也寵愛小兒子的觸龍。這類推薦解釋展示形式多種多樣,生成解釋時也每每用到社交信息。微軟研究員Amit Sharma等人對四種社交理由進行了用戶測試,這四類理由是總體熱度(2,612,211位Facebook 用戶喜歡它)、朋友熱度(您的朋友中有7人喜歡它)、好朋友(張三喜歡它)、好朋友及個數(張三和其餘5位您的朋友喜歡它)。最終發現後兩種解釋方式效果對提高說服力效果最好。使用這兩種解釋方式時,選擇一個正確的朋友很是重要。若是隻是隨機選擇一個朋友,說服力反而會下降。以用戶爲媒介的推薦解釋與以物品、特徵爲媒介的推薦解釋相比,最能說服用戶對推薦物品進行評估,可是對用戶實際使用物品後喜好程度影響比較小。若是推薦的物品用戶不夠喜歡,反而會下降用戶的滿意程度。
以特徵爲媒介的推薦解釋用一句話表述是「您可能喜歡推薦物品的這些特徵」。在趙太后的故事中,觸龍抓住了趙太后最關心的特徵——子孫的長遠利益——進行推薦,從而使得趙太后接受了推薦。這類推薦解釋常見的表現形式是將推薦物品中用戶感興趣的主要特徵進行列舉(以下圖)。研究代表這類推薦解釋有助於用戶準確判斷是否喜歡推薦物品,與前兩類推薦解釋相比,用戶對這類推薦的滿意度更高。這類推薦須要判斷物品特徵以及用戶對不一樣特徵的感興趣程度,從而找到最適合用於解釋的特徵,所以建模粒度更細,也是目前的研究熱點。
以特徵爲媒介的推薦解釋
除了上述三種推薦解釋之外,還有結構化概覽式推薦以及對話式推薦等。其中,結構化概覽式推薦將推薦物品用有組織的、可視化的形式呈現給用戶,讓用戶能夠看到各個推薦物品的特性和分佈,從而在充分了解之後作出挑選。對話式推薦是在與用戶聊天時進行推薦、解釋、收集用戶反饋,有着較高的接受度,也能夠很好地解決冷啓動問題。這是一個新興的研究方向,咱們也在作一些嘗試,將在後文進行討論。
剛剛咱們談到了幾類推薦解釋,其中以特徵爲媒介的推薦解釋建模粒度較細,模型也日趨成熟。接下來重點介紹一下這類推薦解釋的生成方法。
生成基於特徵的推薦解釋時,關鍵是特徵的提取。早期的方法藉助一些顯式的物品特徵,例如事先肯定的物品分類、關鍵詞、以及標籤信息。在挑選特徵進行解釋時,主要是綜合兩個指標:第一是用戶對特徵的感興趣程度,第二是推薦商品與特徵的相關程度。第一點須要很是瞭解用戶心理,第二點須要對商品進行精確建模,綜合兩點考慮,才能像觸龍同樣擊中用戶心裏。早期方法對這二者分別計算以後進行合併,從而找出推薦物品以及解釋。這類方法的問題之一是特徵的可描述性(Descriptiveness)可能不夠。另外這些方法採用的推薦模型還比較簡單,一些精巧的、複雜的推薦系統難以用這樣的方法進行解釋。
EFM(Explicit Factor Model)框架
JMARS(Jointly Modeling Aspects, Ratings and Sentiments)框架
做爲推薦領域被探索得較少的一個方向,可解釋推薦的不少方面值得研究與探索。目前,咱們在考慮從下面三個方面進行研究。
解釋含有深度神經網絡的推薦模型。目前可解釋推薦的系統每每是基於較淺層的圖模型或者矩陣分解模型,對於含有深度神經網絡的複雜、混合模型的解釋能力還不夠。咱們在考慮借鑑對深層卷積神經網絡進行解釋、分析的技術,將複雜、高級的推薦系統升級爲可解釋的推薦。
利用知識圖譜打通不一樣媒介之間的關聯。現有的可解釋推薦所生成的推薦解釋每每只侷限於以物品爲媒介、以用戶爲媒介或者以特徵爲媒介中的某一種,對這三類媒介之間的關聯挖掘得還不夠。咱們但願可以利用知識圖譜,打通這三類媒介之間的關聯,根據具體狀況靈活選擇其中最合適的媒介對用戶進行推薦與解釋。這樣,咱們還能夠產生形式更豐富的推薦解釋,例如將用戶感興趣的圖片也進行展現。
結合生成模型進行對話式推薦。目前的推薦解釋每每形式是預先設定、千篇一概的(如預先設定推薦解釋是以用戶爲媒介的)。這樣儘管也能根據用戶心理舉出一些例證,可是在溝通方式上還過於呆板,離觸龍那樣話家常式的推薦還有很大距離。若是能用生成模型讓推薦系統「自創」一句通順甚至高情商的話,就能夠在與用戶聊天的過程當中進行靈活、多變地推薦解釋了。咱們團隊已經與微軟小冰合做,在這方面進行了一些嘗試,爲小冰生成音樂推薦解釋。推薦過程以下圖所示:
咱們會從這幾個方向出發,不斷拓展可解釋推薦的深度和廣度。但願不久後的某一天,推薦系統都能像觸龍那樣厲害。