摘要:?jiǎn)螌幽臧l(fā)表的文章使用了單層解決機(jī)器翻譯中不同長(zhǎng)度的源語(yǔ)言對(duì)齊問(wèn)題。使用的基本思想是目標(biāo)語(yǔ)言端的詞往往只與源語(yǔ)言端部分詞相關(guān)。其中計(jì)算上下文環(huán)境與源語(yǔ)言詞語(yǔ)的相關(guān)得分,是根據(jù)語(yǔ)言特性設(shè)計(jì)的一個(gè)對(duì)齊模型,感興趣的朋友可以深入了解一下。
1. 前言
2017 年 KDD,Sigir 以及 Recsys 會(huì)議被接收的論文早已公示,本文對(duì)這些會(huì)議中 Attention Model 相關(guān)的 10 篇論文進(jìn)行了整理,主要包括 Attention Model 的變型與應(yīng)用。其中文中部分內(nèi)容不是原創(chuàng),有爭(zhēng)議的請(qǐng)聯(lián)系我。
2. 寫(xiě)作動(dòng)機(jī)
Attention Model 在 Image Caption、Machine Translation、Speech Recognition 等領(lǐng)域上有著不錯(cuò)的結(jié)果。那么什么是 Attention Model 呢?
舉個(gè)例子,給下面這張圖片加字幕(Image Caption):一只黃色的小貓帶著一個(gè)鹿角帽子趴在沙發(fā)上??梢园l(fā)現(xiàn)在翻譯的過(guò)程中我們的注意力由小貓到鹿角帽子再到沙發(fā)(小貓→鹿角帽子→沙發(fā))。其實(shí)在很多和時(shí)序有關(guān)的事情上,人類(lèi)的注意力都不是一成不變的,隨著事情(時(shí)間)發(fā)展,我們的注意力不斷改變。
因此,從理論上來(lái)講在使用深度學(xué)習(xí)來(lái)訓(xùn)練模型時(shí),引入注意力機(jī)制(Attention Model)是很有幫助的。本文根據(jù) 2017 年三個(gè)頂會(huì)的 10 篇關(guān)于 Attention Model 的文章,給大家介紹一下 Attention Model 的發(fā)展和應(yīng)用。
這篇文章的預(yù)備知識(shí)是 Decoder-Encoder 模型。本文主要做一個(gè)介紹,基本不會(huì)有公式推導(dǎo),旨在讓大家對(duì) Attention Model 的變型和應(yīng)用有一個(gè)大概的印象。
3. 單層Attention Model
2014 年發(fā)表的文章 Neural Machine Translation by Jointly Learning to Align and Translate 使用了單層 Attention Model 解決機(jī)器翻譯中不同長(zhǎng)度的源語(yǔ)言對(duì)齊問(wèn)題。使用 Attention Model 的基本思想是目標(biāo)語(yǔ)言端的詞往往只與源語(yǔ)言端部分詞相關(guān)。而這個(gè)相關(guān)度通常用概率的形式表示。
這個(gè)過(guò)程基本為:首先計(jì)算當(dāng)前上下文的環(huán)境與每個(gè)源語(yǔ)言詞語(yǔ)的相關(guān)度(一個(gè)得分),然后使用 softmax 公式,將這個(gè)相關(guān)度轉(zhuǎn)化為概率的形式,最后用得到的概率乘以對(duì)應(yīng)源語(yǔ)言端詞的隱含表示作為該詞對(duì)預(yù)測(cè)目標(biāo)的貢獻(xiàn),將所有源語(yǔ)言端的詞貢獻(xiàn)加起來(lái)作為預(yù)測(cè)下一個(gè)詞的部分輸入。
其中計(jì)算上下文環(huán)境與源語(yǔ)言詞語(yǔ)的相關(guān)得分,是根據(jù)語(yǔ)言特性設(shè)計(jì)的一個(gè)對(duì)齊模型(Alignment Model),感興趣的朋友可以深入了解一下。
通常情況下,單層 Attention Model 的不同之處主要在于相關(guān)分?jǐn)?shù)計(jì)算方式的不同,接下來(lái)我們介紹三種通用的計(jì)算方式。同時(shí)在后文中,不再重復(fù)敘述 Attention Model 中根據(jù)相關(guān)分?jǐn)?shù)計(jì)算輸出向量的過(guò)程。
論文 Dipole: Diagnosis Prediction in Healthcare via Attention-based Bidirectional Recurrent Neural Networks,介紹了單個(gè) Attention Model 在醫(yī)療診斷預(yù)測(cè)中的應(yīng)用。
這個(gè)模型的輸入是用戶(hù)前 t 次的醫(yī)療代碼(每次的醫(yī)療代碼用 one-hot 的形式表示),輸出是用戶(hù)下一時(shí)刻的醫(yī)療診斷類(lèi)型。使用 Attention Model 的思想是:用戶(hù)下一時(shí)刻被診斷的疾病類(lèi)型可能更與前面某一次或某幾次的醫(yī)療診斷相關(guān)。論文模型框架如下。
本篇論文和前一篇論文 Attention 模型的差別主要在于每個(gè)源輸入單位與目標(biāo)輸出的相關(guān)分?jǐn)?shù)計(jì)算方式。本文介紹了三種通用的得分計(jì)算公式(見(jiàn)下圖右上角):主要有和位置相關(guān)的計(jì)算方式(location-based)、與指定目標(biāo)相關(guān)并通過(guò)點(diǎn)積計(jì)算得到的計(jì)算方式(General)以及與指定目標(biāo)相關(guān)并通過(guò)拼接計(jì)算得到的計(jì)算方式(Concatenation-based)。
論文 Dynamic Attention Deep Model for Article Recommendation by Learning Human Editors’ Demonstration 介紹了單個(gè) Attention Model 在新聞推薦/篩選領(lǐng)域的應(yīng)用。該模型的輸入是一個(gè)文章的文本和種類(lèi)信息,輸出是0/1,表示輸入的新聞是否被選中(二分類(lèi)問(wèn)題)。
下圖展示的是該模型的 Attention Model 部分,未展示的部分是處理輸入數(shù)據(jù)的過(guò)程,該過(guò)程是通過(guò) CNN 等模型將文本和種類(lèi)特征處理成固定維度的隱含向量表示。
論文的整體思路為:根據(jù)新聞的文本信息和種類(lèi)信息,考慮新聞的時(shí)效性和時(shí)間特征。它主要是基于兩個(gè)假設(shè):第一,用戶(hù)在不同的日子可能會(huì)有不同的喜好,比如用戶(hù)在周一更喜歡金融類(lèi)的新聞,而在周五可能更喜歡娛樂(lè)相關(guān)的論文;第二,不同類(lèi)型的新聞時(shí)效性也不同,金融相關(guān)的新聞時(shí)效性短,而娛樂(lè)類(lèi)的新聞時(shí)效性長(zhǎng)。
該論文中 Attention Model 的作用是,在第 t 時(shí)刻,給定新聞的文本和種類(lèi)信息,不僅僅考慮第 t 時(shí)刻的模型(假設(shè)考慮一周中不同日子的影響,則有 7 個(gè)模型),我們也考慮該新聞在其他時(shí)刻的影響,然后根據(jù)新聞在各個(gè)時(shí)刻下的影響度隨著時(shí)間的變化,綜合考慮該新聞被選擇的概率。 但是這個(gè)模型人工干涉的部分太多,隨著假設(shè)的增加,模型會(huì)越來(lái)越復(fù)雜。
論文 Enhancing Recurrent Neural Networks with Positional Attention for Question Answering 將 Attention Model 變形,然后應(yīng)用于問(wèn)答系統(tǒng)(Question Answer)。該模型輸入為“問(wèn)題”句子中所有詞語(yǔ)的詞向量,輸出“回答”句子中所有詞語(yǔ)的詞向量。
該論文使用 Attention Model 的假設(shè)為:如果“問(wèn)題”句子中某個(gè)單詞出現(xiàn)在“回答”句子中,則在“回答”句子中該單詞周?chē)脑~語(yǔ)影響度更大,且該影響度隨距離變化呈高斯分布。
通過(guò)擬合高斯分布得到所有輸入詞的影響概率,然后將影響概率作為權(quán)重,和輸入向量加權(quán)求和得到基于位置的影響向量,最后將得到的影響向量作為指定向量,計(jì)算所有輸入單詞的隱含向量與該指定向量的相關(guān)度,通過(guò) Attention Model 計(jì)算得到的向量作為輸入幫助完成預(yù)測(cè)。
這篇論文中,相關(guān)度的計(jì)算并沒(méi)有使用上面提到的三種方法,而是根據(jù)問(wèn)題的實(shí)際情況以及模型的前提假設(shè)進(jìn)行變型。
論文 Video Question Answering via Attribute-Augmented Attention Network Learning 使用基于屬性擴(kuò)展的 Attention Model 來(lái)解決以給定視頻作為背景材料的問(wèn)題。
本文的基本思路是根據(jù)問(wèn)題發(fā)現(xiàn)哪一部分視頻和這個(gè)問(wèn)題相關(guān),從而能生成更加相關(guān)答案。本文的輸入包括,多幀視頻信息(視頻每一幀通過(guò) CNN 等模型得到固定維度的隱含向量表示)以及處理問(wèn)題(文本信息)得到隱含向量表示,輸出為回答中的多個(gè)單詞。
其實(shí)這篇論文只簡(jiǎn)單地將每一幀視頻處理成一個(gè)固定向量,且 multi-modal 部分的求和取平均有些過(guò)于簡(jiǎn)單。如果能更較精確地分析每一幀畫(huà)面相關(guān)的重點(diǎn)信息,結(jié)果應(yīng)該會(huì)更加優(yōu)化。
而接下來(lái),我們要介紹多注意力機(jī)制(Hierarchical Attention 以及 Dual Attention)是如何更加較精確地完成任務(wù)。
4. 多注意力機(jī)制(Hierarchical Attention & Dual Attention)
論文 A Context-aware Attention Network for Interactive Interactive Question Answering 介紹了如何用 Hierarchical Attention Model 完成 QA 任務(wù)。
該任務(wù)的輸入是:給定文檔(多個(gè)句子,每個(gè)句子由多個(gè)單詞組成)的所有詞向量,以及給定問(wèn)題的隱含向量表示;輸出是:回答句子中的一個(gè)個(gè)單詞。
本文 Attention Model 部分的基本思路為:首先在給定的文檔集中的每一個(gè)句子中,計(jì)算該句子中每一個(gè)單詞和給定問(wèn)題的相關(guān)度,通過(guò)這一層的 Attention Model 計(jì)算得到的向量作為每個(gè)句子的隱含向量表示;然后在給定的文檔集中,計(jì)算每一個(gè)句子和給定問(wèn)題的相關(guān)度,然后利用第二層 Attention Model 計(jì)算得到的向量作為 Context vector,用以生成回答。
論文 Leveraging Contextual Sentence Relations for Extractive Summarization Using a Neural Attention Model 介紹了如何使用 Hierarchical Attention Model 完成文章的摘要提取。
摘要提取這類(lèi)任務(wù)的輸入是一個(gè)文檔中所有詞向量,輸出是 0/1,表示每一個(gè)句子是否作為摘要。摘要提取的一個(gè)關(guān)鍵是判斷哪些詞語(yǔ)或者哪些句子更具有代表性,更能代表其他詞語(yǔ)或者句子,而通常的做法就是對(duì)于句子 t ,計(jì)算 [1,t-1] 以及 [t+1,] 與 t 的cosine相似度,作為判斷 t 是否作為摘要的依據(jù)。
首先,對(duì)每一個(gè)詞計(jì)算其對(duì)該句子的貢獻(xiàn)率(影響概率),通過(guò)單詞級(jí)別(word-level)的 Attention Model 計(jì)算生成的向量作為句子的隱含向量;而在句子級(jí)別計(jì)算每個(gè)句子和其前面 t-1 個(gè)句子的相似度,利用第二層 Attention 生成的上文相關(guān)向量,同時(shí)計(jì)算每個(gè)句子和其后面所有句子的相似度,利用第二層 Attention 生成的下文相關(guān)向量;最后將上文下文相關(guān)向量作為最終預(yù)測(cè)的一部分輸入。
上述文章中的 Attention Model 與前一篇論文類(lèi)似,都是用了單詞級(jí)別(word-level)和句子級(jí)別(sentence-level)的 Hierarchical Attention Model。
當(dāng)然,這種 Hierarchical Attention Model 不僅可以使用在 NLP 領(lǐng)域,它在很多領(lǐng)域都有不錯(cuò)的發(fā)展。接下來(lái)這篇文章就介紹了 Hierarchical Attention Model 在醫(yī)療領(lǐng)域的應(yīng)用。
論文 Learning to Generate Rock Descriptions from Multivariate Well Logs with Hierarchical Attention 介紹了如何利用 Hierarchical Attention Model 幫助生成巖石描述。
該模型的輸入是鉆井得到的多類(lèi)數(shù)據(jù)(每類(lèi)數(shù)據(jù)的數(shù)值隨時(shí)間或者其他維度不斷變化)以及詞典集中所有單詞的詞向量,輸出為巖石描述的文本。它第一層 Attention Model 是為了判斷,在預(yù)測(cè)下一個(gè)描述詞時(shí),每類(lèi)數(shù)據(jù)中具體哪個(gè)數(shù)值與該描述詞相關(guān);而第二層 Attention Model 的意義在于判斷在預(yù)測(cè)下一個(gè)描述詞時(shí),哪一類(lèi)數(shù)據(jù)與該描述詞相關(guān)。
前三篇論文都是關(guān)于 Hierarchical Attention Model,接下來(lái)介紹一篇關(guān)于 Dual Attention 的論文。論文 Interpretable Convolutional Neural Networks with Dual Local and Global Attention for Review Rating Prediction 介紹了如何將 Dual Attention Model 用于推薦系統(tǒng)。
這個(gè)模型有兩個(gè)輸入:User Network 的輸入是該用戶(hù)給出的所有評(píng)論;Item Network 的輸入是該產(chǎn)品收到的所有評(píng)論。輸出是該用戶(hù)對(duì)給定產(chǎn)品的評(píng)分。
本文有一個(gè)假設(shè):不同用戶(hù)對(duì)喜愛(ài)或者厭惡情感的表達(dá)是不同的,比如一個(gè)用戶(hù)喜歡打高分,不喜歡的產(chǎn)品他可能打 4 分,但是另一個(gè)用戶(hù)喜歡打低分,他喜歡的產(chǎn)品也僅僅給 4 分,因此要根據(jù)用戶(hù)真正的喜好來(lái)推薦,而不能僅僅把用戶(hù)的評(píng)分作為依據(jù)。
本文的 Dual Attention Model,是一個(gè)平行的模型,不同于前三篇文章第一層 Attention Model 的輸出是第二層 Attention Model 的輸入。這個(gè) Dual Attention 由一個(gè) Local-Attention(L-Attn)和一個(gè) Global-Attention(G-Attn)組成。L-Attn 旨在在滑動(dòng)窗口中發(fā)掘出一些有意義的關(guān)鍵詞(可以根據(jù)這些關(guān)鍵詞發(fā)掘用戶(hù)的喜好,比如“喜歡”、“裙子”);而 G-Attn 旨在抓住用戶(hù)的整體情感表達(dá)情況(假設(shè)中提到的)。
同理,在 Item Network 中也使用 L- 和 G-Attn 用來(lái)抓住一些和該產(chǎn)品有關(guān)的關(guān)鍵詞以及其他用戶(hù)對(duì)這個(gè)產(chǎn)品的一個(gè)整體喜好情況。然后將 Dual Attention Model 得到的輸出拼接起來(lái)作為完成最終任務(wù)的輸入。
5. 基于知識(shí)圖譜或者領(lǐng)域知識(shí)的注意力機(jī)制(Knowledge-base Attention)
論文 Attentive Collaborative Filtering: Multimedia Recommendation with Item- and Component-Level Attention 介紹了基于領(lǐng)域知識(shí)的注意力機(jī)制如何用于推薦系統(tǒng)的。其中的 Attention Model 框架和上一節(jié)中介紹的 Hierarchical Attention Model 十分類(lèi)似,的不同就是它的輸入使用了其他領(lǐng)域信息。
不同于傳統(tǒng)的 CF 推薦模型,本文有如下假設(shè):兩個(gè)用戶(hù)同時(shí)喜歡一件衣服,有人因?yàn)樗念伾腥艘驗(yàn)樗牟眉?,在?shí)際推薦中,精準(zhǔn)分析將提升推薦準(zhǔn)確性。因此某一個(gè)產(chǎn)品的隱含向量表示不再是固定不變的了,它會(huì)根據(jù)用戶(hù)的喜好有不同的表現(xiàn)。模型的輸入是用戶(hù)之前購(gòu)買(mǎi)的所有產(chǎn)品以及每個(gè)產(chǎn)品的多個(gè)特征表示,輸出是用戶(hù)喜歡該產(chǎn)品的可能性。
首先,對(duì)于每一個(gè)輸入的產(chǎn)品,計(jì)算用戶(hù)特征向量和該產(chǎn)品每一個(gè)特征的相關(guān)度,通過(guò)第一層 Attention Model 計(jì)算得到的向量作為該產(chǎn)品的隱含表示;然后計(jì)算用戶(hù)特征向量和所有輸入產(chǎn)品的相關(guān)度,通過(guò)第二層 Attention Model 計(jì)算得到的向量作為用戶(hù)的喜好特征,從而完成最終的推薦任務(wù)。
當(dāng)我們要引入知識(shí)圖譜或者領(lǐng)域知識(shí)時(shí),并不代表模型會(huì)十分復(fù)雜,也不是說(shuō) Attention 的層數(shù)越高,模型越好。論文 GRAM: Graph-based Attention Model For Healthcare Representation Learning 就用了一個(gè)簡(jiǎn)單漂亮的模型完成了預(yù)測(cè)任務(wù)。
和小節(jié) 2 中提到的 Dipole 模型一樣,這是一個(gè)醫(yī)療診斷預(yù)測(cè)問(wèn)題。這個(gè)模型的輸入是用戶(hù)前 t 次的醫(yī)療代碼(每次的醫(yī)療代碼用 one-hot 的形式表示),輸出是用戶(hù)下一時(shí)刻的醫(yī)療診斷類(lèi)型。但是有很多醫(yī)療代碼數(shù)據(jù)稀疏甚至缺失,導(dǎo)致該醫(yī)療代碼的隱含向量表示不能很好地完成預(yù)測(cè)任務(wù)。本文通過(guò)引入知識(shí)圖譜信息一定程度地改善了這種情況。
首先引入外部知識(shí)圖譜,這個(gè)知識(shí)圖譜是一個(gè)有向無(wú)環(huán)圖,每個(gè)節(jié)點(diǎn)的父節(jié)點(diǎn)表示了一種相關(guān)但更寬泛的定義/概念。當(dāng)醫(yī)療代碼 c_i 信息稀少或者缺失時(shí),可以考慮使用更加寬泛的定義。而 Attention Model 就是用來(lái)判斷 c_i,c_g,c_c,c_a(從葉子節(jié)點(diǎn)到根結(jié)點(diǎn)上所有節(jié)點(diǎn))對(duì)預(yù)測(cè)任務(wù)的貢獻(xiàn)度。
6. 總結(jié)
上文介紹了單層 Attention Model, 多層 Attention Model(包括 Hierarchical Attention 和 Dual Attention)以及引入知識(shí)圖譜或者領(lǐng)域信息的 Attention Model 的一些變型和應(yīng)用。可以發(fā)現(xiàn),對(duì)于某一個(gè)問(wèn)題或者時(shí)序任務(wù),如果能針對(duì)任務(wù)提出合理的假設(shè),Attention Model 會(huì)有很多種變型和應(yīng)用的。
7. 論文列表
? KDD-2017
[1] Dipole: Diagnosis Prediction in Healthcare via Attention-based Bidirectional Recurrent Neural Networks
[2] A Context-aware Attention Network for Interactive Interactive Question Answering
[3] Dynamic Attention Deep Model for Article Recommendation by Learning Human Editors’ Demonstration
[4] GRAM: Graph-based Attention Model For Healthcare Representation Learning
[5] Learning to Generate Rock Descriptions from Multivariate Well Logs with Hierarchical Attention
? SIGIR-2017
[6] Enhancing Recurrent Neural Networks with Positional Attention for Question Answering
[7] Attentive Collaborative Filtering: Multimedia Recommendation with Item- and Component-Level Attention
[8] Video Question Answering via Attribute-Augmented Attention Network Learning
[9] Leveraging Contextual Sentence Relations for Extractive Summarization Using a Neural Attention Model
? Recsys-2017
[10] Interpretable Convolutional Neural Networks with Dual Local and Global Attention for Review Rating Prediction
歡迎加入本站公開(kāi)興趣群商業(yè)智能與數(shù)據(jù)分析群
興趣范圍包括各種讓數(shù)據(jù)產(chǎn)生價(jià)值的辦法,實(shí)際應(yīng)用案例分享與討論,分析工具,ETL工具,數(shù)據(jù)倉(cāng)庫(kù),數(shù)據(jù)挖掘工具,報(bào)表系統(tǒng)等全方位知識(shí)
QQ群:81035754
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/4662.html
摘要:深度學(xué)習(xí)推動(dòng)領(lǐng)域發(fā)展的新引擎圖擁有記憶能力最早是提出用來(lái)解決圖像識(shí)別的問(wèn)題的一種深度神經(jīng)網(wǎng)絡(luò)。深度學(xué)習(xí)推動(dòng)領(lǐng)域發(fā)展的新引擎圖深度神經(jīng)網(wǎng)絡(luò)最近相關(guān)的改進(jìn)模型也被用于領(lǐng)域。 從2015年ACL會(huì)議的論文可以看出,目前NLP最流行的方法還是機(jī)器學(xué)習(xí)尤其是深度學(xué)習(xí),所以本文會(huì)從深度神經(jīng)網(wǎng)絡(luò)的角度分析目前NLP研究的熱點(diǎn)和未來(lái)的發(fā)展方向。我們主要關(guān)注Word Embedding、RNN/LSTM/CN...
摘要:摘要來(lái)自阿里云團(tuán)隊(duì)的論文面向大規(guī)模海量云數(shù)據(jù)庫(kù)的服務(wù)質(zhì)量實(shí)時(shí)采集與診斷系統(tǒng)被數(shù)據(jù)庫(kù)頂會(huì)收錄。評(píng)委評(píng)價(jià)以下為阿里云入選論文。云數(shù)據(jù)庫(kù)對(duì)客戶(hù)業(yè)務(wù)的穩(wěn)定性至關(guān)重要,因此快速發(fā)現(xiàn)云數(shù)據(jù)庫(kù)性能出現(xiàn)異常,及時(shí)定位異常原因是云數(shù)據(jù)庫(kù)廠(chǎng)商的一個(gè)挑戰(zhàn)。 摘要:?來(lái)自阿里云RDS團(tuán)隊(duì)的論文TcpRT: Instrument and Diagnostic Analysis System for Servic...
閱讀 2653·2021-11-11 16:55
閱讀 691·2021-09-04 16:40
閱讀 3090·2019-08-30 15:54
閱讀 2629·2019-08-30 15:54
閱讀 2416·2019-08-30 15:46
閱讀 412·2019-08-30 15:43
閱讀 3239·2019-08-30 11:11
閱讀 2992·2019-08-28 18:17