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