Transformer最近幾年已然成為大模型的標(biāo)配,而Meta團(tuán)隊(duì)開(kāi)發(fā)的一款Megabyte模型聲稱能解決Transformer的硬傷,速度還要快四成。
編者按:本文來(lái)自微信公眾號(hào) 新智元(ID:AI_era),編輯:Joey,創(chuàng)業(yè)邦經(jīng)授權(quán)轉(zhuǎn)載,頭圖來(lái)源攝圖網(wǎng)
(相關(guān)資料圖)
Transformer無(wú)疑是過(guò)去幾年內(nèi)機(jī)器學(xué)習(xí)領(lǐng)域最流行的模型。
自2017年在論文「Attention is All You Need」中提出之后,這個(gè)新的網(wǎng)絡(luò)結(jié)構(gòu),刷爆了各大翻譯任務(wù),同時(shí)創(chuàng)造了多項(xiàng)新的記錄。
但Transformer在處理長(zhǎng)字節(jié)序列時(shí)有個(gè)硬傷,就是算力損耗嚴(yán)重,而Meta的研究人員的最新成果則可以很好地解決這一缺陷。
他們推出了一種全新的模型架構(gòu),能跨多種格式生成超過(guò)100萬(wàn)個(gè)token,并超越GPT-4等模型背后的現(xiàn)有 Transformer架構(gòu)的功能。
這個(gè)模型被稱為「兆字節(jié)」(Megabyte),是一種多尺度解碼器架構(gòu)(Multi-scale Decoder Architecture),可以對(duì)超過(guò)一百萬(wàn)字節(jié)的序列進(jìn)行端到端可微分建模。
論文鏈接:https://arxiv.org/abs/2305.07185
Megabyte為什么比Transformer強(qiáng),就得先看看Transformer的不足之處在哪。
Transformer的不足迄今為止幾類高性能的生成式AI模型,如OpenAI的GPT-4、Google的Bard,都是基于Transformer架構(gòu)的模型。
但Meta的研究團(tuán)隊(duì)認(rèn)為,流行的Transformer架構(gòu)可能正達(dá)到其閾值,其中主要理由是Transformer設(shè)計(jì)中固有的兩個(gè)重要缺陷:
- 隨著輸入和輸出字節(jié)長(zhǎng)度的增加,自注意力的成本也迅速增加,如輸入的音樂(lè)、圖像或視頻文件通常包含數(shù)兆字節(jié),然而大型解碼器 (LLM)通常只使用幾千個(gè)上下文標(biāo)記
- 前饋網(wǎng)絡(luò)通過(guò)一系列數(shù)學(xué)運(yùn)算和轉(zhuǎn)換幫助語(yǔ)言模型理解和處理單詞,但在每個(gè)位置的基礎(chǔ)上難以實(shí)現(xiàn)可擴(kuò)展性,這些網(wǎng)絡(luò)獨(dú)立地對(duì)字符組或位置進(jìn)行操作,從而導(dǎo)致大量的計(jì)算開(kāi)銷
Megabyte強(qiáng)在哪相比Transformer,Megabyte模型展示了一種獨(dú)特的不同架構(gòu),將輸入和輸出序列劃分為patch而不是單個(gè)token。
如下圖,在每個(gè)patch中,本地AI模型生成結(jié)果,而全局模型管理和協(xié)調(diào)所有patch的最終輸出。
首先,字節(jié)序列被分割成固定大小的patch,大致類似于token,這個(gè)模型由三部分組成:
研究人員觀察到,對(duì)于多數(shù)任務(wù)而言字節(jié)預(yù)測(cè)都相對(duì)容易(如完成給定前幾個(gè)字符的單詞),這意味著每個(gè)字節(jié)的大型網(wǎng)絡(luò)是不必要的,并且可以使用更小的模型進(jìn)行內(nèi)部預(yù)測(cè)。
這種方法解決了當(dāng)今AI模型中普遍存在的可擴(kuò)展性挑戰(zhàn),Megabyte 模型的patch系統(tǒng)允許單個(gè)前饋網(wǎng)絡(luò)在包含多個(gè)token的patch上運(yùn)行,從而有效解決了自注意力縮放問(wèn)題。
其中,Megabyte架構(gòu)對(duì)長(zhǎng)序列建模的Transformer進(jìn)行了三項(xiàng)主要改進(jìn):
- 二次自注意力(Sub-quadratic self-attention)
大多數(shù)關(guān)于長(zhǎng)序列模型的工作都集中在減輕自注意力的二次成本上,而Megabyte將長(zhǎng)序列分解為兩個(gè)較短的序列,即使對(duì)于長(zhǎng)序列也仍然易于處理。
- patch前饋層(Per-patch feedforward layers)
在GPT-3大小的模型中,超過(guò)98%的FLOPS用于計(jì)算位置前饋層,Megabyte每個(gè)patch使用大型前饋層,以相同的成本實(shí)現(xiàn)更大、性能更強(qiáng)的模型。在patch大小為P的情況下,基線轉(zhuǎn)換器將使用具有m個(gè)參數(shù)的相同前饋層P次,兆字節(jié)可以以相同的成本使用具有mP個(gè)參數(shù)的層一次。
- 解碼中的并行性(Parallelism in Decoding)
Transformers必須在生成期間串行執(zhí)行所有計(jì)算,因?yàn)槊總€(gè)時(shí)間步的輸入是前一個(gè)時(shí)間步的輸出,通過(guò)并行生成patch的表示,Megabyte允許在生成過(guò)程中實(shí)現(xiàn)更大的并行性。
例如,具有1.5B參數(shù)的Megabyte模型生成序列的速度比標(biāo)準(zhǔn)的350MTransformer快40%,同時(shí)在使用相同的計(jì)算量進(jìn)行訓(xùn)練時(shí)還能改善困惑度。
Megabyte遠(yuǎn)遠(yuǎn)優(yōu)于其他模型,并提供與在子詞上訓(xùn)練的 sota 模型競(jìng)爭(zhēng)的結(jié)果
相比之下,OpenAI 的GPT-4有32,000個(gè)token的限制,而Anthropic的Claude有100,000個(gè)token的限制。
此外,在運(yùn)算效率方面,在固定模型大小和序列長(zhǎng)度范圍內(nèi),Megabyte比同等大小的Transformers和Linear Transformers使用更少的token,允許以相同的計(jì)算成本使用更大的模型。
總之,這些改進(jìn)使我們能夠在相同的計(jì)算預(yù)算下訓(xùn)練更大、性能更好的模型,擴(kuò)展到非常長(zhǎng)的序列,并提高部署期間的生成速度。
未來(lái)將會(huì)如何隨著AI軍備競(jìng)賽進(jìn)行地如火如荼,模型性能越來(lái)越強(qiáng),參數(shù)也越來(lái)越高。
雖然GPT-3.5在175B個(gè)參數(shù)上進(jìn)行了訓(xùn)練,但有人猜測(cè)功能更強(qiáng)大的GPT-4在1萬(wàn)億個(gè)參數(shù)上進(jìn)行了訓(xùn)練。
OpenAI的CEO Sam Altman最近也建議轉(zhuǎn)變戰(zhàn)略,他表示公司正在考慮舍棄對(duì)龐大模型的訓(xùn)練,而專注于其他性能的優(yōu)化。
他將AI模型的未來(lái)等同于iPhone芯片,而大多數(shù)消費(fèi)者對(duì)原始技術(shù)規(guī)格一無(wú)所知。
Meta的研究人員相信他們的創(chuàng)新架構(gòu)來(lái)得正是時(shí)候,但也承認(rèn)還有其他優(yōu)化途徑。
例如采用修補(bǔ)技術(shù)的更高效的編碼器模型、將序列分解為更小塊的解碼模型以及將序列預(yù)處理為壓縮token等,并且可以擴(kuò)展現(xiàn)有Transformer架構(gòu)的能力以構(gòu)建新一代模型。
前特斯拉AI總監(jiān)Andrej Karpathy也在這篇論文中發(fā)表了看法,他在推特上寫道:
參考資料:
https://www.artisana.ai/articles/meta-ai-unleashes-megabyte-a-revolutionary-scalable-model-architecture