📊 Как оценивать LLM: метрики [Ч.1]
🤖 Оценка языковых моделей также необходима, как и при работе с классическими ML-моделями. Однако, в случае с LLM задача усложняется тем, что мы должны оценивать текстовые данные.
💯 В этой части поста мы расскажем про наиболее популярные NLP-метрики для оценки языковых моделей, а уже в следующем посте поговорим про более продвинутые техники, включая бенчмарки.
❓ А в чем, собственно, отличие между метриками и бенчмарками:
Метрики - используются для измерения конкретных навыков аспектов работы модели (например, точность перевода с русского на английский) или могут использоваться, как часть бенчмарка.
Бенчмарки же — это наборы тестов, которые обычно включают множество задач и способов их оценок (метрик). Бенчмарки дают более масштабную оценку качества работы моделей, не в рамках отдельной задачи.
Поговорим про статистические метрики:
1️⃣ Перплексия:
Перплексия показывает, насколько точно модель предсказывает следующий токен: чем ниже значение, тем уверенее предсказание.
Например, если перплексия равна 1000, это означает, что модель в среднем имеет 1000 равновероятных вариантов для каждого следующего слова, что указывает на плохое качество предсказаний. Через перплексию в LLM можно определить галлюцинации, хоть и сама метрика не всегда коррелирует с качеством генерации текста.
Более подробно про перплексию и формулу данной меры читайте тут.
2️⃣ BLEU и ROUGE:
О данных метриках мы писали в одном из вопросов недавнего квиза (п.5) и оставляли хорошие материалы для изучения, советуем вернуться и ознакомиться.
3️⃣ METEOR:
Данная метрика создавалась, как улучшенная альтернатива BLEU, которая учитывает не только точное совпадение слов в сгенерированном тексте с эталонными примерами, но и их синонимы и морфологические варианты, что делает её более гибкой и устойчивой к разнообразным формулировкам. В добавок, метрика выдает штраф за неправильную фрагментацию текста и неверный порядок слов. Подробно про методику расчет METEOR смотрите в этом видео.
4️⃣ Классические ML-метрики:
Оценивать текст можно также, как и числа, используя ML-метрики. Например, посчитать количество слов (токенов) в сгенерированном примере, вошедшие в эталонный пример - accuracy. Или посчитать recall через количество слов, вошедшие в эталонный пример (TP), но, учитывая недостающие токены (FN).
Теперь поговорим про model-based метрики:
5️⃣ BERTScore:
Данная метрика в процессе расчета использует BERT-модели, чтобы через векторные представления слов в предложении оценивать схожесть текстов. Кратко процесс оценки выглядит следующим образом: получение эмбеддингов для каждого слова в сгенерированном и эталонном текстах с помощью BERT. И затем (в упрощенном виде) по косинусному сходству токены из сгенерированного текста сопоставляются с токенами эталонного текста, после чего высчитывается Recall-BERT, Precision-BERT F-BERT. Более детально про архитектуру подсчета BERTScore читайте тут.
6️⃣ G-Eval:
G-Eval (Generative Evaluation) создан для того, чтобы преодолеть ограничения статистических метрик (неустойчивость к формулировкам, разные длины сравниваемых текстов, непренимость к сложным задачам). В G-Eval в виде оценщика используются другие GPT-модели, например, GPT-4 от OpenAI. Оценка проводится через сравнительный анализ сгенерированного текста и эталонного примера по заранее выбранным критериям (согласованность, точность и т.д.).
🔥 Однако, это не весь список метрик, с помощью которых можно оценивать LLM, дополнительно читайте тут:
- Серия постов на Хабре про эволюцию NLP-метрик
- Ещё две статьи тут и тут про метрики, фреймворки и лучшие практики для оценки LLM.
- Отличная статья для погружения в бечнмаркинг LLM
- Статья с объяснением подхода "LLM-as-a-Judge" (LLM, как судья) [ENG]
- Evaluating-Cookbook - руководство по оценке LLM, созданное командой Hugging Face.
Ставьте ❤️ и 🔥 под постом!
Также пишите свои комментарии и вопросы! До встречи👋
Post #550
6.57K
- ❤ 17
- 👍 7
- 🔥 6