高廣尚
桂林理工大學 商學院,廣西 桂林541004
現(xiàn)實生活中,人類通過快速掃描全局圖像,獲得需要重點關注的目標區(qū)域,得到注意力焦點,然后對這一區(qū)域投入更多注意力,以獲取更多所需關注目標的細節(jié)信息,同時抑制其他無用信息。這是人類利用有限的注意力資源從大量信息中快速篩選出高價值信息的手段,是人類在長期進化中形成的一種生存機制,極大地提高了視覺信息處理的效率與準確性。而深度學習中的注意力機制(attention machanism,AM)本質上與人類的選擇性視覺注意力機制類似,其目的也是從眾多信息中選擇出對當前任務目標更關鍵的信息[1]。具體來說,深度學習中注意力機制的作用就是通過神經(jīng)網(wǎng)絡自主學習出一組權重系數(shù),并以動態(tài)加權方式來強化重要信息并同時抑制非重要信息,從而使得模型可以在任務的每個步驟上專注于輸入信息的必要部分[2-3]。近年來,注意力機制逐漸成為深度學習中最值得關注和深入了解的核心技術之一[4-8],并在推薦系統(tǒng)社區(qū)中獲得了極大歡迎[6,9-16]。在深度學習推薦模型中,注意力機制能幫助模型抓住最具信息量的特征,推薦最具代表性的物品。
目前,注意力機制已在點擊率預測、多媒體推薦、評分預測和群體與捆綁推薦等經(jīng)典推薦場景中得到了應用,且被證明在提高推薦性能方面具有諸多優(yōu)勢:(1)一步到位地進行全局關系捕獲,并關注數(shù)據(jù)的局部關系;(2)對長期依賴關系有更強的捕捉能力;(3)具有更高的并行性,能減少模型訓練時間;(4)具有更高的可擴展性和魯棒性;(5)結構比較簡單且參數(shù)較少;(6)能在一定程度上提高模型的可解釋性;(7)可以快速提取稀疏數(shù)據(jù)的重要特征及其依賴關系[17-19]。鑒于此,本文在GoogleScholar 和CNKI 中分別以關鍵詞“Attention Machanism”和“注意力機制”,并不限定時間范圍進行文獻檢索,通過閱讀標題和摘要獲取文獻研究主題后,篩選得到中文文獻26 篇,英文文獻61 篇。經(jīng)過精讀并利用追溯法,本文最終對49 篇有代表性的重點文獻進行系統(tǒng)梳理,其中英文文獻43 篇,中文文獻6 篇。通過文獻調研,并考慮到注意力機制本身可以不依賴特定框架而能單獨處理推薦任務,本文僅從注意力機制及其變種這一角度出發(fā),并基于一些有代表性的推薦場景,對現(xiàn)有研究中深度學習推薦模型如何利用注意力機制及其變種,來對不同的項目(Item)或特征施加不同的權重進行系統(tǒng)梳理、歸納和總結,分析其中的研究成果及存在的問題,并在此基礎上提出該領域中需要進一步研究的科學問題,以期為未來融合注意力機制的深度學習推薦模型研究提供一定的理論與實踐指導。
Mnih等[20]最初提出了注意力機制概念,并認為它通過計算輸入數(shù)據(jù)的權重,來突出某個關鍵輸入對輸出的影響,如圖1所示。圖1中,注意力機制網(wǎng)絡框架中的輸入包含5 個數(shù)據(jù)(x1,x2,x3,x4和x5),經(jīng)過端到端的訓練后,每個數(shù)據(jù)將會得到一個適當?shù)臋嘀兀ㄗ⒁饬Φ梅郑瑱嘀豾i的取值是基于訓練階段在以輸出為目標的前提下xi與輸出的相關性而決定的,這些權重組合在一起可形成一個概率分布向量。

