- BrainTools - https://www.braintools.ru -
DeepSeek-R1 — это самый громкий релиз последних дней в области искусственного интеллекта [1]. Для сообщества исследователей и разработчиков машинного обучения [2] (ML R&D) эта модель имеет особое значение по ряду причин:
Модель обладает открытыми весами и включает уменьшенные, дистиллированные варианты.
Она делится и размышляет над методом обучения, позволяющим воспроизвести модель рассуждений, подобную OpenAI O1.
В этой публикации мы рассмотрим, как была создана DeepSeek-R1.
Дисклеймер: это вольный перевод статьи [3], которую написал Джэй Аламмар. Перевод подготовила редакция «Технократии». Чтобы не пропустить анонс новых материалов подпишитесь на «Голос Технократии» [4] — мы регулярно рассказываем о новостях про AI, LLM и RAG, а также делимся полезными мастридами и актуальными событиями.
Обсудить пилот или задать вопрос об LLM можно здесь [5].
Так же, как большинство современных LLM, DeepSeek-R1 генерирует по одному токену за раз, но особенно успешно решает математические и логические задачи, поскольку затрачивает больше времени на осмысление вопроса за счёт генерации «мысленных» токенов, раскрывающих ход рассуждений.

Ниже представлена иллюстрация (из 12-й главы нашей книги [6]), показывающая общий рецепт создания высококачественной LLM в три шага:

Этап языкового моделирования, когда модель обучается предсказывать следующее слово на основе огромного набора данных из интернета. Результат — базовая модель.
Этап супервизорного дообучения (supervised fine-tuning, SFT), повышающий полезность модели в понимании инструкций и ответах на вопросы. Результат — модель, настроенная под инструкции (instruction-tuned) или модель SFT.
И, наконец, этап настройки под пользовательские предпочтения (preference tuning), который шлифует поведение [7] модели с учётом человеческих предпочтений, формируя итоговую модель, доступную в различных приложениях и интерфейсах.
DeepSeek-R1 следует общей схеме. Детали первого шага описаны в предыдущей работе [8] о модели DeepSeek-V3. R1 использует базовую модель (а не финальную DeepSeek-V3) из той работы, а затем проходит стадии SFT и настройки под предпочтения, однако способы реализации этих стадий отличаются от предыдущих.

В процессе создания R1 можно выделить три особенных момента.

Это обширный набор примеров с развернутыми ходами мыслей (около 600 000), достать которые в таком количестве крайне сложно и дорого для ручной разметки. Поэтому процесс их получения — вторая важная особенность, заслуживающая внимания [9].
Для создания этих данных используется модель-предшественник R1, не имеющая названия, но специализирующаяся на рассуждении. Она вдохновлена третьей моделью, называемой R1-Zero (рассмотрим её чуть позже). Примечательность этой промежуточной модели в том, что для её разработки требовалось очень мало размеченных данных, но масштабное обучение с подкреплением [10], дающее высокие результаты в решении логических задач.
Результаты этой специализированной модели затем могут послужить основой для обучения более универсальной версии, которая к тому же преуспевает и в прочих задачах, ожидаемых от LLM.

Этот процесс реализован в два шага:

3.1 Масштабное обучение с подкреплением, ориентированное на рассуждения (R1-Zero)
На этом этапе применяется RL для создания промежуточной модели рассуждений. Модель затем генерирует примеры для SFT. Однако ключ к появлению такой модели заложен в более раннем эксперименте — создании DeepSeek-R1-Zero.

R1-Zero особа тем, что превосходит в решении задач рассуждения без размеченного набора SFT. Её обучение переходит напрямую от базовой модели к процессу RL, минуя SFT, и при этом показывает сопоставимые результаты с o1.

Почему это важно? Потому что данные всегда были основным топливом для повышения возможностей ML-моделей. Как же модель смогла пойти другим путём? На то есть две причины:
Современные базовые модели уже достигли определённого уровня качества и возможностей (здесь использовалась модель, обученная на 14,8 триллиона высококачественных токенов).
Задачи, связанные с рассуждением, в отличие от общих запросов на чат или письменный ответ, можно автоматически проверять и оценивать.
Примером служит инструкция вида:
«Напишите код на Python, который принимает список чисел, возвращает их в отсортированном виде, но также добавляет 42 в начало».
Такие задания легко поддаются автоматической валидации:
Линтер проверяет, действительно ли результат — корректный код на Python.
Код можно запустить, чтобы убедиться, что он работает.
Другие современные модели для написания кода могут автоматически создавать тесты, чтобы проверить желаемое поведение [11].
Можно замерить время выполнения и предпочесть более производительный вариант при равной корректности.
На этапе обучения мы можем задать модели подобный вопрос и получить несколько возможных решений.

Мы можем автоматически проверить (без участия человека) и убедиться, что первый ответ вовсе не является кодом. Второй действительно написан на Python, но не решает задачу. Третий вариант выглядит подходящим решением, но не проходит модульные тесты, а четвёртый оказывается корректным.

Все эти сигналы можно напрямую использовать для совершенствования модели. Разумеется, это происходит на множестве примеров (в мини-батчах) и в ходе нескольких последовательных шагов обучения.

Эти сигналы вознаграждения и обновления параметров помогают модели непрерывно совершенствовать результаты в ходе процесса обучения с подкреплением, как показано на Рисунке 2 в статье.

