Перплексия
Материал из MachineLearning.
(Новая: {{well|Статья написана с использованием LLM '''Claude Opus 4.8''' и проверена участником ~~~~}} {{TOCright}} '''Перплексия''' ...) |
|||
| (1 промежуточная версия не показана) | |||
| Строка 1: | Строка 1: | ||
| - | {{well|Статья написана с использованием LLM '''Claude Opus 4.8''' и проверена участником [[Участник:Iaroslav Lyakhov|Iaroslav Lyakhov]] | + | {{well|Статья написана с использованием LLM '''Claude Opus 4.8''' и проверена участником [[Участник:Iaroslav Lyakhov|Iaroslav Lyakhov]] 12:35, 6 июля 2026 (MSD)}} |
{{TOCright}} | {{TOCright}} | ||
| - | '''Перплексия''' (англ. ''perplexity'') - мера качества вероятностной [[Языковая модель|языковой модели]], показывающая, насколько хорошо модель предсказывает текст. Неформально перплексия - это среднее число равновероятных вариантов, между которыми модель «колеблется» на каждом шаге. Чем ниже перплексия, тем увереннее и точнее модель предсказывает следующий [[Токенизация|токен]]. Это | + | '''Перплексия''' (англ. ''perplexity'') - мера качества вероятностной [[Языковая модель|языковой модели]], показывающая, насколько хорошо модель предсказывает текст. Неформально перплексия - это среднее число равновероятных вариантов, между которыми модель «колеблется» на каждом шаге. Чем ниже перплексия, тем увереннее и точнее модель предсказывает следующий [[Токенизация|токен]]. Это одна из старейших и самых распространённых метрик для сравнения [[Большая языковая модель|языковых моделей]]. |
== Определение == | == Определение == | ||
| - | Для последовательности <tex>W = w_1 w_2 \dots w_N</tex> перплексия определяется как экспонента от средней отрицательной логарифмической вероятности (кросс-энтропии): | + | Для последовательности <tex>W = w_1 w_2 \dots w_N</tex> перплексия определяется как экспонента от средней отрицательной логарифмической вероятности (то есть от кросс-энтропии): |
::<tex>\mathrm{PPL}(W) = \exp\!\left(-\frac{1}{N}\sum_{i=1}^{N} \ln P(w_i \mid w_1,\dots,w_{i-1})\right)</tex> | ::<tex>\mathrm{PPL}(W) = \exp\!\left(-\frac{1}{N}\sum_{i=1}^{N} \ln P(w_i \mid w_1,\dots,w_{i-1})\right)</tex> | ||
| - | Эквивалентно, <tex>\mathrm{PPL} = b^{H}</tex>, где <tex>H</tex> - кросс-энтропия в логарифме по основанию <tex>b</tex>. Таким образом, перплексия - это просто экспонента средней [[Функция потерь|функции потерь]] (логарифмических потерь), которую модель и минимизирует при обучении по принципу [[Минимизация эмпирического риска|минимизации эмпирического риска]]. | + | Эквивалентно, <tex>\mathrm{PPL} = b^{H}</tex>, где <tex>H</tex> - кросс-энтропия (средняя длина кодирования одного токена), измеренная в логарифме по основанию <tex>b</tex>. Таким образом, перплексия - это просто экспонента средней [[Функция потерь|функции потерь]] (логарифмических потерь), которую модель и минимизирует при обучении по принципу [[Минимизация эмпирического риска|минимизации эмпирического риска]]. Именно поэтому перплексия - естественная метрика: она напрямую связана с той величиной, которую оптимизируют. |
| + | |||
| + | == Связь с энтропией == | ||
| + | Перплексия тесно связана с понятием энтропии из теории информации. Кросс-энтропия <tex>H</tex> - это среднее число «бит удивления» (при основании 2) на один токен, а перплексия <tex>2^{H}</tex> переводит это число в «эффективное число вариантов». Ещё Клод Шеннон в 1951 году оценивал энтропию английского текста, предсказывая следующую букву, - это прямой предшественник современной перплексии. | ||
== Интерпретация == | == Интерпретация == | ||
| - | * ''' | + | * '''Степень удивления.''' Перплексия 1 означает идеальное предсказание (модель всегда уверена в правильном токене). Перплексия <tex>k</tex> примерно соответствует ситуации, когда на каждом шаге модель выбирает из <tex>k</tex> одинаково вероятных вариантов. Например, модель, для которой следующий символ равновероятен среди шести исходов (как бросок честной игральной кости), имеет перплексию 6. |
| - | * '''Верхняя граница.''' Для словаря размера <tex>V</tex> модель, дающая равномерное распределение, имеет перплексию <tex>V</tex>. | + | * '''Верхняя граница.''' Для словаря размера <tex>V</tex> модель, дающая равномерное распределение (то есть ничего не выучившая), имеет перплексию <tex>V</tex>. Любая осмысленная модель должна быть заметно ниже. |
| - | + | ||
| + | == Пример расчёта == | ||
| + | Пусть модель на каждом из <tex>N</tex> шагов присваивала действительно случившемуся токену вероятность <tex>1/10</tex>. Тогда средняя отрицательная лог-вероятность равна <tex>-\ln(1/10) = \ln 10</tex>, а перплексия <tex>\exp(\ln 10) = 10</tex>. Если бы модель предсказывала уверенно и присваивала верному токену вероятность <tex>1/2</tex>, перплексия составила бы 2. | ||
== Ограничения == | == Ограничения == | ||
| - | * '''Зависимость от токенизации и словаря.''' Перплексии двух моделей сравнимы, только если у них одинаковый [[Токенизация|токенизатор]] и тестовый набор. Модель с более дробной токенизацией | + | * '''Зависимость от токенизации и словаря.''' Перплексии двух моделей сравнимы, только если у них одинаковый [[Токенизация|токенизатор]] и один и тот же тестовый набор. Модель с более дробной токенизацией показывает другие значения, и «улучшение» может оказаться артефактом словаря. |
| - | * '''Не измеряет полезность.''' Низкая перплексия говорит о хорошем моделировании распределения текста, но не гарантирует фактическую точность, отсутствие [[Галлюцинация|галлюцинаций]] или полезность ответов. Поэтому | + | * '''Не измеряет полезность.''' Низкая перплексия говорит о хорошем моделировании распределения текста, но не гарантирует фактическую точность, отсутствие [[Галлюцинация|галлюцинаций]] или полезность ответов. Модель может складно продолжать текст и при этом ошибаться по сути. Поэтому прикладное качество оценивают отдельными бенчмарками и разметкой людей. |
| - | * '''Неприменима к некоторым моделям.''' Для моделей, не задающих явного авторегрессионного распределения (например, ряда маскированных или диффузионных), перплексия определяется иначе или неинформативна. | + | * '''Неприменима к некоторым моделям.''' Для моделей, не задающих явного авторегрессионного распределения (например, ряда маскированных или диффузионных), перплексия определяется иначе (псевдо-перплексия) или неинформативна. |
== Применение == | == Применение == | ||
| - | * Мониторинг обучения | + | * '''Мониторинг обучения.''' Падение перплексии на отложенной выборке - главный признак прогресса при предобучении. |
| - | * | + | * '''Законы масштабирования.''' [[Закон масштабирования нейронных сетей|Законы масштабирования]] формулируются именно через потери и перплексию: они степенным образом убывают с ростом модели, данных и вычислений. |
| - | * Обнаружение сдвига домена | + | * '''Обнаружение сдвига домена.''' Резкий рост перплексии на новых данных сигнализирует, что текст «непривычен» модели (другой язык, стиль, тема). |
== См. также == | == См. также == | ||
* [[Большая языковая модель]] | * [[Большая языковая модель]] | ||
* [[Токенизация]] | * [[Токенизация]] | ||
| + | * [[Функция потерь]] | ||
* [[Закон масштабирования нейронных сетей]] | * [[Закон масштабирования нейронных сетей]] | ||
* [[Галлюцинация]] | * [[Галлюцинация]] | ||
== Литература == | == Литература == | ||
| - | * {{статья |автор=Jelinek F., Mercer R. L., Bahl L. R., Baker J. K. | | + | * {{статья |автор=Shannon C. E. |заглавие=Prediction and Entropy of Printed English |издание=Bell System Technical Journal |том=30 |номер=1 |страницы=50-64 |год=1951}} |
| - | * {{книга |автор=Jurafsky D., Martin J. H. |заглавие=Speech and Language Processing |издание=3-е изд. (черновик) |год= | + | * {{статья |автор=Jelinek F., Mercer R. L., Bahl L. R., Baker J. K. |заглавие=Perplexity - a measure of the difficulty of speech recognition tasks |издание=Journal of the Acoustical Society of America |том=62 |номер=S1 |страницы=S63 |год=1977}} |
| + | * {{книга |автор=Jurafsky D., Martin J. H. |заглавие=Speech and Language Processing |издание=3-е изд. (черновик от 24 августа 2025) |год=2025 |ссылка=https://web.stanford.edu/~jurafsky/slp3/}} | ||
[[Категория:Машинное обучение]] | [[Категория:Машинное обучение]] | ||
[[Категория:Анализ текстов]] | [[Категория:Анализ текстов]] | ||
Текущая версия
| | Статья написана с использованием LLM Claude Opus 4.8 и проверена участником Iaroslav Lyakhov 12:35, 6 июля 2026 (MSD) |
|
Перплексия (англ. perplexity) - мера качества вероятностной языковой модели, показывающая, насколько хорошо модель предсказывает текст. Неформально перплексия - это среднее число равновероятных вариантов, между которыми модель «колеблется» на каждом шаге. Чем ниже перплексия, тем увереннее и точнее модель предсказывает следующий токен. Это одна из старейших и самых распространённых метрик для сравнения языковых моделей.
Определение
Для последовательности перплексия определяется как экспонента от средней отрицательной логарифмической вероятности (то есть от кросс-энтропии):
Эквивалентно, , где
- кросс-энтропия (средняя длина кодирования одного токена), измеренная в логарифме по основанию
. Таким образом, перплексия - это просто экспонента средней функции потерь (логарифмических потерь), которую модель и минимизирует при обучении по принципу минимизации эмпирического риска. Именно поэтому перплексия - естественная метрика: она напрямую связана с той величиной, которую оптимизируют.
Связь с энтропией
Перплексия тесно связана с понятием энтропии из теории информации. Кросс-энтропия - это среднее число «бит удивления» (при основании 2) на один токен, а перплексия
переводит это число в «эффективное число вариантов». Ещё Клод Шеннон в 1951 году оценивал энтропию английского текста, предсказывая следующую букву, - это прямой предшественник современной перплексии.
Интерпретация
- Степень удивления. Перплексия 1 означает идеальное предсказание (модель всегда уверена в правильном токене). Перплексия
примерно соответствует ситуации, когда на каждом шаге модель выбирает из
одинаково вероятных вариантов. Например, модель, для которой следующий символ равновероятен среди шести исходов (как бросок честной игральной кости), имеет перплексию 6.
- Верхняя граница. Для словаря размера
модель, дающая равномерное распределение (то есть ничего не выучившая), имеет перплексию
. Любая осмысленная модель должна быть заметно ниже.
Пример расчёта
Пусть модель на каждом из шагов присваивала действительно случившемуся токену вероятность
. Тогда средняя отрицательная лог-вероятность равна
, а перплексия
. Если бы модель предсказывала уверенно и присваивала верному токену вероятность
, перплексия составила бы 2.
Ограничения
- Зависимость от токенизации и словаря. Перплексии двух моделей сравнимы, только если у них одинаковый токенизатор и один и тот же тестовый набор. Модель с более дробной токенизацией показывает другие значения, и «улучшение» может оказаться артефактом словаря.
- Не измеряет полезность. Низкая перплексия говорит о хорошем моделировании распределения текста, но не гарантирует фактическую точность, отсутствие галлюцинаций или полезность ответов. Модель может складно продолжать текст и при этом ошибаться по сути. Поэтому прикладное качество оценивают отдельными бенчмарками и разметкой людей.
- Неприменима к некоторым моделям. Для моделей, не задающих явного авторегрессионного распределения (например, ряда маскированных или диффузионных), перплексия определяется иначе (псевдо-перплексия) или неинформативна.
Применение
- Мониторинг обучения. Падение перплексии на отложенной выборке - главный признак прогресса при предобучении.
- Законы масштабирования. Законы масштабирования формулируются именно через потери и перплексию: они степенным образом убывают с ростом модели, данных и вычислений.
- Обнаружение сдвига домена. Резкий рост перплексии на новых данных сигнализирует, что текст «непривычен» модели (другой язык, стиль, тема).
См. также
- Большая языковая модель
- Токенизация
- Функция потерь
- Закон масштабирования нейронных сетей
- Галлюцинация
Литература
- Shannon C. E. Prediction and Entropy of Printed English // Bell System Technical Journal. — 1951. — Т. 30. — № 1. — С. 50-64.
- Jelinek F., Mercer R. L., Bahl L. R., Baker J. K. Perplexity - a measure of the difficulty of speech recognition tasks // Journal of the Acoustical Society of America. — 1977. — Т. 62. — № S1. — С. S63.
- Jurafsky D., Martin J. H. Speech and Language Processing. — 3-е изд. (черновик от 24 августа 2025). — 2025.

