Оценка качества языковых моделей
Языковая модель (language model) - это модель, предсказывающая вероятности появления слов или других токенов, из которых состоит текст.
Языковая модель способна генерировать текст за счёт итеративного предсказания следующих слов текста по предыдущим. В этой главе мы рассмотрим методы оценки качества работы языковых моделей, генерирующих тексты.
Для этого языковую модель применяют к реальным текстам и смотрят, насколько реальные слова текста оказываются вероятны согласно предсказанному распределению вероятностей слов, либо насколько согласовываются некоторые характеристики реальных и сгенерированных текстов.
Далее будем обозначать реальный текст как последовательность из слов:
Средний логарифм правдоподобия
Качество языковой модели можно оценивать как средний логарифм вероятности пронаблюдать слова (согласно вероятностям, предсказанным моделью), встретившиеся в естественном тексте:
Чем он выше, тем более высокую вероятность модель сопоставляет реальному тексту и тем лучше с ним согласуется.
Перплексия
Исторически для оценки качества моделей более распространена перплексия (perplexity [1]), являющаяся нелинейной трансформацией от среднего логарифма правдоподобия:
Её можно представить в эквивалентном виде как величину, обратную к среднему геометрическому модельных вероятностей:
Из последнего представления видно, что перплексию можно интерпретировать как среднее число вариантов следующего слова, которые рассматривает модель при условии, что истинное слово попадает в эти варианты.
Перплексия принимает значения от единицы до . Поскольку это убывающая функция от правдоподобия выборки, то чем она меньше, тем лучше прогнозы модели согласуются с реальными текстами.
-
В идеале каждому следующему слову назначается единичная вероятность. В этом случае перплексия равна 1.
-
В худшем случае модель назначает нулевую вероятность следующим словам. Тогда перплексия равна бесконечности.
-
Базовым уровнем перплексии является случай, когда модель случайно угадывает слова среди всех слов языка, назначая каждому вероятность . В этом случае перплексия равна .
ROUGE
Мера ROUGE (Recall-Oriented Understudy for Gisting Evaluation [2]) оценивает качество сгенерированного текста, анализируя, насколько часто n-граммы этого текста (последовательности из подряд идущих слов) встречаются в реальном тексте. Существуют различные варианты этой меры:
-
ROUGE-N [3] сравнивает пересечение n-грамм в сгенерированном и реальном тексте.
- Например, ROUGE-1 вычисляет похожесть множества слов в реальном и сгенерированном тексте. А ROUGE-2 рассчитывает уже сходство биграмм, т.е. наборов из двух подряд идущих слов.
-
ROUGE-L [4] вычисляется, используя длину наибольшей общей подпоследовательности слов (longest common subsequence) между сгенерированным и реальным текстом.
Общую подпоследовательность не следует смешивать с общей подстрокой. Если в общей подстроке слова должны идти в точности одинаково в первом и втором тексте, то в общей подпоследовательности слова могут идти со вставками других слов. Главное - чтобы они шли в одной и той же последовательности, то есть сохранялась одинаковая очерёдность слов в обоих текстах.
Существуют и другие варианты, такое как ROUGE-W и ROUGE-S [5].