如果說過去幾年是什麼在支撐著大規模模式的發展,那一定是Transformer了!
基於Transformer,大量模型在各個領域猶如雨後春筍般不斷湧現,每個模型都有不同的架構,不同的細節,以及一個不容易解釋的名字。
最近有作者對近年來發布的所有流行的Transformer模型進行了一次全面的分類和索引,盡可能提供一個全面但簡單的目錄(catalog),文中包括Transformer創新的簡介,以及發展脈絡梳理。
論文連結:https://arxiv.org/pdf/2302.07730.pdf
圖靈獎得主Yann LeCun表示認可。
文章作者Xavier (Xavi) Amatriain於2005年博士畢業於西班牙龐培法布拉大學,目前是LinkedIn工程部副總裁,主要負責產品人工智慧策略。
Transformer是一類深度學習模型,具有一些獨特的架構特徵,最早出現在Google研究人員於2017年發表的著名的「Attention is All you Need」論文中,該論文在短短5年內累積了驚人的38000次引用。
Transformer架構也屬於編碼器-解碼器模型(encoder-decoder),只不過在此之前的模型,注意力只是其中的機制之一,大多都是基於LSTM (長短時記憶)和其他RNN(循環神經網路)的變體。
提出Transformer的這篇論文的一個關鍵見解如標題所說,注意力機制可以作為推導輸入和輸出之間依賴關係的唯一機制,這篇論文並不打算深入研究Transformer架構的所有細節,有興趣的朋友可以搜尋「The Illustrated Transformer」部落格。
##部落格連結:https://jalammar.github.io/illustrated-transformer/
下面只簡單地描述最重要的一些元件。
編碼器-解碼器架構
#一個通用的編碼器/解碼器架構由兩個模型組成,編碼器接受輸入並將其編碼為一個固定長度的向量;解碼器接收該向量並將其解碼為輸出序列。
對編碼器和解碼器進行聯合訓練以最小化條件對數似然。訓練完成後,編碼器/解碼器就可以根據給定輸入序列的產生一個輸出,或者可以給一對輸入/輸出序列評分。 #####################在最初的Transformer架構下,編碼器和解碼器都有6個相同的層,在這6層中的每一層,編碼器有兩個子層:一個多頭注意層,和一個簡單的前饋網絡,每個子層都有一個殘差連接和一個層歸一化。
編碼器的輸出大小為512,解碼器增加了第三個子層,也就是在編碼器輸出上的另一個多頭注意層。此外,解碼器中的另一個多頭層被mask掉,以防止對後續位置應用注意力,造成資訊外洩。
注意機制
從上面的描述中可以看出,模型結構中唯一「奇特」的元素是多頭的注意力,也正是這個模型的全部力量所在。
注意力函數是query和一組key-value pairs到輸出之間的映射,輸出的計算為數值的加權和,其中分配給每個數值的權重是由query與對應的key的compatibility函數計算的。
Transformer使用多頭注意力(multi-head attention),即對一組注意力函數的平行計算,也稱為縮放點積注意力。
與遞歸和卷積網路相比,注意力層有幾個優勢,比較重要的是其較低的計算複雜性和較高的連接性,對學習序列中的長期依賴關係特別有用。
Transformer可以做什麼?為什麼流行起來了?
最初的Transformer是為語言翻譯而設計的,主要是從英語翻譯到德語,但初版論文的實驗結果已經表明,該架構可以很好地推廣到其他語言任務。
這個特殊的趨勢很快就被研究界注意到了。
在接下來的幾個月裡,任何與語言相關的ML任務的排行榜都完全被某個版本的Transformer架構所佔據,例如問答任務Squad很快就被各種Transformer模型屠榜了。
Transofrmer能夠如此迅速地佔領大多數NLP排行榜的關鍵原因之一是:它們能夠快速適應其他任務,也就是遷移學習;預先訓練好的Transformer模型可以非常容易和迅速地適應它們沒有被訓練過的任務,相比其他模型有巨大的優勢。
作為一個ML從業者,你不再需要在一個巨大的資料集上從頭開始訓練一個大型模型,只需要在手頭任務上重新使用預訓練過的模型,也許只是用一個小得多的資料集對其稍作調整。
用來使預先訓練的模型適應不同任務的具體技術是所謂的微調(fine-tuning)。
事實證明,Transformer適應其他任務的能力是如此之強,雖然它們最初是為語言相關的任務而開發的,但它們很快就對其他任務有用了,從視覺或音訊和音樂應用一直到下棋或做數學。
當然,如果不是因為有無數的工具,使任何能寫幾行程式碼的人都能隨時使用這些工具,所有這些應用就不可能實現。
Transformer不僅很快就被整合到主要的人工智慧框架中(即Pytorch和TensorFlow),還有一些完全為Transformer而生的公司。
Huggingface,一家到今天為止已經籌集了超過6000萬美元的新創公司,幾乎完全是圍繞著將他們的開源Transformer庫商業化的想法而建立的。
GPT-3是OpenAI在2020年5月推出的Transformer模型,是他們早期GPT和GPT-2的後續版本。該公司在一份預印本中介紹了該模型,引起了很大的轟動,論文中聲稱該模型非常強大,以至於他們沒有資格向世界發布。
而且,OpenAI不僅沒有發布GPT-3,而且透過和微軟之間的一個非常大的夥伴關係實現了商業化。
現在,GPT-3為300多個不同的應用提供底層技術支持,並且是OpenAI商業策略的基礎。對於一個已經獲得超過10億美元資金的公司來說,這是很重要的。
RLHF
# 從人類回饋(或偏好)中強化學習,又稱為RLHF(或RLHP),最近已成為人工智慧工具箱的一個巨大補充。
這個概念最早來自2017年的論文「來自人類偏好的深度強化學習」,但最近它被應用於ChatGPT和類似的對話智能體中,取得了相當好的效果,又引起了大眾的注意。
文中的想法是非常簡單的,一旦語言模型被預訓練後,就可以對對話產生不同的回應,並讓人類對結果進行排名,可以使用這些排名(又稱偏好或回饋)利用強化學習機制來訓練獎勵。
擴散模型Diffusion
#擴散模型已經成為影像生成的新的SOTA,大有取代GANs(生成對抗網路)的趨勢。
擴散模型是一類經過訓練的變分推理(varitional inference)的潛在變數模型,在實務上的意思是訓練一個深度神經網路來對用某種雜訊函數模糊的影像進行去雜訊。
以這種方式訓練的網路實際上是在學習這些圖像所代表的潛空間。
看完介紹,快開啟Transformer的回溯之旅吧!
以上是史上超全Transformer合輯! LeCun力推:給60個模型建立目錄,哪篇論文你錯過了?的詳細內容。更多資訊請關注PHP中文網其他相關文章!