谷歌Transformer再升級——新模型實現性能、速度雙提升,發展潛力巨大

 2020-11-06 11:01:06.0

當我們在翻譯軟件上輸入 「Transformer is a novel neural network architecture based on a self-attention mechanism」 後,計算機就可以迅速將它翻譯爲 「Transformer 是一種基於自注意力機制的新型神經網絡架構」,神奇的機器翻譯使得多語種互譯成爲可能。

近年來,得益於機器學習的快速發展,自然語言處理(NLP)技術不斷突破,在人機交互、在線翻譯工具等領域的應用層出不窮,不同語種的人與人、人與機器之間的無障礙自由交流得以實現。

當前的主流機器翻譯主要是基於神經網絡機器翻譯,這類方法是一個 「編碼器-解碼器」(encoder-decoder)架構的系統,編碼器對源語言序列進行編碼,並提取信息,然後通過解碼器把信息轉換爲目標語言,完成語言翻譯過程。

自 2017 年問世以來,基於「編碼器-解碼器」架構設計的 Transformer 模型憑藉其優越的性能,已然成爲機器翻譯領域的主流模型,在深度學習領域產生了巨大影響。

然而,Transformer 模型並非完美,模型引入self-attention機制雖實現了快速並行的訓練,但在長序列文本的處理問題上,卻需要佔據大量計算資源,導致模型訓練成本提高。

近日,由 Google、劍橋大學、DeepMind 和艾倫·圖靈研究院(Alan Turing Institute)的研究人員組成的團隊基於正交隨機特徵的快速注意力(Fast Attention Via Positive Orthogonal Random Features,FAVOR+)機制,提出了一種新的 Transformer 模型——Performer。相比於 Transformer 模型,新模型無需做出過度調整就可以變得更加高效和節能。

Performer 模型的技術突破

2017 年,谷歌大腦(Google Brain)的 Ashish Vaswani 等人發表了一篇題爲 「Attention Is All You Need」 的論文,首次提出一種基於自注意力機制的 Transformer 模型

Transformer 模型顛覆了傳統神經網絡的架構,彌補了卷積神經網絡(CNN)和遞歸神經網絡(RNN)存在的不足,在語義特徵提取、長距離特徵捕獲、任務綜合特徵抽取自然語言處理方面表現出了更優的性能,在自然語言處理、人機對話、圖像處理等許多領域都達到了當時最好的水平(SOTA)。

Transformer 架構的核心模塊是自注意力模塊,模型在處理每個單詞(輸入序列中的每個位置)時,自注意力模塊通過計算輸入序列中所有位置對的相似度分數,來尋找能夠幫助更好地編碼該單詞的線索。

然而,隨着輸入序列長度的增加,模型需要二次方的計算時間來產生所有相似度分數,所需計算內存也隨之增加,注意力機制面臨的效率問題也越來越突出。

針對那些需要長距離關注的應用,在 Transformer 基礎上已經有一些研究者提出了幾種快速的、空間利用率高的改進方法,但是大部分常見方法都依賴於稀疏注意力機制

然而,稀疏注意力機制仍存在一定的侷限性。

(1)它們需要高效的稀疏矩陣乘法運算,而這些運算並不是在所有加速器上都能實現的;

(2)它們通常不能爲其表示能力提供嚴格的理論保證;

(3)它們主要針對 Transformer 模型和生成式預訓練進行優化;

(4)它們通常會疊加更多的注意力層來補償稀疏表示,這使得它們很難與其他預訓練模型一起使用,因此需要重新訓練並消耗大量能量。


此外,稀疏注意機制通常仍然不足以解決常規注意方法應用的全部問題,如指針網絡。還有一些運算不能被稀疏化,如在工業級推薦系統中被大量應用的 softmax 運算。

Performer 使用了一個高效的(線性)廣義注意力框架,能夠對常規(softmax)全階注意力進行可證明的、準確的、實用的估計,不依賴於任何稀疏性或低階等先驗條件,從而實現更快的訓練速度,同時允許模型處理更長的序列,這一特性恰恰滿足了 ImageNet64 圖像數據集和PG-19文本數據集的要求。