圖1 注意力機制網(wǎng)絡框架Fig.1 Network of attention mechanism
注意力機制是一種通用的思想和技術,不依賴于任何模型,即注意力機制可以用于任何模型。根據(jù)注意力得分的計算方法不同,現(xiàn)有研究將注意力機制分為標準注意力機制(vanilla attention machanism,業(yè)界常說的注意力機制)、協(xié)同注意力機制(co-attention mechanism)、自注意力機制(self-attention mechanism)、層級注意力機制(hierarchical attention mechanism)和多頭注意力機制(multi-head attention mechanism)等若干變種。值得說明的是,以往研究中涉及到的商品、產(chǎn)品、服務、信息和項目等概念可統(tǒng)稱為物品。
標準注意力機制的基本思想是對每個輸入項分配一個權重,通過權重大小來表示模型對該輸入項關注程度。本文從點擊率預測、多媒體推薦、評分預測和群體與捆綁推薦等經(jīng)典推薦應用場景方面,來分析其如何利用標準注意力機制來提高推薦性能。
點擊率預測是指根據(jù)給定廣告或物品、用戶和大量的上下文情況等信息,對用戶點擊偏好進行預測。點擊率預測中利用注意力機制旨在解決不同交互特征應具有不同的重要性權重這一問題。為預測用戶對物品的興趣,因子分解機(factorization machines,F(xiàn)M)通過充分考慮用戶與物品之間的交互來實現(xiàn)這一目標。具體來說,因子分解機通過在不同的特征向量之間各自做一次乘積操作來進行特征之間的交互(即二個特征同時交互),但它對每個特征賦予相同的權重[21],即僅以線性方式組合特征,并沒有考慮特征之間的非線性關系。相較而言,神經(jīng)因子分解機(neural factorization machines,NFM)充分結合了因子分解機提取的二階線性特征和神經(jīng)網(wǎng)絡提取的高階非線性特征,但它對所有交互特征也一視同仁,并沒有考慮不同交互特征對結果的影響程度,因而損失了大量有價值的信息[22]。事實上,不同的交互特征對預測結果的影響程度并不相同。例如,在預測一位男性用戶是否會購買一款鍵盤的可能性時,“性別=男&購買歷史中包含鼠標”這一交互特征,很可能比“性別=男&用戶年齡=30”這一交互特征更為重要。鑒于此,為學習到二階特征交互的重要性,即學習特征之間的相互作用的權重,Xiao等[9]在神經(jīng)因子分解機的基礎上提出了注意力因子分解機(attention factorization machines,AFM),它通過將注意力機制引入雙線性交互池化操作中,進一步提升神經(jīng)因子分解機的表示能力和可解釋性。然而,AFM 對非零特征數(shù)量具有較高的平方級復雜度。
多媒體推薦是指視頻、圖像等方面的推薦。多媒體推薦中利用注意力機制旨在解決隱式反饋信息被忽略、跨站興趣捕獲等問題。Chen 等[1]指出現(xiàn)有大多數(shù)協(xié)同過濾系統(tǒng)忽略了用戶與多媒體內容交互的隱式反饋信息,并認為在用戶與多媒體內容的各種交互中,存在著組件級(component-level)、物品級(item-level)隱式反饋信息。其中,組件級隱式反饋是指用戶對物品中的不同組件(例如視頻中某一幀、圖像中某一區(qū)域)的偏好是未知的;物品級隱式反饋是指用戶對物品(視頻、圖像等)的偏好是未知的。鑒于此,作者在基于用戶的協(xié)同過濾(user-based CF)基礎上提出了注意力協(xié)同過濾模型(attentive collaborative filtering,ACF)以充分利用這些隱式反饋信息。其中,注意力協(xié)同過濾模型通過兩個注意力模塊來區(qū)分不同物品在聚合時的重要性權重:(1)組件級注意力模塊,用于為每個用戶從多媒體內容中捕捉最具信息量的特征,即用于表示每個用戶對每個物品的不同的組件的偏好是有區(qū)別的,最終得到的物品的內容向量是針對每個用戶的個性化內容向量;(2)物品級注意力模塊,用于選擇最具代表性的物品來描述用戶,即最終得到用戶特征向量,以用于進行評分預測。簡單來說,注意力協(xié)同過濾模型通過注意力機制將組件級和物品級隱式反饋信息聚合在一起,得到多媒體內容的表示。通過對組件應用注意力機制,ACF模型能更好地學習多媒體內容上用戶的偏好,進而使得推薦更加個性化。盡管ACF模型可以無縫集成到具有隱式反饋的經(jīng)典CF 模型中,但它未考慮高階組件級注意力機制。類似地,Yan 等[23]認為現(xiàn)有的網(wǎng)絡視頻系統(tǒng)根據(jù)用戶在自己網(wǎng)站上的觀看歷史向用戶推薦視頻。然而,由于許多用戶在多個網(wǎng)站上觀看視頻,這種方法無法捕獲這些用戶在不同網(wǎng)站上的興趣。為捕獲跨站點及特定站點的用戶興趣,作者研究了基于大規(guī)模真實數(shù)據(jù)集的多站點用戶瀏覽行為,并發(fā)現(xiàn)用戶興趣由跨站點一致性部分(cross-site consistent part)和具有不同重要性的站點特定部分(site-specific part)組成,繼而在此基礎上提出了深度注意力概率因式分解模型(deep attentive probabilistic factorization,DeepAPF),以利用深度學習方法來逼近這種復雜的用戶視頻交互。具體來說,該模型通過注意力網(wǎng)絡學習非均勻重要性權重,來準確捕捉跨站點和特定站點的用戶興趣,還能學習復雜的用戶-視頻交互。然而,該模型需要建模跟平臺有關的獨特偏好。
評分預測是指根據(jù)用戶和物品的歷史記錄來預測用戶對物品的評分。評分預測中利用注意力機制旨在準確地捕獲用戶對不同物品各個方面(aspect)的關注。現(xiàn)實中,用戶在寫評論的時候,更傾向于在他們關注的特征上去評論,這樣可以提取出用戶的偏好和產(chǎn)品特征。Cheng等[24]認為不同的用戶對不同物品各個方面的關注程度是不一樣的,例如,對于蘋果手機,用戶可能更關注高像素、低耗量等,而對于廉價手機,用戶可能更關注通訊質量等,然而現(xiàn)有的方法都沒有考慮到這一情形。鑒于此,為學習評論中用戶的偏好和物品的特征,作者提出了基于方面級(aspect-level)的自適應注意力評分預測模型(adaptive aspect attention-based neural collaborative filtering model,A3NCF),以準確捕獲用戶在同一方面對不同物品的偏好的權重。簡單來說,A3NCF 模型參考了AFM 模型,并引入注意力機制來捕獲用戶對目標物品各方面的注意力,即增強區(qū)分不同方面的重要程度的能力。然而,該模型并未對比較過程中所采用的物品哪些方面作進一步說明。
群體推薦(group recommendation)主要是指為群體用戶推薦物品(例如向同事群推薦一個餐館),它不僅需要聚合群體成員的偏好,還需要正確理解群體決策過程,因為在群體決策過程中,用戶傾向于追隨一小部分用戶的決策,其中這一小部分用戶就是傳說中的意見領袖或領域專家。群體推薦中利用注意力機制旨在對群體中的不同成員進行權重分配,權重越高表明用戶越重要,因此他們對于群體的最終決策越重要。Vinh等[25]提出使用注意力機制來捕獲群體中每個用戶的影響權重,然后讓模型能基于其成員的加權偏好來向群體推薦物品。值得說明的是,由于注意力機制可以動態(tài)調整群體中每個用戶的權重,因而它也提供了一個新的靈活的方法來對復雜的群體決策過程進行建模。該方法沒有將諸如社交關系、文本信息(例如事件描述)或時間信息等輔助信息納入上下文中,來學習注意力模型。
捆綁推薦(bundle recommendation)主要是指對用戶推薦商品集合。捆綁推薦利用注意機制旨在學習一捆(bundle)的表示。Chen 等[26]認為大多研究主要關注給用戶推薦單個物品,然而在很多真實應用場景中,平臺需要給用戶展示物品集合,例如營銷策略中會將多個物品打包在一起銷售。為此,作者提出了深度注意力多任務模型(deep attentive multi-task,DAM)以對用戶和物品的集合進行建模,該模型具有兩個特殊設計:(1)因式分解注意力網(wǎng)絡用于對商品的嵌入進行聚合,進而得到捆綁表示;(2)通過多任務處理方式來對用戶捆綁交互和用戶商品交互聯(lián)合建模,避免了用戶捆綁交互的不足。實驗結果表明,其中的注意力機制可以有效地為每個用戶學習一個個性化的權重。然而,該方法沒有考慮物品共現(xiàn)信息(有些產(chǎn)品是存在互補關系的,如你買網(wǎng)球拍,一般會買個網(wǎng)球)、時間因素(用戶的興趣很容易隨時間變化)。
協(xié)同注意力機制的基本思想是同時對多個輸入序列進行操作,并共同學習它們的注意力權重,以捕獲這些輸入之間的交互[27]。它能更好地捕捉不同屬性(特征)之間的交互關系。本文從可解釋性推薦、知識增強推薦和評論文本推薦等經(jīng)典推薦應用場景方面,來分析其如何利用協(xié)同注意力機制來提高推薦性能。
可解釋性推薦中利用協(xié)同注意力機制旨在遴選出對推薦與解釋生成任務來說都很重要的點評及概念,作為兩個任務共有的知識。Chen 等[28]認為在推薦的同時提供文本解釋可有效獲得用戶的信賴,增加推薦系統(tǒng)的說服力與滿意度等,而解決這個問題的關鍵是要對用戶與物品之間的深層次交互進行顯式、可解釋的建模,并將建模結果作為約束直接影響解釋生成和推薦結果。鑒于此,受認知科學相關啟發(fā),作者提出了一種基于協(xié)同注意力機制的多任務學習模型(co-attentive multi-task learning,CAML),其中的層級多指針協(xié)同注意力機制選擇器(multi-pointer co-attention selector)將僅對重要信息進行保留。具體來說,每個指針(pointer)對應兩層協(xié)同注意力機制網(wǎng)絡,分別選擇一個用戶或商品概念。以選擇用戶概念為例,第一層協(xié)同注意力機制網(wǎng)絡利用點評編碼計算用戶點評在商品歷史點評中的相關程度。在篩選出用戶最重要的點評后,點評將被展開到概念(concept)這一層次,接著利用第二層協(xié)同注意力機制網(wǎng)絡計算每個概念的作用,選擇點評中最為重要的概念作為對用戶點評信息的補充。值得說明的是,CAML模型沒有解決推薦系統(tǒng)的冷啟動問題。
知識增強推薦中利用協(xié)同注意力機制旨在更好地捕捉不同屬性(特征)之間的交互關系。Yang 等[29]認為現(xiàn)有大多數(shù)基于注意力機制的推薦模型在生成用戶的表示時應用了粗粒度的注意力機制,少數(shù)改進的模型盡管在注意力模塊中加入了物品的屬性(特征)信息,即融入物品的相關知識,但仍然僅在用戶表示這一端應用了注意力機制。鑒于此,作者提出了一種在用戶表示端與物品表示端協(xié)同應用(物品)屬性級注意力機制的深度學習推薦模型,稱為屬性級協(xié)同注意力模型(attributelevel co-attention model,ACAM),其主要特征為:(1)物品與用戶的初始表示基于知識圖譜中物品屬性的表示(向量),而非單一的隨機初始化向量;(2)內建協(xié)同注意力機制模塊,通過捕獲不同屬性之間的關聯(lián)來增強用戶和物品的表示,這是考慮到不同的物品屬性(特征)之間可能存在相關性。例如,電影屬性中,演員史泰龍與動作題材高度相關,而演員鞏俐與導演張藝謀也很相關。因此,利用屬性相關性來增強用戶或物品表示,能更加精確地揭示目標用戶和候選物品之間的潛在關系,從而提升推薦性能。簡單來說,ACAM模型首先用細粒度的屬性嵌入來表示用戶和物品,然后通過屬性級的協(xié)同注意力模塊同時增強用戶表示和物品表示。但是,該模型沒有考慮用戶與物品之間的高階非線性關系。
評論文本推薦中利用協(xié)同注意力機制旨在從用戶評論以及與商品相關的評論中抽取出重要的評論信息,以學習用戶與商品的表示。Tay等[3]認為在預測用戶對商品的評分時,并不是用戶寫過的所有評論以及商品的所有評論都同等重要,而應通過兩者的交互來篩選出最重要的評論,提取最有用的信息,進而幫助更好地進行評分預測和推薦。為找到更加有用的評論,即對評論加上一個重要性權重,作者提出了多指針協(xié)同注意力網(wǎng)絡(multi-pointer co-attention network,MPCN),該網(wǎng)絡能夠將用戶商品交互的多個視圖結合起來。該網(wǎng)絡能從用戶和商品評論中提取重要的評論,然后逐字逐句地匹配它們,這不僅可以將最有用的評論用于預測,還可以進行更深入的單詞級交互。具體來說,該網(wǎng)絡通過協(xié)同注意力機制在評論級(review-level)和字符級(word-level)上對用戶評論和與商品相關的評論進行選擇,選擇最重要的一條或若干條評論來對用戶和當前商品進行表示。然而,該網(wǎng)絡僅僅局限在淺層線性特征層面,而且用戶特征和商品的高級抽象特征未被充分挖掘。
自注意力機制的基本思想是利用輸入項之間相互關系,自行決定分配輸入項權重大小,即對于每個輸入項所分配的權重大小取決于輸入項間的相互作用[30]。本文從可解釋性推薦、序列推薦和用戶行為推薦等經(jīng)典推薦應用場景方面,來分析其如何利用自注意力機制來提高推薦性能。
可解釋性推薦中利用自注意力機制旨在為用戶的交互商品分配注意力權重。Yu 等[31]提出了一個名為NAIRS的神經(jīng)注意力可解釋推薦系統(tǒng),其中的自注意力機制可以區(qū)分不同交互商品對用戶概要(user profile)的重要性,即可以根據(jù)與用戶偏好相關的意圖重要性來計算用戶概要中歷史商品的注意力得分。通過學習到的注意力得分,NAIRS可以根據(jù)用戶的歷史偏好為他們提供高質量的個性化推薦。總結來說,NAIRS具有兩方面特征:(1)通過自注意機制來學習用戶的表示形式,而不是針對特定商品計算注意力得分;(2)在實踐中,可以基于預先計算的用戶表示來實時推薦商品。用戶的興趣是短暫的,并且在長時間和短時間內都會發(fā)生變化,但NAIRS并沒有考慮在用戶的交互商品中捕獲長期和短期興趣。
序列推薦是指給用戶推薦在不久的將來可能會發(fā)生交互行為的商品。序列推薦中利用自注意力機制旨在從用戶歷史行為中推斷商品之間的關系。Lv 等[32]認為現(xiàn)有的序列推薦中存在兩個問題:(1)用戶在一個會話(session)中可能存在多個興趣傾向;(2)用戶長期偏好可能無法與當前會話興趣有效融合。事實上,長期行為多樣且復雜,因此與短期行為密切相關的行為應保留融合。鑒于此,作者提出了序列深度匹配模型(sequential deep matching,SDM),它能融合用戶的長期與短期行為,在長期行為中挖掘用戶對物品屬性的偏好(例如類目、品牌、店鋪等),在短期行為中結合自注意力機制過濾掉會話內部的一些誤點擊行為(casual click),并挖掘用戶在會話內的多方面興趣,最后構造出自適應的融合長短期興趣的用戶表示。然而,SDM 模型沒有考慮多個交織興趣的影響,因為用戶通常在一個會話中同時具有多個興趣,并且這些興趣可能是交織的。類似地,Zhang 等[33]提出了一個序列感知推薦模型AttRec,該模型利用自注意力機制來為用戶短期行為模式的依賴關系和重要性建模,同時該模型也使用度量學習(metric learning)保留了用戶的長久興趣。具體來說,通過自注意力機制,模型可以在用戶交互歷史中評估每個物品的相關性權重,從而更好地學習用戶短期興趣的表示。然而,AttRec 模型沒有充分考慮用戶交互行為的序列,因為用戶在不同時間交互的項目對用戶興趣的反映具有不同的意義。
Zhang等[34]認為現(xiàn)有的序列推薦通常只考慮商品之間的轉換模式,而忽略了商品特征之間的轉換模式,并指出利用商品層次的序列不能揭示完整序列模式的特性,顯式和隱式特征層次的序列有助于提取完整序列的模式。為此,作者提出了特征層次的深層自注意力網(wǎng)絡(feature-level deeper self-attention network,F(xiàn)DSA),該網(wǎng)絡首先通過標準注意力機制,利用不同權重將多種異質商品特征集成為特征序列,然后基于商品層面序列和特征層面序列,分別利用獨立的自注意力模塊對商品轉換模式和特征轉換模式進行建模,接下來,將這兩個模塊的輸出進行集成,得到一個全連接層,然后用于推薦下一個商品。然而,F(xiàn)DSA網(wǎng)絡沒有考慮如何直接地進行特征間的信息交互。此外,Zhang 等[35-36]在序列推薦中通過自注意力機制來估計用戶交互歷史中每個商品的權重,進而學習到用戶短期興趣的更準確表示。
用戶行為推薦中利用自注意力機制旨在對行為間的互相影響進行建模。Zhou等[37]認為在電商領域中,一個用戶可能瀏覽、購買、收藏商品,領取、使用優(yōu)惠券、點擊廣告、搜索關鍵詞、寫評論或者觀看商家提供的商品介紹視頻等,這些不同的行為為人們更全面地理解一個用戶提供了不同的視角。然而,面對用戶如此異構、多樣化的行為,現(xiàn)有推薦模型很難做到更精確的推薦。在這樣的背景下,作者提出了一個通用的基于自注意力機制的用戶異構行為框架ATRank,以試圖將所有類型的行為投射到多個潛在的語義空間中,并通過自注意力機制對行為產(chǎn)生影響。其中,框架利用自注意力機制來對行為間的互相影響進行建模。具體來說,其中的自注意力機制用于將用戶的每一個行為從一個客觀的表示轉換成一個用戶記憶中的表示。客觀的表示是指,例如用戶A、B做了同樣一件事,這個行為本身的表示可能是相同的,但這個行為在A、B的記憶中其強度、清晰度可能是完全不一樣的,因為A、B 的其他行為不同。然而,ATRank框架仍然需要領域專家的特征工程和架構工程。
層級注意力機制的基本思想是在具有自然層次化結構的輸入序列的不同層次結構上應用注意力機制,使得低層次抽象的特征表示作為高層次抽象的輸入[38-39]。本文從長短期序列推薦和評論文本推薦等經(jīng)典推薦應用場景方面,來分析其如何利用層級注意力機制來提高推薦性能。
長短期(long and short-term)序列推薦中利用層級注意力機制旨在自動為用戶分配商品的不同影響(權重)以捕捉動態(tài)特性,并通過層次結構來結合用戶的長期和短期偏好。Ying 等[38]認為用戶的長期興趣是隨時間而變化的,不同的商品對下一次購買行為的影響是不一樣的,且對于不同用戶,相同商品對下一次購買也有不同的影響。鑒于此,作者提出了序列層級注意力網(wǎng)絡(sequential hierarchical attention network,SHAN)來解決下一個商品推薦問題。其中,作者首先將用戶和商品嵌入低維密集空間,然后利用注意力機制計算用戶長期集合中商品的不同權值,并用權值對商品向量進行壓縮以生成用戶長期表示。之后,作者使用另一個注意力機制來耦合用戶的序列行為和長期表示,以生成用戶的高級混合表示。用戶嵌入向量作為兩個注意力網(wǎng)絡中的上下文信息,以計算不同用戶的不同權重。SHAN網(wǎng)絡假定每個用戶對商品的偏好分布是扁平的,然而,這一假設忽略了用戶意圖和用戶偏好之間的層次差別,導致其在描述特定意圖偏好方面能力有限。
評論文本推薦中利用層級注意力機制旨在單詞級和語句級上識別評論文本中最重要的部分。Xing 等[40]認為現(xiàn)有研究結合了用戶和產(chǎn)品信息來生成評論表示,然而這些方法只考慮了單詞級別的評論文本信息,沒有考慮語義級別的評論文本信息。鑒于此,作者提出了一種基于用戶和產(chǎn)品評論的層級注意力模型(HAUP)以從用戶評分和用戶評論文本中聯(lián)合學習用戶和物品信息。該模型首先構造一個層級雙向門控循環(huán)單元(bidirectional gated recurrent unit,Bi-GRU),其中包括單詞和句子級別的評論信息。Bi-GRU結構可以處理評論文本中的長期依賴關系。然后,在構建評論文本表示時,在單詞和句子級別應用注意力機制以識別最重要的內容。最后,將生成的潛在用戶和產(chǎn)品表示合并到相同的向量空間中以估計評分。HAUP 模型沒有考慮到評論集合中單條評論的有效性。
多頭注意力機制的基本思想是并行地運行多個注意力層(“多頭”),然后將它們的輸出拼接起來,再對結果進行線性變換[30]。本文從跨媒體關鍵詞預測和點擊率預測等經(jīng)典推薦應用場景方面,來分析其如何利用多頭注意力機制來提高推薦性能。
跨媒體關鍵詞預測中利用多頭注意力機制旨在捕獲復雜的跨媒體交互信息。Wang等[41]認為當前大多數(shù)工作都集中在文本建模上,忽略了相關的圖像特征。具體來說,由于社交媒體的非正式風格,跨媒體關鍵詞預測帶來了獨特的差異,主要體現(xiàn)在兩個方面:(1)文本圖像關系相當復雜;(2)社交媒體圖像通常呈現(xiàn)出更多樣化的分布,并且包含光學字符的概率要高得多,因此為有效處理帶來了障礙。鑒于此,作者探討了基于文本和圖像聯(lián)合建模的多媒體關鍵詞預測模型M3H-Att(multimodality multi-head attention)。首先為了對齊社交媒體中的文本和圖像特征,作者設計了一個多模態(tài)、多頭注意力框架去捕獲復雜的跨媒體交互信息,接著以字符特征和圖像屬性的形式來連接圖像、文字這兩種不同的模態(tài),以彌補它們之間的語義鴻溝。實驗結果表明,作者提出的模型優(yōu)于傳統(tǒng)的基于協(xié)同注意力機制的技術。M3H-Att模型沒有考慮圖像中存在大量的無關噪聲像素,沒有考慮從現(xiàn)有的海量圖文數(shù)據(jù)上學習模態(tài)之間的信息轉化關系。
點擊率預測中利用多頭注意力機制旨在對輸入特征的不同順序的特征組合進行建模。Song 等[42]認為點擊率預測非常具有挑戰(zhàn)性,主要體現(xiàn)在兩個方面:(1)輸入特征(如用戶id、用戶年齡、商品id 和商品類別等)通常是稀疏高維的;(2)有效的預測通常依賴于高階組合特征(cross features,又稱交互特征),由領域專家手工處理非常耗時,很難窮舉。因此,致力于尋找稀疏高維原始特征的低維表示及其有意義的組合將是點擊率預測的研究重點。鑒于此,作者提出了一種稱為AutoInt的模型來自動學習輸入特征的高階特征交互。具體來說,作者將數(shù)值和分類特征都映射到相同的低維空間中。然后,提出了帶有殘差連接的多頭注意力機制,以對低維空間中的特征相互作用進行顯式建模。最后,利用多頭注意力機制的不同層來對輸入特征的不同順序的特征組合進行建模。AutoInt模型未能充分挖掘有意義的高階交叉特征。其中的組合只是找到了關系相近的特征,而關系相近的特征進行組合并不一定是合適的方式,也就是說多頭注意力機制能做到有意義的特征組合,但卻不能說明關系不相近的特征的意義就不大。
類似地,Xiao等[10]認為用戶在一個時間點的興趣是多樣的,而潛在的主要興趣是通過行為來表示的,潛在主要興趣的轉變會導致最終的行為變化。因此,建模和跟蹤潛在的多重興趣將是有益的。鑒于此,對于點擊率預測任務,作者提出了深度多興趣網(wǎng)絡模型(deep multi-interest network,DMIN)來捕獲用戶潛在的多興趣。具體來說,DMIN模型由兩部分組成:(1)行為細化層,使用多頭注意力機制對用戶歷史行為進行提煉,即捕捉更好的用戶歷史商品表示;(2)多興趣提取層,實現(xiàn)用戶多興趣的抽取。然而,DMIN模型沒有考慮到一個用戶的興趣變化可以通過其他用戶的興趣變化來預測,更具體地說,相似的用戶會朝著相似的方向改變他們的興趣。
簡單來說,注意力機制就是對每個輸入項分配一個權重。其主要目標是讓神經(jīng)網(wǎng)絡在執(zhí)行預測任務時可以多關注輸入中相關部分,少關注不相關部分。表1對文中所述注意力機制在邏輯思路、優(yōu)勢、局限性和適用場景這四個方面進行了詳細比較。

