GPT-1,GPT-2,GPT-3三兄弟

前段時(shí)間大火的工具Github Copilot想必大家都略有耳聞夹抗,我們只需要輸入一些注釋說明你需要的函數(shù)功能事扭,AI就會(huì)自動(dòng)幫你編寫完整的函數(shù)代碼智哀,代碼邏輯、規(guī)范甚至比自己寫的都好单匣,可謂是讓人瑟瑟發(fā)抖的結(jié)對(duì)編程好兄弟。

而這個(gè)工具背后的大boss就是參數(shù)量讓人瑟瑟發(fā)抖的GPT-3語(yǔ)言模型秕硝。本文不僅介紹大哥大GPT-3暴浦,還對(duì)他的同胞兄弟GPT-1, GPT-2也進(jìn)行介紹,講解他們之間的演化過程崇败。強(qiáng)烈推薦李沐老師的b站講解視頻盅称,本文內(nèi)容與之強(qiáng)相關(guān),算是李沐老師講解視頻的一個(gè)筆記后室。

github copilot

首先缩膝,簡(jiǎn)要介紹下,孕育這三兄弟的機(jī)構(gòu)是OpenAI岸霹。

GPT-1:Improving Language Understanding by Generative Pre-Training
GPT-2:Language Models are Unsupervised Multitask Learners
GPT-3:Language Models are Few-Shot Learners

GPT-1 (生于2018年)

在自然語(yǔ)言處理任務(wù)中疾层,存在大量無標(biāo)簽的語(yǔ)料數(shù)據(jù),而有標(biāo)簽的語(yǔ)料數(shù)據(jù)相對(duì)較少贡避,因此基于有監(jiān)督訓(xùn)練的模型性能的提升大大受限于數(shù)據(jù)集痛黎。為了解決這個(gè)問題,作者提出先在大量的無標(biāo)簽數(shù)據(jù)上訓(xùn)練一個(gè)語(yǔ)言模型刮吧,然后再在下游具體任務(wù)的有標(biāo)簽數(shù)據(jù)集上進(jìn)行fine-tune湖饱。

利用無標(biāo)簽數(shù)據(jù)的難點(diǎn)
  • 設(shè)計(jì)何種目標(biāo)函數(shù)來學(xué)習(xí)文本表示。已有的各種目標(biāo)函數(shù)和子任務(wù)的相關(guān)度比較高杀捻,沒有說哪一種目標(biāo)函數(shù)特別好井厌。
  • 如何有效地把語(yǔ)言模型學(xué)到的文本表示遷移到下游子任務(wù)上。因?yàn)镹LP領(lǐng)域的各種任務(wù)差別比較大,沒有一個(gè)統(tǒng)一有效的方式使得一種文本表示能夠很好地遷移到各種子任務(wù)上旗笔。
算法關(guān)鍵
  • 無監(jiān)督訓(xùn)練的模型采用Transformer的decoder彪置,目標(biāo)函數(shù)采用標(biāo)準(zhǔn)的語(yǔ)言模型的目標(biāo)函數(shù),即通過前文預(yù)測(cè)下一個(gè)詞蝇恶。
    這個(gè)目標(biāo)函數(shù)其實(shí)是比BERT模型那種完形填空式的語(yǔ)言模型目標(biāo)函數(shù)要難拳魁,因?yàn)?strong>預(yù)測(cè)未來要比預(yù)測(cè)中間難。這可能也是導(dǎo)致GPT在訓(xùn)練和效果上比BERT差一些的一個(gè)原因撮弧。反過來說潘懊,如果你的模型真能預(yù)測(cè)未來,那么要比BERT這種通過完形填空訓(xùn)練的模型的強(qiáng)大很多贿衍,這也是作者一直將GPT模型不斷做大授舟,誕生三兄弟的一個(gè)原因吧。
  • 有監(jiān)督fine-tune采用標(biāo)準(zhǔn)的分類目標(biāo)函數(shù)贸辈。此外释树,作者發(fā)現(xiàn)在有監(jiān)督訓(xùn)練時(shí)額外加上語(yǔ)言模型的目標(biāo)函數(shù)更好,能夠提高模型的泛化性和加速模型收斂擎淤。
輸入形式

對(duì)于不同的下游任務(wù)奢啥,將數(shù)據(jù)轉(zhuǎn)換成統(tǒng)一的形式送入預(yù)訓(xùn)練好的語(yǔ)言模型,再接一層線性層進(jìn)行分類等嘴拢∽ぃ可以發(fā)現(xiàn),在fine-tune時(shí)席吴,僅需要對(duì)預(yù)訓(xùn)練的語(yǔ)言模型做很小的結(jié)構(gòu)改變赌结,即加一層線性層,即可方便地應(yīng)用于下游各種任務(wù)孝冒。

