谷歌最近與多倫多大學等高校合作發表論文,提出了一種新的網絡框架——Transformer。Transformer是完全基於注意力機制(attention mechanism )的網絡框架,放棄了RNN和CNN模型。
眾所周知,在編碼-解碼框架中,主流的序列傳導模型都是基於RNN或者CNN的,其中能完美連接編碼器和解碼器的是注意力機制。而谷歌提出的這一新框架Transformer,則是完全基於注意力機制的。
Transformer用於執行翻譯任務,實驗表明,這一模型表現極好,可並行化,並且大大減少訓練時間。Transformer在WMT 2014英德翻譯任務上實現了28.4 BLEU,改善了現有的最佳成績(包括超過2個BLEU的集合模型),在WMT 2014英法翻譯任務中,建立了一個新的單一模式,在八個GPU上訓練了3.5天後,最好的BLEU得分為41.0,這在訓練成本最小的情況下達到了最佳性能。由Transformer泛化的模型成功應用於其他任務,例如在大量數據集和有限數據集中訓練英語成分句法解析的任務。
注意力機制是序列模型和傳導模型的結合,在不考慮輸入輸出序列距離的前提下允許模型相互依賴,有時(但是很少的情況),注意力機制會和RNN結合。
模型結構如下:
編碼器:編碼器有6個完全的層堆棧而成,每一層都有兩個子層。第一個子層是多頭的self-attention機制,第二層是一層簡單的前饋網絡全連接層。在每一層子層都有residual和歸一化。
解碼器:解碼器也是有6個完全相同的層堆棧而成,每一層有三個子層,在編碼棧的輸出處作為多頭的attention機制。
注意(attention):功能是將Query和一組鍵-值對映射到輸出,那麼包括query、鍵、值及輸出就都成為了向量。輸出是值的權重加和,而權重則是由值對應的query和鍵計算而得。
source:arxiv
雷鋒網了解到,谷歌這一模型在眾多翻譯任務中都取得了最佳成績,其泛化模型也在其他識別任務中表現優異。谷歌對這一基於注意力機制的Transformer表示樂觀,研究人員很高興看到模型在其他任務中表現良好,谷歌計劃研究Transformer的更廣泛應用——其他形式的輸入輸出,包括圖像、音頻及視頻等。