表1 注意力機制詳細比較Table 1 Detailed comparison of attention mechanism
深度學習推薦系統(tǒng)是深度學習技術在商業(yè)社會的一項成功應用,它通過從海量數(shù)據(jù)中篩選出對用戶最有價值的數(shù)據(jù),從而讓用戶更高效地接觸對自己有意義的內容,進而提高整個商業(yè)流程的效率[43-44]。而注意力機制能幫助推薦模型快速抓住最具信息量的特征,推薦最具代表性的物品,同時一定程度上增強模型的可解釋性等。鑒于此,本文針對一些有代表性的推薦場景,探討研究了深度學習推薦模型如何利用注意力機制及其變種來對不同的項目或特征施加不同的權重以提升推薦效率,為下一步的深入研究打下良好基礎。注意力機制或許是未來深度學習的核心要素,但目前融合注意力機制的深度學習推薦模型在推薦系統(tǒng)上的應用還處于比較初級的階段,尤其是技術上的發(fā)展較慢于計算機視覺和自然語言處理領域等。展望未來,為進一步激勵將融合注意力機制的深度學習用于推薦系統(tǒng),本文認為注意力機制技術在推薦多樣性、推薦可解釋性和多種輔助信息(side information)融合等方面仍存在一些開放性問題值得探討。
(1)有效實現(xiàn)推薦多樣性
推薦結果多樣性是指推薦模型為每個目標用戶推薦類別多樣化的物品。推薦結果多樣性可以被視為雙目標優(yōu)化問題,即最大化推薦列表的整體相關性,并盡量減少列表中物品之間的相似性。現(xiàn)實應用中,推薦結果多樣性不僅能向用戶推薦彼此相似度低的物品,還能開闊用戶認知視野、激發(fā)用戶潛在興趣等,甚至能使用戶更好地發(fā)現(xiàn)具有“新穎性”的物品,進而增加冷門物品被推薦的機會(避免長尾現(xiàn)象)。總結來說,推薦結果多樣性對優(yōu)化點擊轉化效率、用戶體驗、瀏覽深度、停留時長、回訪、留存等目標至關重要。現(xiàn)有研究中,提升推薦結果多樣性的思路主要有三種:①召回階段策略。可以融合不同推薦召回算法的推薦結果,即多路召回。②精排階段策略。精排模型中加入用戶、物品和環(huán)境特征,實現(xiàn)在不同的維度的多樣性。通常來說,特征越豐富個性化越強,同時多樣性越強。③重排序階段策略。在推薦流程前面的召回、過濾、粗排和精排階段的基礎上,進一步找到商品集中相關性和多樣性最大的子集,從而作為推薦給用戶的商品集,工業(yè)界的代表性方法有:最大邊界相關算法(maximal marginal relevance,MMR)[45];行列式點過程(determinantal point process,DPP)[46]、個性化重排序模型(personalized re-ranking model,PRM)等,這類方法都是基于貪心的策略,容易陷入局部最優(yōu)解,且都需要額外的參數(shù)來平衡多樣性與準確率。盡管現(xiàn)有的推薦結果多樣性方法已取得不錯的效果,但其仍然存在固有的局限性:①沒有考慮領域級別和用戶級別的多樣性分布差異[47]。首先,即使用戶的興趣比較固定(多樣性較低),這些方法仍然會給用戶推薦一個多樣化的結果。其次,現(xiàn)有方法的推薦策略不會隨著領域的不同而做出改變。②假設用戶意圖是靜態(tài)的,并且需要預先告知具體的用戶意圖[48]。因此,在保證推薦準確率的前提下,如何從用戶多樣性偏好角度,利用注意力機制來挖掘反映在用戶行為序列中的多個潛在用戶意圖,然后為用戶意圖生成一個準確且多樣性的推薦列表,將是推薦模型未來研究的熱點和新的發(fā)展方向。
(2)幫助促進推薦可解釋性
推薦可解釋性指的是推薦模型在為用戶提供推薦的同時,也提供直接的推薦理由。現(xiàn)實應用中,給用戶提供有價值的推薦解釋往往是很重要的,這不僅能夠加深用戶對產(chǎn)品的理解和信賴,提升用戶體驗和用戶選擇推薦物品的概率,還能提升模型透明度(模型為什么會做出如此決策等)和用戶對模型的信任和接受程度等[49]。盡管現(xiàn)在的推薦模型具備一定程度的可解釋性,但仍存在以下兩個問題:①給出的解釋通常是以相關歷史交互物品的形式來產(chǎn)生,其中的相似性是通過在系統(tǒng)內定義每個物品的潛在權重來獲得,這讓報告為相似的兩個物品可能被終端用戶認為不是這樣的,并且與提供解釋的最初動機相矛盾;②通常僅能捕獲部分用戶偏好和物品屬性信息,無法識別出與被推薦物品密切相關的用戶特征,這將導致推理和準確性有限。事實上,缺乏合理的解釋已成為模型在現(xiàn)實推薦任務中進一步發(fā)展和應用的主要障礙之一[28]。因此,如何利用注意力機制從生成策略,密度控制和維度優(yōu)化等方面來動態(tài)識別最能代表不同用戶的特征,以便在產(chǎn)生相關的推薦物品的同時,提供被證明是合理的解釋,將是一個值得探索的方向之一。
(3)快速融合多種輔助信息
輔助信息中所包含的信息量可以有效彌補用戶歷史交互信息的稀疏或缺失,因此同時利用這些信息將能更好地發(fā)現(xiàn)用戶的個性化偏好,從而給推薦效率帶來顯著提升[50]。在實際應用中,除了大量的用戶與物品的交互歷史數(shù)據(jù)之外,還有豐富的用戶畫像(例如年齡、性別、興趣偏好等)、物品屬性(例如物品類別、描述、價格等)、上下文信息(例如當前會話信息、位置信息等)和知識圖譜[51]等輔助信息,它們往往具有多模態(tài)、數(shù)據(jù)異構、大規(guī)模、數(shù)據(jù)稀疏和分布不均勻等復雜特征。很顯然,要想提高推薦的精準度或增強推薦算法的挖掘能力,就必須要求推薦模型應盡可能多地融合輔助信息,并具有很強的擴展性。然而現(xiàn)有大多數(shù)推薦模型對輔助信息缺乏深入理解,主要體現(xiàn)在以下三個方面:①輔助信息本身存在較為復雜的多源異構特征;②沒有考慮任何不同類型和任何數(shù)量的屬性的組合;③沒有計算屬性間的高階交叉特征。因此,如何利用注意力機制實現(xiàn)早期融合各部分信息,使各部分相互補充、相互啟發(fā),從而將輔助信息統(tǒng)一嵌入到物品的潛在語義空間中,進而形成語義豐富的更精確的物品表示,最終增強模型的擴展性并提高推薦性能,將是未來學術界的探索方向和研究重點。