圖1:在不同下游任務(wù)上輸入數(shù)據(jù)的形式

GPT-2 (生于2019年)

GPT-2模型依舊使用Transformer模型的decoder柬姚,但相比于GPT-1,數(shù)據(jù)和模型參數(shù)變得更大迈倍,大約是之前的10倍伤靠,主打zero-shot任務(wù)。

現(xiàn)有基于監(jiān)督學(xué)習(xí)訓(xùn)練的模型的泛化性不是很好啼染,在一個(gè)任務(wù)上訓(xùn)練好的模型也很難遷移到下一個(gè)任務(wù)上。多任務(wù)學(xué)習(xí)(Multitask learning)是指在訓(xùn)練一個(gè)模型時(shí)焕梅,同時(shí)看多個(gè)任務(wù)的數(shù)據(jù)集迹鹅,而且可能通過多個(gè)損失函數(shù)來達(dá)到一個(gè)模式在多個(gè)任務(wù)上都能用的效果,但是在NLP領(lǐng)域用的不多贞言。NLP領(lǐng)域主流的做法還是像GPT-1或BERT那樣先在大量無標(biāo)簽數(shù)據(jù)上預(yù)訓(xùn)練語(yǔ)言模型斜棚,然后在每個(gè)下游任務(wù)上進(jìn)行有監(jiān)督的fine-tune,但是這樣也有兩個(gè)問題:

  • 對(duì)于下游的每個(gè)任務(wù),還是要重新訓(xùn)練模型
  • 需要收集有標(biāo)簽的數(shù)據(jù)

這樣導(dǎo)致在拓展到新任務(wù)上時(shí)還是有一定的成本弟蚀。因此蚤霞,GPT-2提出利用語(yǔ)言模型做下游任務(wù)時(shí),不需要下游任務(wù)的任何標(biāo)注信息义钉,即zero-shot設(shè)定昧绣,也不用訓(xùn)練模型。因此基本實(shí)現(xiàn)一勞永逸捶闸,訓(xùn)練一個(gè)模型夜畴,在多個(gè)任務(wù)上都能用。

此時(shí)删壮,我們需要考慮一個(gè)問題贪绘,如圖1所示,GPT-1在做下游任務(wù)時(shí)會(huì)對(duì)輸入進(jìn)行構(gòu)造央碟,引入了一些模型在預(yù)訓(xùn)練時(shí)沒見過的符號(hào)(預(yù)訓(xùn)練時(shí)見到的是自然文本)税灌,比如Start、Delim亿虽、Extract菱涤,但因?yàn)橛衒ine-tune的環(huán)節(jié),所以模型會(huì)去認(rèn)識(shí)這些符號(hào)经柴。
然而狸窘,現(xiàn)在要做zero-shot,也就是在做下游任務(wù)時(shí)坯认,模型不能被調(diào)整了翻擒,如果還引入一些模型之前沒見過的符號(hào)的話,模型就會(huì)很困惑牛哺。因此陋气,在構(gòu)造下游任務(wù)的輸入時(shí),我們就不能引入模型未見過的符號(hào)引润,而要使得輸入像模型預(yù)訓(xùn)練時(shí)見到的自然文本一樣巩趁,比如:

  • 機(jī)器翻譯任務(wù):translate to french, english text, french text〈靖剑“translate to french”這三個(gè)詞可以被認(rèn)為是一個(gè)特殊的分隔符议慰,后面叫Prompt
  • 閱讀理解任務(wù):answer the question, document, question, answer

下圖所示為GPT-2在不同任務(wù)上進(jìn)行預(yù)測(cè)時(shí)采用的Prompt:


圖來自李宏毅老師機(jī)器學(xué)習(xí)課件

GPT-3 (生于2020年)

GPT-3結(jié)構(gòu)和GPT-2一樣奴曙,但是數(shù)據(jù)約為GPT-2的1000倍别凹,模型參數(shù)約為GPT-2的100倍,暴力出奇跡洽糟,使得效果很驚艷炉菲。

