Ugrás a tartalomhoz

GPT-1

Ellenőrzött
A Wikipédiából, a szabad enciklopédiából
OpenAI (GPT-1)
Az eredeti GPT architektúra sematikus ábrája
Az eredeti GPT architektúra sematikus ábrája

FejlesztőOpenAI
Első kiadás2018. június
Programozási nyelvPython
PlatformPlatformfüggetlen (kutatási modellként)
Méret117 millió paraméter
ElérhetőAngol (elsősorban a BookCorpus alapján)
Kategória
LicencPropietárius; a kutatáshoz kapcsolódó későbbi kód (pl. a GPT-2) MIT-licenc alatt került kiadásra[1]
Az OpenAI (GPT-1) weboldala

A Generative Pre-trained Transformer 1 (röviden GPT-1) volt az OpenAI által fejlesztett első olyan nagy nyelvi modell, amely a Google kutatói által 2017-ben publikált transzformer architektúrán alapult.[2] 2018 júniusában az OpenAI kiadta az „Improving Language Understanding by Generative Pre-Training” (A nyelvértés javítása generatív előtanítással) című tudományos közleményét,[3] amelyben nemcsak magát az első GPT modellt mutatták be, hanem ezzel együtt megalapozták a generatív előtanított transzformer modellek általános koncepcióját is.[4] Ez a modell jelentős mérföldkőnek számított a természetes nyelvi feldolgozás területén.

A korábbi, csúcstechnológiát képviselő természetesnyelv-feldolgozó (NLP) modellek túlnyomórészt felügyelt tanulási módszerekre épültek, amelyek nagyméretű, manuálisan annotált (címkézett) adathalmazokat igényeltek a tanításhoz. Ez a függőség komoly korlátot jelentett a modellek méretezhetőségében, és akadályozta az olyan, kevés digitális szöveges erőforrással rendelkező nyelvek feldolgozásának fejlődését is, mint például a szuahéli vagy a haiti kreol.[5] Ezzel szemben a GPT-1 újszerű, kétfázisú, „félig felügyelt” megközelítést alkalmazott: először egy felügyelet nélküli, generatív „előtanítási” (pre-training) fázisban tanították be a modell alapvető nyelvi képességeit egy nagy, címkézetlen szövegkorpuszon nyelvi modellezési céllal, majd ezt egy felügyelt „finomhangolási” (fine-tuning) szakasz követte, amely során a már előtanított modellt specifikus célfeladatokhoz igazították kisebb, címkézett adathalmazok segítségével.[3]

A transzformer architektúra alkalmazása kulcsfontosságú előrelépést jelentett a korábbi, főként visszacsatolt neurális hálózatokon (RNN) és LSTM-eken alapuló, figyelem-mechanizmust használó modellekhez képest. A transzformer strukturáltabb memóriakezelést tett lehetővé, és hatékonyabban tudta megragadni a hosszabb távú szöveges függőségeket, ami robusztusabb általánosítási képességet biztosított a különböző nyelvi feladatok között.[3]

BookCorpus mint tanító adathalmaz

[szerkesztés]

A modell előtanításához az OpenAI a BookCorpus nevű adathalmazt választotta. Ezt az adathalmazt azért részesítették előnyben, mert jellemzően hosszabb, koherens szövegrészleteket tartalmazott, ami elengedhetetlen volt ahhoz, hogy a modell képes legyen megtanulni a hosszú távú nyelvi összefüggések és függőségek felismerését és modellezését.[6] A BookCorpus több mint 7000, korábban publikálatlan, változatos műfajú regény szövegét foglalta magában. Bár más, abban az időben elérhető szöveges adathalmazok (mint például a hírcikkek gyűjteményei) akár nagyobb méretűek is lehettek, azok tartalma gyakran mondatonkénti szinten „összekevert” volt (azaz a mondatok sorrendje nem követte az eredeti dokumentum logikai felépítését), ami jelentősen megnehezítette a hosszabb szövegrészletekre jellemző kontextuális információk és narratív struktúrák elsajátítását.[3]

A BookCorpus nyers szövegét előfeldolgozás során az ftfy könyvtár segítségével tisztították meg a kódolási és formázási hibáktól, majd a spaCy eszközkészletet alkalmazták a tokenizálás (a szöveg kisebb egységekre, ún. tokenekre bontása) és a mondathatárok felismerésének elvégzésére.[3]

Architektúra

[szerkesztés]
Az eredeti GPT architektúra felépítése

A GPT-1 alapját egy 12 rétegből álló, kizárólag dekóder-alapú transzformer blokk képezte. Mindegyik réteg 12 független, maszkolt önfigyelmi (self-attention) fejet tartalmazott. Az önfigyelmi mechanizmusban minden fej 64 dimenziós állapotreprezentációval dolgozott, ami rétegenként összesen 768 dimenziós belső állapotot eredményezett. A modell optimalizálásához a standard sztochasztikus gradiens ereszkedés helyett az Adam optimalizáló algoritmust használták. A tanulási ráta (learning rate) dinamikusan változott: lineárisan növekedett nulláról egy csúcsértékig az első 2000 tanítási lépés (frissítés) során, majd ezt követően egy koszinuszfüggvény-ütemezés szerint fokozatosan csökkent vissza nulláig a tanítási folyamat végére.[3] A teljes GPT-1 modell összesen 117 millió tanítható paramétert tartalmazott, ami akkoriban nagynak számított.[4]

