Перплексия: как измерить качество языковой модели
перплексия — это экспонента средней кросс-энтропии, то есть мера того, насколько модель удивлена тестовым текстом.
Зачем это нужно
Правдоподобие текста падает с ростом длины, поэтому сравнивать тексты разной длины напрямую нельзя. Перплексия нормирует его на число токенов.
Как это работает
Для тестового текста из T токенов перплексия равна обратному корню T-й степени из вероятности текста. Логарифм этого выражения совпадает со средней кросс-энтропией, поэтому перплексия есть экспонента средней потери. Чем ниже перплексия, тем лучше модель предсказывает слова.
Есть важная оговорка: перплексия зависит от токенизатора. Количество токенов меняется от способа разбиения, поэтому сравнивать перплексии разных моделей корректно, только если у них один токенизатор.
Пример
Для фразы из четырёх слов с условными вероятностями 0.0001, 0.0002, 0.000005 и 0.0000001 перплексия считается как обратный корень четвёртой степени из их произведения. Источник предлагает это как упражнение, итоговое число в тексте не приводится.
Что запомнить
- Перплексия = exp(средняя кросс-энтропия).
- Чем ниже перплексия, тем лучше модель.
- Сравнивать перплексию корректно только при одинаковом токенизаторе.
Где читать дальше
- SLP3, гл. 7 «Transformers and Pretraining», раздел 7.7.1