Telegram Group & Telegram Channel
Сегодня обсудим процедуру обучения DeepSeek-V3. Архитектура и технические решения были разобраны в предыдущем посте (https://www.group-telegram.com/jp/gonzo_ML.com/3292).

На всякий случай ещё раз явно проговорю, это не DeepSeek-R1, которая reasoning по типу o1/o3, это базовая чат-модель, на которой R1 была обучена. Не уверен, что буду делать разбор R1, первого поста про DeepSeek (https://www.group-telegram.com/jp/gonzo_ML.com/3239), имеющегося разбора V3 и поста от Аламмара (https://newsletter.languagemodels.co/p/the-illustrated-deepseek-r1), кажется, достаточно. Но посмотрим.

Из технически важных моментов хочется ещё раз обратить внимание на важность обучения в FP8 из предыдущего поста (https://www.group-telegram.com/jp/gonzo_ML.com/3294). Это биг дил, что наконец оно завелось в промышленном режиме для большой модели хорошего качества. Эффективно оно удваивает доступные вычислительные мощности или даёт возможность обучать модели в два раза большего размера.

Обучение разделено на pre-training и post-training.

Pre-training.


Относительно предыдущего DeepSeek-V2 (https://arxiv.org/abs/2405.04434) увеличена доля примеров про математику и программирование, а также расширен набор языков за пределы английского и китайского. При этом всё равно, английский + китайский составляют большую часть датасета, а описания композиции и распределения других языков я не нашёл.

Всего итоговый датасет содержит 14.8T токенов (у предыдущей версии было 8.1T токенов). Токенизатор BPE со словарём в 128k. Относительно предыдущей версии токенизатор изменён и обучен на более мультиязычном корпусе, а также добавлены токены, комбинирующие пунктуацию с переносами строк.

В предобучении в дополнение к стандартному Next-Token-Prediction используется Fill-in-Middle (FIM) стратегия с частотой 0.1, применённая в DeepSeekCoder-V2 (https://arxiv.org/abs/2406.11931), но изобретённая ранее в OpenAI (https://arxiv.org/abs/2207.14255), где модель должна восстановить середину текста. Если точнее, то используется подход Prefix-Suffix-Middle (PSM) для структурирования данных (на уровне документов) следующим образом:

<|fim_begin|>𝑓_pre<|fim_hole|>𝑓_suf<|fim_end|>𝑓_middle<|eos_token|>.

Во время предобучения максимальная длина последовательности 4k токенов.

После предобучения применяют YaRN (https://arxiv.org/abs/2309.00071) для расширения контекста и делают две дополнительные фазы обучения по 1000 шагов, где расширяют контекст с 4k до 32k, а затем до 128k.

В итоге на множестве бенчмарков, включая английский, китайский, код, математику и один мультиязычный, в целом бьют предыдущую версию DeepSeek-V2, а также две dense модели, Qwen2.5 72B Base и LLaMA-3.1 405B Base, получая сильнейшую из открытых моделей. Сравнение с Qwen2.5 72B Base интересно, это была одна из сильных моделей, активных параметров у неё получается практически в два раза больше, чем у DeepSeek. У LLaMA-3.1 405B Base их вообще в 11 раз больше, но она на этих бенчмарках хуже.

Авторы заявляют, что для DeepSeek-V3 на каждый триллион токенов обучения требуется 180K H800 GPU-часов.

Post-training.

Состоит из двух частей, Supervised Fine-Tuning (SFT) и RL.

SFT делался на дополнительных Reasoning и Non-Reasoning данных. Это всё было сделано для разных областей (упоминания конкретных доменов далее) и итоговый датасет для instruction-tuning составляет 1.5M примеров.

Reasoning данные фокусировались на математике, программировании, логических задачах. Данные генерировались внутренней DeepSeek-R1 моделью (которая в свою очередь была обучена на DeepSeek-V3 в качестве базы — см.рекурсия). Но проблема с данными от R1 была в её многословности, overthinking и плохом форматировании.

Для генерации данных из конкретного домена создавалась экспертная модель, также обученная через SFT + RL. Генерировались два типа SFT сэмплов: <problem, original response> и <system prompt, problem, R1 response>. В промпте были инструкции для рефлексии и верификации. В RL фазе с высокой температурой генерились ответы модели, и постепенно модель выучивала паттерны R1. После обучения с помощью rejection sampling генерировались примеры для SFT оригинальной модели.



group-telegram.com/gonzo_ML/3312
Create:
Last Update:

Сегодня обсудим процедуру обучения DeepSeek-V3. Архитектура и технические решения были разобраны в предыдущем посте (https://www.group-telegram.com/jp/gonzo_ML.com/3292).

На всякий случай ещё раз явно проговорю, это не DeepSeek-R1, которая reasoning по типу o1/o3, это базовая чат-модель, на которой R1 была обучена. Не уверен, что буду делать разбор R1, первого поста про DeepSeek (https://www.group-telegram.com/jp/gonzo_ML.com/3239), имеющегося разбора V3 и поста от Аламмара (https://newsletter.languagemodels.co/p/the-illustrated-deepseek-r1), кажется, достаточно. Но посмотрим.

Из технически важных моментов хочется ещё раз обратить внимание на важность обучения в FP8 из предыдущего поста (https://www.group-telegram.com/jp/gonzo_ML.com/3294). Это биг дил, что наконец оно завелось в промышленном режиме для большой модели хорошего качества. Эффективно оно удваивает доступные вычислительные мощности или даёт возможность обучать модели в два раза большего размера.

Обучение разделено на pre-training и post-training.

Pre-training.


Относительно предыдущего DeepSeek-V2 (https://arxiv.org/abs/2405.04434) увеличена доля примеров про математику и программирование, а также расширен набор языков за пределы английского и китайского. При этом всё равно, английский + китайский составляют большую часть датасета, а описания композиции и распределения других языков я не нашёл.

Всего итоговый датасет содержит 14.8T токенов (у предыдущей версии было 8.1T токенов). Токенизатор BPE со словарём в 128k. Относительно предыдущей версии токенизатор изменён и обучен на более мультиязычном корпусе, а также добавлены токены, комбинирующие пунктуацию с переносами строк.

В предобучении в дополнение к стандартному Next-Token-Prediction используется Fill-in-Middle (FIM) стратегия с частотой 0.1, применённая в DeepSeekCoder-V2 (https://arxiv.org/abs/2406.11931), но изобретённая ранее в OpenAI (https://arxiv.org/abs/2207.14255), где модель должна восстановить середину текста. Если точнее, то используется подход Prefix-Suffix-Middle (PSM) для структурирования данных (на уровне документов) следующим образом:

<|fim_begin|>𝑓_pre<|fim_hole|>𝑓_suf<|fim_end|>𝑓_middle<|eos_token|>.

Во время предобучения максимальная длина последовательности 4k токенов.

После предобучения применяют YaRN (https://arxiv.org/abs/2309.00071) для расширения контекста и делают две дополнительные фазы обучения по 1000 шагов, где расширяют контекст с 4k до 32k, а затем до 128k.

В итоге на множестве бенчмарков, включая английский, китайский, код, математику и один мультиязычный, в целом бьют предыдущую версию DeepSeek-V2, а также две dense модели, Qwen2.5 72B Base и LLaMA-3.1 405B Base, получая сильнейшую из открытых моделей. Сравнение с Qwen2.5 72B Base интересно, это была одна из сильных моделей, активных параметров у неё получается практически в два раза больше, чем у DeepSeek. У LLaMA-3.1 405B Base их вообще в 11 раз больше, но она на этих бенчмарках хуже.

Авторы заявляют, что для DeepSeek-V3 на каждый триллион токенов обучения требуется 180K H800 GPU-часов.

Post-training.

Состоит из двух частей, Supervised Fine-Tuning (SFT) и RL.

SFT делался на дополнительных Reasoning и Non-Reasoning данных. Это всё было сделано для разных областей (упоминания конкретных доменов далее) и итоговый датасет для instruction-tuning составляет 1.5M примеров.

Reasoning данные фокусировались на математике, программировании, логических задачах. Данные генерировались внутренней DeepSeek-R1 моделью (которая в свою очередь была обучена на DeepSeek-V3 в качестве базы — см.рекурсия). Но проблема с данными от R1 была в её многословности, overthinking и плохом форматировании.

Для генерации данных из конкретного домена создавалась экспертная модель, также обученная через SFT + RL. Генерировались два типа SFT сэмплов: <problem, original response> и <system prompt, problem, R1 response>. В промпте были инструкции для рефлексии и верификации. В RL фазе с высокой температурой генерились ответы модели, и постепенно модель выучивала паттерны R1. После обучения с помощью rejection sampling генерировались примеры для SFT оригинальной модели.

BY gonzo-обзоры ML статей


Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260

Share with your friend now:
group-telegram.com/gonzo_ML/3312

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

READ MORE For tech stocks, “the main thing is yields,” Essaye said. The War on Fakes channel has repeatedly attempted to push conspiracies that footage from Ukraine is somehow being falsified. One post on the channel from February 24 claimed without evidence that a widely viewed photo of a Ukrainian woman injured in an airstrike in the city of Chuhuiv was doctored and that the woman was seen in a different photo days later without injuries. The post, which has over 600,000 views, also baselessly claimed that the woman's blood was actually makeup or grape juice. In this regard, Sebi collaborated with the Telecom Regulatory Authority of India (TRAI) to reduce the vulnerability of the securities market to manipulation through misuse of mass communication medium like bulk SMS. Ukrainian forces successfully attacked Russian vehicles in the capital city of Kyiv thanks to a public tip made through the encrypted messaging app Telegram, Ukraine's top law-enforcement agency said on Tuesday.
from jp


Telegram gonzo-обзоры ML статей
FROM American