官术网_书友最值得收藏!

1.2 注意力機制

注意力機制的主要思想是,編碼器不再像圖1-3那樣對整個輸入序列只生成一個狀態了,而是為每個表示都生成一個狀態,即解碼器可以訪問編碼器所有隱藏狀態。但是,同時處理所有狀態會給解碼器帶來巨大的輸入數量,因此需要一些機制來按優先級使用狀態。這就是注意力的用武之地:它讓解碼器在每個解碼時間步為每個編碼器狀態分配不同量的權重或“注意力”。此過程如圖1-4所示,其中展示了注意力在預測輸出序列中的詞元sind中的作用。

圖1-4:整合了注意力機制的成對RNN的編碼器-解碼器架構

通過關注每個時間步最相關的輸入標注,這些基于注意力的模型能夠學習生成翻譯中的單詞與源句子中的單詞之間的非平凡對應(nontrivial alignment)[7]。例如,圖1-5可視化了英語到法語翻譯模型的注意力權重,其中每個像素表示一個權重。圖1-5展示了解碼器如何能夠正確對應單詞“zone”和“Area”,它們在兩種語言中的順序不同。

盡管注意力機制能夠帶來更好的翻譯,但在編碼器和解碼器中使用循環神經網絡模型仍然存在一個重大缺點:計算本質上是順序的,不能跨輸入序列并行化。

Transformer引入了一種新的建模范式:完全放棄循環,改為使用一種特殊形式的注意力——自注意力。我們將在第3章更詳細地介紹自注意力,這里先簡單描述一下其基本思想:允許注意力對神經網絡同一層中的所有狀態進行操作。如圖1-6所示,其中編碼器和解碼器都有自己的自注意力機制,其輸出被饋送到前饋神經網絡(FF NN)。這種架構的訓練速度比循環神經網絡模型快得多,從而為NLP許多最新突破鋪平了道路。

圖1-5:RNN編碼器-解碼器對英語單詞和生成的法語翻譯的對應(由Dzmitry Bahdanau提供)

圖1-6:原始Transformer的編碼器-解碼器架構

在最初的Transformer論文中,翻譯模型是在各種語言的大型句子對語料庫上從頭開始訓練的。然而,在許多NLP實際應用中,我們無法訪問大量的標注文本數據來訓練我們的模型。因此我們引入了Transformer革命的最后一部分:遷移學習。

主站蜘蛛池模板: 象山县| 土默特左旗| 荥阳市| 敦化市| 河池市| 石渠县| 云和县| 克东县| 报价| 隆尧县| 扎囊县| 冷水江市| 本溪市| 海晏县| 莱州市| 镇沅| 泾源县| 澄江县| 邹平县| 乌鲁木齐县| 周口市| 揭阳市| 东光县| 林芝县| 南开区| 桑植县| 特克斯县| 永福县| 疏附县| 榆社县| 长汀县| 内江市| 玛沁县| 鲜城| 龙泉市| 安溪县| 格尔木市| 台中市| 贵德县| 石嘴山市| 扎赉特旗|