SmolLM reward model

Сначала обучил reward-модель для PPO. За основу взял SmolLM-135M-Instruct и пары chosen/rejected из HumanLLMs. Обновлял только голову score, то есть 576 параметров, остальные веса заморозил

Как обучал

Параметр Значение
GPU A100 80 ГБ
Train / test 9790 / 1089 пар
Эпохи 1
Шаги 612
Batch size 16
Learning rate 3e-4
Максимальная длина 1024 токена
Seed 42
Время обучения 150,55 с, около 2 мин 31 с

После разбиения в train было 9795 пар. Пять слишком длинных примеров RewardTrainer отфильтровал, осталось 9790. В test осталось 1089 пар

Для паддинга добавил отдельный [PAD], потому что EOS встречается и внутри диалога. После этого в словаре 49153 токена. Модель нужно загружать со своим сохранённым токенизатором

Что получилось

На test модель правильно расставила ответы в 1084 из 1089 пар, accuracy получилась 99,54%. Eval loss - 0,043659, train loss за эпоху - 0,110826

На первой паре из test оценки такие:

Ответ Score
chosen 4.5403
rejected -0.0810

У chosen оценка выше, как и должно быть. Сам score - это оценка предпочтения, а не вероятность того, что ответ правильный

Пример пары

В выводе evaluate() есть вопрос Do you have a favorite type of vacation or getaway?

Фрагмент chosen:

You know, I'm a big fan of beach vacations!

Фрагмент rejected:

I'm happy to assist you with your inquiry. However, as a professional AI, I don't have personal preferences or opinions, nor do I have the capacity to experience emotions or take vacations.

Ответы здесь сокращены, полностью их можно посмотреть в ноутбуке. Эта модель сама не генерирует текст, а оценивает готовые ответы

Для этого датасета результат хороший: chosen почти всегда получает оценку выше rejected. Но здесь предпочтения в основном про разговорный стиль. Проверки фактов в таком score нет, а на других датасетах я модель не проверял

Downloads last month
29
Safetensors
Model size
0.1B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for WhyZosa/llm-course-hw2-reward-model

Finetuned
(195)
this model

Dataset used to train WhyZosa/llm-course-hw2-reward-model