Míg az előtanítási fázis általános nyelvi képességeket alakított ki, a finomhangolási fázis során a modellt specifikus downstream feladatokra adaptálták (pl. szövegosztályozás, kérdés-válaszadás). Fontos jellemzője volt a megközelítésnek, hogy a finomhangolás során az előtanított alapmodell architektúráján csak minimális módosításokat kellett végrehajtani az adott feladatnak megfelelően (általában csak egy lineáris kimeneti réteg hozzáadásával). Ennek az átvihetőségnek köszönhetően a GPT-1 számos természetesnyelv-feldolgozási benchmark teszten jelentős javulást mutatott a korábbi state-of-the-art modellekhez képest, és sok esetben még azokat a modelleket is felülmúlta, amelyeket kifejezetten az adott célfeladatra, nagyméretű címkézett adatokkal optimalizáltak.[3]

Teljesítmény és értékelés

[szerkesztés]

A GPT-1 modell figyelemre méltó eredményeket ért el több standard nyelvértési benchmarkon. A természetes nyelvi következtetés (Natural Language Inference, NLI, vagy más néven textuális implikáció) feladatokban, ahol a modellnek két mondat közötti logikai kapcsolatot (következmény, ellentmondás, semlegesség) kellett megállapítania, 5,8%-os és 1,5%-os abszolút javulást ért el különböző adathalmazokon a korábbi legjobb eredményekhez viszonyítva.[3] Ezek az NLI adathalmazok változatos forrásokból származtak, mint például a QNLI (Wikipédia-cikkeken alapuló kérdés-válasz párokból származtatott következtetési feladat) és a MultiNLI (különböző szövegtípusokat – leiratok, szépirodalom, kormányzati jelentések stb. – felölelő, nagy diverzitású következtetési adathalmaz).[7] A kérdés-válaszadás és a józan ész alapú következtetés (commonsense reasoning) terén is jelentősen felülmúlta az addigi modelleket: a RACE adathalmazon (közép- és felső tagozatos diákok számára készült angol nyelvű szövegértési vizsgákból származó kérdés-válasz párok) 5,7%-kal, míg a Story Cloze teszten (rövid történetek befejezésének kiválasztása) 8,9%-kal teljesített jobban, mint a korábbi csúcstartók.[8][9]

Továbbá, a GPT-1 4,2%-os javulást ért el a „szemantikus hasonlóság” detektálásában (lényegében parafrázis felismerés), ahol a feladat annak eldöntése volt, hogy két mondat jelentése megegyezik-e. Ezt a Quora Question Pairs (QQP) adathalmazon mérték, amely a Quora platformról származó, felhasználók által feltett kérdéspárokat tartalmazott.[3]

A nyelvtani helyesség megítélését vizsgáló Corpus of Linguistic Acceptability (CoLA) szövegosztályozási feladaton a GPT-1 45,4-es Matthews korrelációs együtthatót ért el, ami jelentős előrelépés volt a korábbi 35,0-s csúcseredményhez képest.[3] Végül, a több különböző nyelvi feladatot magában foglaló, átfogó GLUE (General Language Understanding Evaluation) benchmark teszten a GPT-1 összesített pontszáma 72,8 lett, felülmúlva ezzel az addigi, 68,9-es legjobb eredményt, demonstrálva a modell általános nyelvi képességeinek széleskörűségét és hatékonyságát.[10] Ezek az eredmények együttesen igazolták a generatív előtanítás és a transzformer architektúra hatékonyságát a nyelvértési feladatok széles skáláján.

Jegyzetek

[szerkesztés]
  1. gpt-2. GitHub. [2023. március 11-i dátummal az eredetiből archiválva]. (Hozzáférés: 2023. március 13.)
  2. Vaswani, Ashish et al.: Attention is All you Need. Advances in Neural Information Processing Systems, 2017. [1]
  3. a b c d e f g h i j Radford, Alec et al.: Improving Language Understanding by Generative Pre-Training. OpenAI, 2018. [2]
  4. a b GPT-1-től GPT-4-ig: Az OpenAI összes GPT modellje magyarázattal, 2023. április 11. [2023. április 15-i dátummal az eredetiből archiválva]. (Hozzáférés: 2023. április 29.)
  5. Tsvetkov, Yulia: Opportunities and Challenges in Working with Low-Resource Languages. Carnegie Mellon University, 2017. [3]
  6. Zhu, Yukun et al.: Aligning Books and Movies: Towards Story-like Visual Explanations by Watching Movies and Reading Books. arXiv, 2015. [4]
  7. Williams, Adina et al.: A Broad-Coverage Challenge Corpus for Sentence Understanding through Inference. ACL, 2018. [5]
  8. Lai, Guokun et al.: RACE: Large-scale ReAding Comprehension Dataset From Examinations. arXiv, 2017. [6]
  9. Mostafazadeh, Nasrin et al.: LSDSem 2017 Shared Task: The Story Cloze Test. ACL, 2017. [7]
  10. Wang, Alex et al.: GLUE: A Multi-Task Benchmark and Analysis Platform for Natural Language Understanding. arXiv, 2018. [8]