Előtanítás (Pre-training)

From Systems analysis Wiki
Jump to navigation Jump to search

A nagy nyelvi modellek (LLM) előtanítása (pre-training) — a modern nagy nyelvi modellek létrehozásának alapvető szakasza, amely során a modelleket hatalmas és változatos, jelöletlen szöveggyűjteményeken tanítják. Ez a folyamat lehetővé teszi a modellek számára, hogy elsajátítsák az általános nyelvi mintákat, a világról szóló ismereteket és a szemantikai összefüggéseket, létrehozva az úgynevezett alapmodellt (foundation model), amely aztán konkrét feladatokhoz igazítható.

Mi az előtanítás?

Az előtanítás (pre-training) a tanítás kezdeti fázisa, amelynek során az LLM nagy szöveges adatkészleteken kerül betanításra önfelügyelt tanulás (self-supervised learning) módszereivel. Ez azt jelenti, hogy a tanítási jelzések (címkék) magukból az adatokból keletkeznek, emberi kézi annotáció nélkül.

Ennek a szakasznak az elsődleges célja a szöveg rejtett vagy jövőbeli részeinek előrejelzése. Az architektúrától függően két fő feladatot alkalmaznak:

  • Kauzális nyelvi modellezés (Causal Language Modeling, CLM): A modell megtanulja előrejelezni a sorozat következő szavát (tokenét) az összes előző alapján. Ez a megközelítés a generatív modellek, például a GPT alapját képezi.
  • Maszkolt nyelvi modellezés (Masked Language Modeling, MLM): A modell megtanulja visszaállítani a szövegben véletlenszerűen „maszkolt" (rejtett) szavakat, felhasználva a körülöttük lévő kétirányú kontextust (bal és jobb oldali szavak). Ezt a módszert az olyan modellek alkalmazzák, mint a BERT.

Ezeknek a feladatoknak köszönhetően a modell kénytelen elsajátítani a szintaxist, a szemantikát és a világgal kapcsolatos tényleges ismereteket, hogy sikeresen tudjon előrejelzéseket tenni.

Az előtanítás adatai

Az előtanítás hatékonysága nagymértékben függ a tanítási adatok minőségétől és változatosságától. Az alábbi fő adatforrásokat alkalmazzák:

  • Weboldalak: Az olyan adathalmazok, mint a Common Crawl és a C4, széles témaspektrumot, stílust és nyelveket biztosítanak, az internet „lenyomataként\".
  • Könyvek: Az olyan korpuszok, mint a BookCorpus és a The Pile, strukturált és összefüggő szöveget kínálnak, amelyek hasznosak a hosszú távú függőségek és narratívák megértéséhez.
  • Társalgási adatok: Fórumokról (például Reddit) és közösségi médiából származó adatok, amelyek segítenek a modelleknek elsajátítani az informális nyelvet és a párbeszédes mintákat.
  • Specializált adatok: Tudományos cikkek (az arXiv-ból), forráskód (a GitHub-ból és a The Stack-ből) vagy többnyelvű szövegek a modell speciális képességeinek fejlesztésére.

Az adatok megoszlásának példái

A különböző modellek eltérő forrásarányokat alkalmaznak, ami befolyásolja végső képességeiket:

  • GPT-3 (175 milliárd paraméter): 16% könyvek, 84% weboldalak.
  • PaLM (540 milliárd paraméter): 5% könyvek, 14% weboldalak, 50% társalgási adatok, 31% egyéb.
  • LLaMA (65 milliárd paraméter): 5% könyvek, 2% weboldalak, 87% társalgási adatok.

Ezek az eloszlások azt mutatják, hogy az adatok megválasztása stratégiai döntés, amely a modell céljaitól függően változik.

Gyakran használt korpuszok

Frequently used datasets for LLM pre-training - Gyakran használt adathalmazok LLM előtanításhoz
Korpusz Méret Forrás Utolsó frissítés
BookCorpus 5GB Könyvek 2015. dec.
Gutenberg - Könyvek 2021. dec.
C4 800GB Common Crawl 2019. ápr.
CC-Stories-R 31GB Common Crawl 2019. szept.
CC-NEWS 78GB Common Crawl 2019. febr.
REALNEWS 120GB Common Crawl 2019. ápr.
OpenWebText 38GB Reddit hivatkozások 2023. márc.
Pushshift.io 2TB Reddit hivatkozások 2023. márc.
Wikipedia 21GB Wikipédia 2023. márc.
The Pile 800GB Egyéb 2020. dec.
ROOTS 1.6TB Egyéb 2022. jún.

Tanítási technikák

Az LLM-ek előtanítása jelentős számítási erőforrásokat igényel. A folyamat kezeléséhez az alábbi technikákat alkalmazzák:

  • Elosztott tanítás: Több GPU vagy TPU használata párhuzamos feldolgozáshoz.
  • Vegyes pontosság (Mixed Precision): Kisebb pontosságú numerikus formátumok (például 16 bites a 32 bites helyett) alkalmazása a számítások felgyorsítására és a memóriahasználat csökkentésére.
  • Gradiens ellenőrzőpontok (Gradient Checkpointing): Memóriatakarékossági technika, amely egyes közbülső aktivációkat újraszámítással állít elő ahelyett, hogy tárolná azokat.
  • Modellpárhuzamosság (Model Parallelism): Magának a modellnek az elosztása több eszköz között.

Egy olyan modell tanítása, mint a GPT-3, több hónapig tarthat, több ezer GPU-n.

Skálázási törvények

Az olyan kutatások, mint az OpenAI munkája (Kaplan et al., 2020), megmutatták, hogy a nyelvi modellek teljesítménye három tényező növelésével kiszámíthatóan javul:

  • A modell mérete (paraméterek száma).
  • Az adatok mennyisége.
  • A számítási erőforrások.

Ezek az empirikus összefüggések, amelyek skálázási törvényként ismertek, útmutatóul szolgálnak a fejlesztők számára nagyobb és hatékonyabb modellek tervezésekor és tanításakor, lehetővé téve a számítási keret optimális elosztását.

Kihívások és eredmények

  • Skálázás: Az előtanítás fő eredménye a modell méretének, adatainak és számítási erőforrásainak egyensúlyba hozása az optimális teljesítmény eléréséhez.
  • Adatminőség: A tanítási adatok tisztaságának, változatosságának és elfogulatlanságának biztosítása kulcsfontosságú kihívás.
  • Hatékonyság: A számítási költségek csökkentésére szolgáló módszerek kidolgozása, mint például a folyamatos előtanítás vagy a hatékonyabb architektúrák.
  • Többnyelvűség: A több nyelvet hatékonyan kezelni képes modellek létrehozása gondos adatválasztást és egyensúlyozást igényel.

Lásd még

  • Nagy nyelvi modellek
  • BERT
  • GPT