TL;DR: Используйте несколько метрик: автоматические + ручную проверку; избегайте переобучения на тестовую выборку.

Контекст

Одна метрика редко отражает полезность. Комбинируйте автоматические метрики с ручной проверкой и привязкой к задаче.

Шаги

  1. Определите, что именно измерять и зачем.
  2. Выберите несколько метрик и эталонные наборы.
  3. Постройте автоматическую оценку.
  4. Добавьте ручную проверку и регрессионные тесты.

Пример

# Заготовка регрессионного теста
def judge(pred, ref):
    return int(pred.strip().lower() == ref.strip().lower())

Ошибки и подводные камни

  • Опираться на одну метрику.
  • Подгонка под тестовую выборку.

Что измерять

  • Корреляция метрик с human-eval, воспроизводимость.

Ресурсы

  • Репозитории с кодом, учебники и документация по теме. Заполняйте собственными ссылками по мере работы.