GPT-1
| OpenAI (GPT-1) | |
| Az eredeti GPT architektúra sematikus ábrája | |
| Fejlesztő | OpenAI |
| Első kiadás | 2018. június |
| Programozási nyelv | Python |
| Platform | Platformfüggetlen (kutatási modellként) |
| Méret | 117 millió paraméter |
| Elérhető | Angol (elsősorban a BookCorpus alapján) |
| Kategória | |
| Licenc | Propietárius; a kutatáshoz kapcsolódó későbbi kód (pl. a GPT-2) MIT-licenc alatt került kiadásra[1] |
| Kódtár | https://github.com/openai/finetune-transformer-lm |
| 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 | forrásszöveg szerkesztése]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 | forrásszöveg szerkeszté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 | forrásszöveg szerkesztése]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 | forrásszöveg szerkesztése]- ↑ "gpt-2". GitHub. 2023. március 11. dátummal az eredetiből archiválva. Hozzáférés: 2023. március 13.
- ↑ Vaswani, Ashish et al.: Attention is All you Need. Advances in Neural Information Processing Systems, 2017.
- 1 2 3 4 5 6 7 8 9 10 Radford, Alec et al.: Improving Language Understanding by Generative Pre-Training. OpenAI, 2018.
- 1 2 "GPT-1-től GPT-4-ig: Az OpenAI összes GPT modellje magyarázattal". 2023. április 11. 2023. április 15. dátummal az eredetiből archiválva. Hozzáférés: 2023. április 29.
- ↑ Tsvetkov, Yulia: Opportunities and Challenges in Working with Low-Resource Languages. Carnegie Mellon University, 2017.
- ↑ Zhu, Yukun et al.: Aligning Books and Movies: Towards Story-like Visual Explanations by Watching Movies and Reading Books. arXiv, 2015.
- ↑ Williams, Adina et al.: A Broad-Coverage Challenge Corpus for Sentence Understanding through Inference. ACL, 2018.
- ↑ Lai, Guokun et al.: RACE: Large-scale ReAding Comprehension Dataset From Examinations. arXiv, 2017.
- ↑ Mostafazadeh, Nasrin et al.: LSDSem 2017 Shared Task: The Story Cloze Test. ACL, 2017.
- ↑ Wang, Alex et al.: GLUE: A Multi-Task Benchmark and Analysis Platform for Natural Language Understanding. arXiv, 2018.