Performer 模型通過正交隨機特徵(FAVOR+)算法實現快速注意力機制,並改用 Positive Orthogonal Random Features 估計 softmax 和高斯核函數,以實現在 FAVOR+ 機制中對常規 softmax 注意力進行魯棒且無偏的估計。

研究人員表示:「Performer 是第一個通過微調可以與常規 Transformers 進行完全兼容的線性架構」

圖 | 原點對稱的通用函數 r(定義爲建立在:三角隨機特徵和正隨機特徵上的估計器的均方誤差(MSEs)的比值)是輸入特徵向量與其長度l之間的角度 φ(以弧度爲單位)的函數, 函數的數值越大表示正隨機特徵性能越好的(φ,l)空間區域(左);當 l 爲定值 1 時,與變化的角度 φ 構成的函數 r 爲正切函數,以及比較低 softmax 內核值區域中兩個估算器的 MSE(右)。

作者通過比較發現,對於 φ 足夠大的臨界區域,該方法所使用的正交隨機特徵比任意的三角隨機特徵更精確。

圖 | 將原始的經過預訓練的 Transformer 的權重轉移到 Performer 中,Performer 產的精度達到 0.07 (橙色虛線),但在原來的梯度步數的一小部分中,很快就恢復了精度。

然而在 PG-19 上,三角法(TRIG)  softmax 逼近變得非常不穩定,而正特徵(POS)(不重繪)和 Linformer (也是逼近 softmax)即使在重繪投影的情況下,也會在同樣的複雜度中趨於平穩。具有特徵重繪的正 softmax 是匹配 Transformer 的必要條件,SMREG 可實現更快的收斂

這篇論文利用詳細的數學定理,證明了與其單純依靠計算資源來提升性能,還不如開發出改進的、高效的 Transformer 架構,來顯著降低能耗。同時,由於 Performers 使用了與 Transformer 相同的訓練超參數,也可以有效訓練基於 softmax 的線性 Transformer。因此 FAVOR+ 機制可以作爲一個簡單的插件,而無需進行過多的調整。

Performer 模型應用前景廣泛

研究人員表示,Performer 模型的提出,顯著降低了常規 Transformer 的空間和時間複雜度,並在 Transformer 的研究以及非稀疏注意機制的作用方面開闢了新的途徑。

該論文利用詳細的數學定理,證明了與其單純依靠計算資源來提升性能,還不如開發出改進的、高效的 Transformer 架構,來顯著降低能耗。同時,由於 Performers 使用了與 Transformer 相同的訓練超參數,因此 FAVOR+ 機制可以作爲一個簡單的插件,而無需進行過多的調整。

該團隊在一系列豐富的場景下測試了 Performers 的性能,執行的任務包括像素預測、蛋白質序列建模。在實驗設置中,一個 Performer 只用 FAVOR+ 機制取代了常規 Transformer 的注意力組件。

在使用蛋白質序列訓練一個 36 層模型的挑戰性任務上,基於 Performer 的模型(Performer-RELU)的性能優於基線 Transformer 模型:Reformer 和 Linformer,後者的準確率顯著下降。

在標準的 ImageNet64 基準上,具有 6 層的 Performer 與具有 12 層的 Reformer 的準確性相當。優化後,Performer 的速度達到了 Reformer 的兩倍。

研究人員表示,由於基於 Performer 的可擴展 Transformer 架構可以處理更長的序列,而不受注意力機制結構的限制,同時保持準確和魯棒性,相信它們可以在生物信息學領域帶來新的突破,如蛋白質的語言建模等技術已經顯示出強大的潛力。

代碼地址:https://github.com/google-research/google-research/tree/master/performer
論文地址:https://arxiv.org/abs/2009.14794

參考資料:
https://ai.googleblog.com/2020/10/rethinking-attention-with-performers.html
https://syncedreview.com/2020/10/02/google-cambridge-deepmind-alan-turing-institutes-performer-transformer-slashes-compute-costs/
https://www.youtube.com/watch?v=xJrKIPwVwGM

文章來源:機器之心