GPT-3不再追求極致的zero-shot學(xué)習(xí)堕战,即不給你任何樣例去學(xué)習(xí),而是利用少量樣本去學(xué)習(xí)拍霜。因?yàn)槿祟愐膊皇遣豢慈魏螛永龑W(xué)習(xí)的嘱丢,而是通過少量樣例就能有效地舉一反三。
由于GPT-3龐大的體量祠饺,在下游任務(wù)進(jìn)行fine-tune的成本會(huì)很大越驻。因此GPT-3作用到下游子任務(wù)時(shí),不進(jìn)行任何的梯度更新或fine-tune吠裆。

evaluate GPT-3

這里=>可以看成是一個(gè)Prompt伐谈。

GPT-3可以生成人類都很難分辨的新聞文章,瞎扯起來像模像樣试疙,比如:

news articles generated by GPT-3
局限性
  • 雖然效果比GPT-2好很多诵棵,但是在文本生成上還是比較弱的。假如讓GPT-3生成一個(gè)很長(zhǎng)的文本祝旷,可能給了幾段之后履澳,就會(huì)重復(fù)起來
  • 結(jié)構(gòu)和算法的局限性。GPT-3是語(yǔ)言模型怀跛,不能像bert那樣雙向看距贷。
  • 均勻地預(yù)測(cè)下一個(gè)詞。不能判斷哪個(gè)詞重要吻谋,哪個(gè)詞不重要忠蝗,導(dǎo)致語(yǔ)言模型可能會(huì)花很長(zhǎng)時(shí)間去學(xué)習(xí)一些常見的虛詞,不像人類學(xué)習(xí)的劃重點(diǎn)漓拾。
  • 樣本有效性不夠阁最。基本上把整個(gè)網(wǎng)絡(luò)上的文章下載下來了骇两。
  • 做few-shot時(shí)速种,模型真的是根據(jù)你給的樣本從頭學(xué)習(xí)的嗎?這樣碰到訓(xùn)練樣本上沒有出現(xiàn)的任務(wù)低千,也能夠泛化過去配阵;還是根據(jù)這些樣本,從訓(xùn)練記憶里找出相關(guān)的示血,認(rèn)出了這個(gè)任務(wù)棋傍,那拼的就是訓(xùn)練數(shù)據(jù)的大小了。
  • 不具有可解釋性

Improving Language Understanding by Generative Pre-Training
Language Models are Unsupervised Multitask Learners
Language Models are Few-Shot Learners
https://www.bilibili.com/video/BV1AF411b7xQ

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末难审,一起剝皮案震驚了整個(gè)濱河市舍沙,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌剔宪,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,839評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異葱绒,居然都是意外死亡感帅,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門地淀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來失球,“玉大人,你說我怎么就攤上這事帮毁∈蛋” “怎么了?”我有些...
    開封第一講書人閱讀 153,116評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵烈疚,是天一觀的道長(zhǎng)黔牵。 經(jīng)常有香客問我,道長(zhǎng)爷肝,這世上最難降的妖魔是什么猾浦? 我笑而不...
    開封第一講書人閱讀 55,371評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮灯抛,結(jié)果婚禮上金赦,老公的妹妹穿的比我還像新娘。我一直安慰自己对嚼,他們只是感情好夹抗,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著纵竖,像睡著了一般漠烧。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上磨确,一...
    開封第一講書人閱讀 49,111評(píng)論 1 285
  • 那天沽甥,我揣著相機(jī)與錄音,去河邊找鬼乏奥。 笑死摆舟,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的邓了。 我是一名探鬼主播恨诱,決...
    沈念sama閱讀 38,416評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼骗炉!你這毒婦竟也來了照宝?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,053評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤句葵,失蹤者是張志新(化名)和其女友劉穎厕鹃,沒想到半個(gè)月后兢仰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,558評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡剂碴,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評(píng)論 2 325
  • 正文 我和宋清朗相戀三年把将,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片忆矛。...
    茶點(diǎn)故事閱讀 38,117評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡察蹲,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出催训,到底是詐尸還是另有隱情洽议,我是刑警寧澤,帶...
    沈念sama閱讀 33,756評(píng)論 4 324
  • 正文 年R本政府宣布漫拭,位于F島的核電站亚兄,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏嫂侍。R本人自食惡果不足惜儿捧,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望挑宠。 院中可真熱鬧菲盾,春花似錦、人聲如沸各淀。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)碎浇。三九已至临谱,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間奴璃,已是汗流浹背悉默。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評(píng)論 1 262
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留苟穆,地道東北人抄课。 一個(gè)月前我還...
    沈念sama閱讀 45,578評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像雳旅,于是被迫代替她去往敵國(guó)和親跟磨。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容