RNN-Encoder Decoder架構中引入的注意力機制
一.簡介
注意力機制是在Encoder與Deconder架構中針對輸出不同的序列(分詞)在輸入序列中所佔權重一樣,或者使用同一個C向量的不足中,引入了能夠學習針對不同輸出序列在不同輸入序列所佔的比重不同的一個機制,例如,“我喜歡足球”與“i like football”這個翻譯中,‘i’這個詞的翻譯明顯與“我”這個輸入詞對應,與後面“喜歡足球”的關係不大,因此,這種注意力機制能夠明顯的提升翻譯效果。
以下內容是我在看完《NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE》這篇論文後做的一個簡要總結。
二.詳細介紹
論文中提出,注意力機制共同學習輸入輸出序列對應關係以及翻譯比傳統的Encoder-Deconder架構要好。尤其是在長句子的翻譯上,由於Encoder-Decoder在長句子中表現不好,Cho et al. (2014b) 這篇論文顯示了隨著句子的增長,傳統的Encoder-Decoder架構表現越來越糟,尤其是對文字中最長的句子。
注意力機制解決了這個問題,每次在翻譯中生成一個單詞,都會在輸入中找到與之最相關的資訊。該模型都會根據輸入中相關的單詞位置資訊以及先前的目標詞來預測當前目標詞。
最為重要的是這種方式並不是將整個輸入文字學習到一個簡單的固定長度的向量中,而是編碼整個輸入到一個向量序列中,並從中選擇適宜的向量子集解碼翻譯。
2.1 RNN Encoder-Decoder
文中提出了一個使用兩個RNN網路的Encoder-Decoder架構,一個用於Encoder,一個用於Decoder。能夠同時學到對應關係和進行翻譯。
在Encoder中,編碼器學習輸入序列
並且:
其中
在已知輸入文件向量C以及
其中,
其中g是一個非線性的,多層的函式,
2.2 注意力機制
注意力機制本文主要是使用在了Encoder-Decoder架構中,其中使用雙向RNN作為Encoder,而解碼器Decoder主要搜尋輸入序列進行翻譯。
2.2.1 Decoder
在新的架構中,文中新的條件概率為:
其中
其中,
具體如下圖所示:
文中將a作為前饋神經網路的引數與其它模型一起訓練,與傳統的機器翻譯不同,the alignment並不認為是一個潛在的變數,alignment model直接計算soft alignment,允許反向傳播損失函式的梯度,梯度能夠同翻譯模型一起訓練,讓
2.2.2 Encoder-雙向RNN
文中提到,傳統的RNN讀取有序的輸入序列,然後在一些場景中,針對每一個單詞,我們希望不僅能夠學習到前面單詞的資訊,而且能夠學習到後面單詞的資訊。
雙向RNN是由前向以及後向的RNN組成,前向的RNN讀取輸入序列
實驗驗證
其中30表示句子長度最長為30,50表示句子長度最長為50個單詞。RNNsearch為文中提出的模型。
相關文章
- 計算機視覺中的注意力機制計算機視覺
- 目標檢測中的注意力機制
- 注意力機制----RNN中的self-attentionRNN
- 注意力機制
- 深度學習中的注意力機制(Attention Model)深度學習
- 注意力機制在圖卷積中的應用卷積
- attention注意力機制學習
- 什麼是注意力機制?
- 深入探討微服務架構中的同步通訊機制微服務架構
- 自適應注意力機制在Image Caption中的應用APT
- You Only Cache Once:YOCO 基於Decoder-Decoder 的一個新的大語言模型架構模型架構
- 深入理解圖注意力機制
- 三種Transformer模型中的注意力機制介紹及Pytorch實現:從自注意力到因果自注意力ORM模型PyTorch
- 多頭注意力機制的python實現Python
- 8.1 Attention(注意力機制)和TransformerORM
- 為什麼使用自注意力機制?
- umich cv-6-2 注意力機制
- 哈佛大學提出變分注意力:用VAE重建注意力機制
- 從各種注意力機制窺探深度學習在NLP中的神威深度學習
- Seq2Seq那些事:詳解深度學習中的“注意力機制”深度學習
- 輕量級的架構決策記錄機制架構
- 架構設計(三):引入快取架構快取
- 【機器學習】李宏毅——自注意力機制(Self-attention)機器學習
- HDFS 02 - HDFS 的機制:副本機制、機架感知機制、負載均衡機制負載
- Cloud Foundry架構和訊息處理機制Cloud架構
- 自注意力機制(2)-多頭自注意層
- CNN中的注意力機制綜合指南:從理論到Pytorch程式碼實現CNNPyTorch
- Discuz!X3解讀之類引入機制及目錄結構
- Sigmoid注意力一樣強,蘋果開始重新審視注意力機制Sigmoid蘋果
- 深入理解Yarn的架構及作業排程機制Yarn架構
- spring cloud微服務架構-Eureka保護機制SpringCloud微服務架構
- Kafka 架構和原理機制 (圖文全面詳解)Kafka架構
- Vue專案預渲染機制引入實踐Vue
- App架構設計經驗談:介面”安全機制”的設計APP架構
- 架構中的“大象”架構
- 記一次引入Elasticsearch的系統架構實戰Elasticsearch架構
- 電商系統架構總結3(webapi授權機制)架構WebAPI
- TensorFlow引入了動態圖機制Eager Execution