Perplexity (metric) (HU)
Perplexitás (angol: Perplexity, PPL) az információelméletben és a gépi tanulásban a nyelvi modell bizonytalanságának vagy „meglepettségének" mérőszáma egy szövegminta előrejelzésekor. Az alacsony perplexitás azt jelzi, hogy a modell valószínűségi eloszlása jól illeszkedik a tesztadatokhoz, míg a magas perplexitás azt jelenti, hogy a modell rosszul jósolja meg a sorozatot[1].
Formálisan a valószínűségi eloszlás perplexitása az eloszlás entrópiájának exponenciálisa. Diszkrét eloszlás esetén értéke , ahol az entrópia[2]. Szemléletesen a perplexitás úgy értelmezhető, mint a lehetséges kimeneteleknek az a „tényleges" száma, amelyek közül a modell minden lépésben választ. Ha a perplexitás értéke 100, az azt jelenti, hogy a modell bizonytalansága egyenértékű 100 egyforma valószínűségű kimenetel közüli választással[3].
A fogalmat 1977-ben vezette be az IBM kutatócsoportja Frederick Jelinek vezetésével, a statisztikai beszédfelismerés kontextusában, a feladat „nehézségének\" számszerűsítésére[4].
Perplexitás a nyelvi modellekben
A természetes nyelvi feldolgozás (NLP) területén a perplexitás a nyelvi modellek minőségének értékelésére szolgáló belső (intrinsic) standard mérőszámmá vált. Azt méri, hogy a modell mennyire jól jósolja meg a szavak vagy tokenek sorozatát egy tesztadathalmazban.
Formális definíció
Egy tesztkorpusz és egy nyelvi modell esetén a perplexitást a tesztkorpusz fordított átlagos mértani valószínűségeként számítják ki, szavak számára normalizálva:
Ez a képlet ekvivalens a keresztentrópia, vagyis az átlagos logaritmikus veszteség (negative log-likelihood) exponenciálisával: Failed to parse (syntax error): {\displaystyle ext{PP}(W, q) = \exp\left(-\frac{1}{N}\sum_{i=1}^{N} \log q(w_i \mid ext{контекст})\right) }
A perplexitás minimalizálása ekvivalens a modell valószínűségének maximalizálásával a tesztadatokon. Így az alacsonyabb perplexitású modell statisztikailag pontosabbnak tekinthető[5].
Korábbi alkalmazások és a modern LLM-ek
Történetileg a perplexitást széles körben alkalmazták a statisztikai n-gram modellek értékelésére. Például a Wall Street Journal korpuszán az unigrammos modell (csak a szógyakoriságokat figyelembe vevő) perplexitása ~962, míg a trigrammos modellé (két előző szó kontextusát figyelembe vevő) körülbelül 109[6]. Ez az éles csökkenés megmutatja, mennyivel jobban ragadja meg a modell a nyelvi törvényszerűségeket.
A nagy nyelvi modellek (LLM) fejlődésével a perplexitás megőrizte alapmérőszám-szerepét. A kutatók standard teszthalmazokon (például WikiText) közlik a perplexitást a modell „gördülékenységének" mutatójaként. Az OpenAI GPT-2-ről szóló cikkében például szerepel, hogy a ~117 millió paraméteres modell kb. 37-es perplexitást ér el a WikiText-103 korpuszon[7]. A perplexitás csökkenése általában korrelál a modellek minőségének javulásával, ezért a mérőszám kényelmes előrehaladási mutatóként szolgál a tanítás és az optimalizálás során.
A mérőszám korlátai és értelmezése
Bár az alacsony perplexitás a modell szerinti magas adatvalószínűséget jelez, ennek a mutatónak számos lényeges korlátja van, és nem mindig korrelál a generált szöveg tényleges minőségével.
- Alacsony perplexitás ≠ magas minőség. A perplexitás a modell bizalmát méri az előrejelzéseiben, nem azok helyességét. A modell magabiztosan lehet téves, értelmetlen, de statisztikailag valószínű szöveget generálva (például nagyon gyakori szavakat és fordulatokat ismételve)[3].
- Érzékenység az adatokra és a tokenizálásra. A perplexitás rosszul alkalmas különböző architektúrájú, szókincsű vagy tokenizálású modellek közvetlen összehasonlítására. Például egy karakterszintű modell perplexitása numerikusan alacsonyabb lehet, mint egy szószintű modellé, ez azonban nem jelenti azt, hogy a nyelvi feladatokat jobban oldja meg[3].
- Képtelenség a szemantika és a hosszú kontextus értékelésére. A perplexitás lokális mérőszám, amely a következő token előrejelzését értékeli. Gyengén korrelál a modell azon képességével, hogy hosszú távú függőségeket és szemantikai kontextust fogjon meg nagy távolságokon. Egy 2023-as tanulmány (Hu et al.) kimutatta, hogy az LLM-ek hosszú szövegek megértésére vonatkozó képessége (akár 100 ezer tokenig) szinte egyáltalán nem tükröződik a perplexitás mérőszámában[8].
- Manipuláció lehetősége. A mérőszám „becsapható". Az túlillesztett modell mesterségesen alacsony perplexitást mutat az „emlékezetébe vésett" adatokon. Kutatások (Wang et al., 2022) azt is megmutatták, hogy szövegrészletek sokszorosítása, vagy akár a mondatzáró pont hiánya indokolatlanul csökkentheti vagy növelheti a perplexitást anélkül, hogy a szöveg tényleges minőségét befolyásolná[9].
Összegzés: a perplexitás szerepe napjainkban
A felsorolt korlátok figyelembevételével a perplexitást a modern gyakorlatban a nyelvi modell minőségének kisegítő, előzetes mutatójaként kezelik. Értékes eszköz marad a modellek gyors értékeléséhez és hibakereséséhez, mivel nem függ konkrét alkalmazási feladattól, és egyszerűen kiszámítható[3].
Azonban az LLM-ek teljes körű értékeléséhez a perplexitás önmagában nem elegendő. Ma szükségszerűen kiegészítik konkrét feladatokhoz kötött külső (extrinsic) mérőszámokkal, mint például:
- Kérdések megválaszolásának pontossága;
- Emberi értékelés (human evaluation);
- BLEU/ROUGE gépi fordításhoz és összefoglaláshoz.
Ezekkel a módszerekkel együtt a perplexitás továbbra is fontos szerepet tölt be — a modell „meglepettségének\" objektív mértékeként szolgál, eredményeit azonban mindig a fent említett korlátok figyelembevételével értelmezik[3].
Hivatkozások
- „Perplexitás a nyelvi modellekben" című cikk a Habre-n
- Hugging Face dokumentáció a perplexitás kiszámításához
Irodalom
- Jelinek, F., Bahl, L. R., & Mercer, R. L. (1977). Perplexity — a Measure of the Difficulty of Speech Recognition Tasks. JASA:62(S1):S63.
- Jurafsky, D., & Martin, J. H. (2021). Speech and Language Processing (3. kiad., 3. fejezet: N-gram Language Models). PDF.
- Radford, A. et al. (2019). Language Models are Unsupervised Multitask Learners. OpenAI white paper.
- Brown, T. B. et al. (2020). Language Models are Few-Shot Learners. arXiv:2005.14165.
- Kaplan, J. et al. (2020). Scaling Laws for Neural Language Models. arXiv:2001.08361.
- Wang, C. et al. (2022). Perplexity by PLM Is Unreliable for Evaluating Text Quality. arXiv:2210.05892.
- Meister, C., & Cotterell, R. (2021). Language Model Evaluation Beyond Perplexity. arXiv:2106.00085.
- Hu, Y. et al. (2024). Can Perplexity Reflect Large Language Model's Ability in Long Text Understanding?. arXiv:2405.06105.
- Lazaridou, A. et al. (2021). Mind the Gap: Assessing Temporal Generalization in Neural Language Models. NeurIPS 2021.
Megjegyzések
- ↑ «Перплексия». Википедия. [1]
- ↑ «Perplexity». Wikipedia. [2]
- ↑ 3.0 3.1 3.2 3.3 3.4 Morgan, Abby. «Perplexity for LLM Evaluation». Comet AI Blog, 21 Nov 2024. [3]
- ↑ «README.md · evaluate-measurement/perplexity». Hugging Face. [4]
- ↑ Jurafsky, Dan, and James H. Martin. Speech and Language Processing, 3rd ed., Chapter 3: N-gram Language Models, draft (2021). [5]
- ↑ Jurafsky, Dan, and James H. Martin. Speech and Language Processing, 3rd ed., Chapter 3: N-gram Language Models, draft (2021). [6]
- ↑ «Perplexity number of wikitext-103 on gpt-2 don't match the paper». GitHub, huggingface/transformers, Issue #483. [7]
- ↑ Hu, H., et al. «Can Perplexity Reflect Large Language Model's Ability in Long Text Understanding?». arXiv:2405.06105 [cs.CL], 10 мая 2024 г. [8]
- ↑ Wang, C., et al. «Perplexity by PLM Is Unreliable for Evaluating Text Quality». arXiv:2210.05892 [cs.CL], 12 окт. 2022 г. [9]