Perplexity (metric) (NL)
Perplexiteit (Engels: Perplexity, PPL) is in de informatietheorie en het machine learning een maatstaf voor de onzekerheid of 'verrassing' van een taalmodel bij het voorspellen van een tekststeekproef. Een lage perplexiteit geeft aan dat de kansverdelings van het model goed overeenkomt met de testdata, terwijl een hoge perplexiteit betekent dat het model de reeks slecht voorspelt[1].
Formeel wordt de perplexiteit van een kansverdeling gedefinieerd als de exponent van de entropie ervan. Voor een discrete verdeling is zij gelijk aan , waarbij de entropie is[2]. Intuïtief kan perplexiteit worden begrepen als het 'effectieve' aantal keuzes waaruit het model bij elke stap kiest. Als de perplexiteit gelijk is aan 100, betekent dit dat de onzekerheid van het model overeenkomt met het kiezen uit 100 gelijkwaardige uitkomsten[3].
De term werd voor het eerst geïntroduceerd in 1977 door een groep onderzoekers van IBM onder leiding van Frederick Jelinek, in de context van statistische spraakherkenning, om de 'moeilijkheidsgraad' van een taak kwantitatief te beschrijven[4].
Perplexiteit in taalmodellen
Binnen het vakgebied van Natural Language Processing (NLP) is perplexiteit uitgegroeid tot een standaard interne (intrinsic) metriek voor de evaluatie van de kwaliteit van taalmodellen. Het meet hoe goed een model een reeks woorden of tokens in een testdataset voorspelt.
Formele definitie
Voor een testcorpus en een taalmodel wordt de perplexiteit berekend als de inverse geometrisch gemiddelde kans van het testcorpus, genormaliseerd naar het aantal woorden:
Deze formule is equivalent aan de exponent van de kruisentropie, of de gemiddelde logaritmische verlies (negative log-likelihood):
Minimalisatie van perplexiteit is equivalent aan maximalisatie van de aannemelijkheid (likelihood) van het model op de testdata. Een model met een lagere perplexiteit wordt daardoor als statistisch nauwkeuriger beschouwd[5].
Historisch gebruik en moderne LLM's
Historisch gezien werd perplexiteit veel gebruikt voor de evaluatie van statistische n-gram-modellen. Voor het Wall Street Journal-corpus heeft een unigrammodel (dat alleen woordfrequenties in aanmerking neemt) bijvoorbeeld een perplexiteit van ~962, terwijl een trigrammodel (dat de context van de twee voorgaande woorden meeneemt) een perplexiteit van ongeveer 109 haalt[6]. Deze sterke daling toont aan hoeveel beter het model taalpatronen weet te vatten.
Met de opkomst van grote taalmodellen (LLM's) heeft perplexiteit haar rol als basisreferentiepunt behouden. Onderzoekers rapporteren perplexiteit op standaard testsets (zoals WikiText) als een indicator van de 'vloeiendheid' van het model. Zo vermeldt het artikel van OpenAI over GPT-2 dat het model met ~117 miljoen parameters een perplexiteit van ongeveer 37 behaalt op het WikiText-103-corpus[7]. Een afname van de perplexiteit correleert doorgaans met een verbetering van de modelkwaliteit, waardoor de metriek een handig voortgangsindicator is bij training en optimalisatie.
Beperkingen en interpretatie van de metriek
Hoewel een lage perplexiteit wijst op een hoge aannemelijkheid van de data volgens het model, kent deze metriek een aantal wezenlijke beperkingen en correleert zij niet altijd met de werkelijke kwaliteit van de gegenereerde tekst.
- Lage perplexiteit ≠ hoge kwaliteit. Perplexiteit meet de zekerheid van het model in zijn voorspellingen, maar niet de juistheid ervan. Een model kan zelfverzekerd de fout ingaan en zinloze maar statistisch waarschijnlijke tekst genereren (bijvoorbeeld door zeer frequente woorden en zinnen te herhalen)[3].
- Gevoeligheid voor data en tokenisatie. Perplexiteit is slecht geschikt voor directe vergelijking van modellen met verschillende architecturen, vocabulaires of tokenisatiemethoden. Zo kan een tekengebaseerd model numeriek een lagere perplexiteit hebben dan een woordgebaseerd model, maar dat betekent niet dat het beter presteert op taaltaken[3].
- Onvermogen om semantiek en lange context te beoordelen. Perplexiteit is een lokale metriek die de voorspelling van het volgende token evalueert. Zij correleert slechts zwak met het vermogen van een model om langetermijnafhankelijkheden en inhoudelijke context over grotere afstanden te vatten. Onderzoek uit 2023 (Hu et al.) toonde aan dat het vermogen van LLM's om lange teksten (tot 100.000 tokens) te begrijpen nauwelijks zichtbaar is in de perplexiteitsmetriek[8].
- Mogelijkheid tot manipulatie. De metriek is te 'misleiden'. Een overgefit model zal een kunstmatig lage perplexiteit vertonen op data die het heeft 'onthouden'. Onderzoek (Wang et al., 2022) heeft ook aangetoond dat het dupliceren van tekstfragmenten of zelfs het weglaten van een punt aan het einde van een zin de perplexiteit onterecht kan verlagen of verhogen, zonder enige invloed op de werkelijke tekstkwaliteit[9].
Conclusie: de rol van perplexiteit vandaag
Gezien de genoemde beperkingen wordt perplexiteit in de hedendaagse praktijk beschouwd als een aanvullende, voorlopige indicator van de kwaliteit van een taalmodel. Het blijft een waardevol instrument voor snelle evaluatie en foutopsporing in modellen, omdat het onafhankelijk is van een specifieke toepassingstaak en eenvoudig te berekenen is[3].
Voor een volledige beoordeling van LLM's is perplexiteit alleen echter niet voldoende. Tegenwoordig wordt het verplicht aangevuld met externe (extrinsic) metrieken die zijn gekoppeld aan specifieke taken, zoals:
- Nauwkeurigheid bij het beantwoorden van vragen;
- Menselijke beoordeling (human evaluation);
- BLEU/ROUGE voor machinaal vertalen en samenvatten.
In combinatie met deze methoden vervult perplexiteit nog steeds een belangrijke rol — namelijk als objectieve maatstaf voor de 'verrassing' van het model — maar de resultaten worden altijd geïnterpreteerd met inachtneming van de genoemde beperkingen[3].
Verwijzingen
- Artikel 'Perplexiteit in taalmodellen' op Habr
- Documentatie van Hugging Face over het berekenen van perplexiteit
Literatuur
- 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 (3e uitg., hfst. 3: 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.
Noten
- ↑ «Перплексия». Википедия. [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]