Параллельно с развитием этой способности растёт длина формируемого ответа: модель использует больше токенов-рассуждений для анализа задачи.

Этот процесс полезен, однако модель R1-Zero, несмотря на высокие результаты в решении логических задач, сталкивается с недостатками, снижающими её практическую применимость.
Хотя DeepSeek-R1-Zero демонстрирует впечатляющие способности к рассуждению и самостоятельно развивает неожиданные и мощные логические приёмы, она всё же имеет ряд проблем. К примеру, DeepSeek-R1-Zero уступает в удобочитаемости и нередко смешивает языки.
R1 призвана стать более удобной моделью. Поэтому, вместо полной зависимости от RL, она использует его в двух местах, о чём упоминалось ранее:
1. создание промежуточной модели рассуждений для генерации SFT-данных
2. обучение модели R1 на задачах рассуждения и других типах заданий (с применением различных методов валидации)

3.2 Создание данных рассуждений SFT с помощью промежуточной модели рассуждений
Чтобы сделать промежуточную модель рассуждений более полезной, её дообучают по методу SFT на нескольких тысячах примеров задач, требующих логических рассуждений (часть которых сгенерирована и отфильтрована при помощи R1-Zero). В работе эти данные называются «cold start data».
2.3.1. Cold Start
В отличие от DeepSeek-R1-Zero, чтобы избежать нестабильного начального этапа RL-обучения базовой модели, для DeepSeek-R1 мы формируем и собираем небольшой набор длинных цепочек рассуждений (CoT), чтобы дообучить модель в качестве начального актёра в RL. Для сбора такого набора мы опробовали несколько способов: от few-shot-промптинга с длинной цепочкой рассуждений в качестве примера и прямого запроса к моделям на развёрнутые ответы с рефлексией и проверкой, до использования выводов DeepSeek-R1-Zero в удобочитаемом формате и последующей доработки результатов вручную.

Но возникает вопрос: если у нас уже есть эти данные, зачем нам полагаться на процесс RL? Всё дело в масштабах. В наборе может быть около 5 000 примеров (это реально собрать), но для обучения R1 нужно 600 000. Промежуточная модель как раз заполняет этот разрыв и позволяет синтетически сгенерировать крайне ценные данные.

Если вы ещё не знакомы с понятием Supervised Fine-Tuning (SFT), этот метод подразумевает предоставление модели обучающих примеров в виде запроса и корректного ответа. На иллюстрации из двенадцатой главы приведены несколько примеров обучения с помощью SFT.

3.3 Общий этап обучения с подкреплением
Это даёт R1 возможность превосходить не только в рассуждениях, но и в других типах задач. Процесс во многом похож на уже описанный RL, однако, поскольку он охватывает и неречевые приложения, для соответствующих запросов используется модель вознаграждения за полезность и безопасность (по аналогии с Llama).

Подобно ранним моделям (с эпохи GPT-2 [12] и GPT-3 [13]), DeepSeek-R1 представляет собой стек декодирующих блоков трансформера [14] — всего 61 блок. Первые три являются плотными слоями, а остальные реализуют схему Mixture-of-Experts (см. замечательное вводное руководство моего соавтора Маартена: «A Visual Guide to Mixture of Experts (MoE)» [15]).

С точки зрения [16] размерности модели и других гиперпараметров они выглядят следующим образом:

Более подробная информация об архитектуре модели представлена в двух предыдущих работах:
Теперь у вас должны быть основные интуитивные представления о модели DeepSeek-R1.

Если вам показалось, что для понимания этого поста вам нужна более фундаментальная информация, я бы посоветовал вам взять в руки книгу Hands-On Large Language Models [18].
Автор: technokratiya
Источник [19]
Сайт-источник BrainTools: https://www.braintools.ru
Путь до страницы источника: https://www.braintools.ru/article/11620
URLs in this post:
[1] интеллекта: http://www.braintools.ru/article/7605
[2] обучения: http://www.braintools.ru/article/5125
[3] статьи: https://newsletter.languagemodels.co/p/the-illustrated-deepseek-r1
[4] «Голос Технократии»: https://t.me/+vvm8PwCuv-EyZGY6
[5] здесь: https://t.me/TechnokratosAMABot
[6] книги: https://github.com/handsOnLLM/Hands-On-Large-Language-Models
[7] поведение: http://www.braintools.ru/article/9372
[8] работе: https://arxiv.org/pdf/2412.19437v1
[9] внимания: http://www.braintools.ru/article/7595
[10] подкреплением: http://www.braintools.ru/article/5528
[11] поведение: http://www.braintools.ru/article/5593
[12] GPT-2: https://jalammar.github.io/illustrated-gpt2/
[13] GPT-3: https://jalammar.github.io/how-gpt3-works-visualizations-animations/
[14] трансформера: https://jalammar.github.io/illustrated-transformer/
[15] «A Visual Guide to Mixture of Experts (MoE)»: https://substack.com/home/post/p-148217245
[16] зрения: http://www.braintools.ru/article/6238
[17] DeepSeekMoE: Towards Ultimate Expert Specialization in
Mixture-of-Experts Language Models: https://arxiv.org/pdf/2401.06066
[18] Hands-On Large Language Models: https://www.llm-book.com/
[19] Источник: https://habr.com/ru/articles/877360/?utm_source=habrahabr&utm_medium=rss&utm_campaign=877360
Нажмите здесь для печати.