Telegram Group & Telegram Channel
GPT-2 Small теперь тренируют в полтора раза быстрее

Модель теперь тренируется менее чем восемь минут на 8xH100 - всего пару недель назад это занимало более 12 минут. Стоимость тренировки упала до 3 долларов. Давайте разберём как так вышло.

Основной архитектурный трюк - улучшенный value residual learning. Он нужен потому, что модели на более глубоких слоях фокусируются на меньшем количестве токенов, что сильно снижает эффективность глубоких слоёв. Решается это домешиванием в values n-го блока values из первого блока трансформера. То есть в attention идёт не обычная value-матрица, а взвешенное среднее текущей value-матрицы и таковой из первого блока. Параметры для усреднения обучаются отдельно для каждого трансформерного блока.

Такой же трюк с value residual learning применяют и к эмбеддингам - в каждом трансформерном блоке эмбеддинги также взвешенно усредняются, как и value-матрица.

Ещё одно изменение, которое срезало чуть больше минуты от тренировки, - отвязывание embedding-слоя от lm head. Это повысило количество параметров на 39 миллионов, но никак не повлияло на количество активных параметров и время каждого шага. Авторы репозитория сказали, что с данного момента будут ограничивать себя активными параметрами, так что мы вполне можем увидеть MoE через неделю-другую.

Из мелочей - lm head инициализируется теперь нулями, а после эмбеддинг-слоя добавили одну норму. Максимальное значение логитов теперь ограничено, по заветам Gemma 2. А ещё заметили что по дефолту в PyTorch в mixed precision режиме bfloat16 используется достаточно консервативно, поэтому вручную заменили fp32 на bfloat16 в паре мест.

Кстати, автор доказал, что они скейлятся как минимум до 1.5B, по крайней мере на нескольких миллиардах токенов. Это обнадёживает, но не означает, что все эти трюкт стоит использовать в тренировке больших моделей. Ждём, когда кто-то попробует это либо на моделях побольше (7B+), либо на бо́льшем количестве токенов (1T or bust).

Такие спидраны нужны по двум причинам. Первая — повышение эффективности претрейна больших моделей: даже если не всё масштабируется, то что-то точно будет. А наличие чёткого базового уровня помогает лучше понять эффективность каждого отдельного изменения. Вторая - повышение доступности ресёрча. Одна 3090 может натренировать такую модель примерно за 8 часов (одну ночь), без этих оптимизаций тренировка на 3090 приближалась бы к суткам, что сильно снижает скорость итерации.

https://github.com/KellerJordan/modded-nanogpt/

@ai_newz



group-telegram.com/ai_newz/3422
Create:
Last Update:

GPT-2 Small теперь тренируют в полтора раза быстрее

Модель теперь тренируется менее чем восемь минут на 8xH100 - всего пару недель назад это занимало более 12 минут. Стоимость тренировки упала до 3 долларов. Давайте разберём как так вышло.

Основной архитектурный трюк - улучшенный value residual learning. Он нужен потому, что модели на более глубоких слоях фокусируются на меньшем количестве токенов, что сильно снижает эффективность глубоких слоёв. Решается это домешиванием в values n-го блока values из первого блока трансформера. То есть в attention идёт не обычная value-матрица, а взвешенное среднее текущей value-матрицы и таковой из первого блока. Параметры для усреднения обучаются отдельно для каждого трансформерного блока.

Такой же трюк с value residual learning применяют и к эмбеддингам - в каждом трансформерном блоке эмбеддинги также взвешенно усредняются, как и value-матрица.

Ещё одно изменение, которое срезало чуть больше минуты от тренировки, - отвязывание embedding-слоя от lm head. Это повысило количество параметров на 39 миллионов, но никак не повлияло на количество активных параметров и время каждого шага. Авторы репозитория сказали, что с данного момента будут ограничивать себя активными параметрами, так что мы вполне можем увидеть MoE через неделю-другую.

Из мелочей - lm head инициализируется теперь нулями, а после эмбеддинг-слоя добавили одну норму. Максимальное значение логитов теперь ограничено, по заветам Gemma 2. А ещё заметили что по дефолту в PyTorch в mixed precision режиме bfloat16 используется достаточно консервативно, поэтому вручную заменили fp32 на bfloat16 в паре мест.

Кстати, автор доказал, что они скейлятся как минимум до 1.5B, по крайней мере на нескольких миллиардах токенов. Это обнадёживает, но не означает, что все эти трюкт стоит использовать в тренировке больших моделей. Ждём, когда кто-то попробует это либо на моделях побольше (7B+), либо на бо́льшем количестве токенов (1T or bust).

Такие спидраны нужны по двум причинам. Первая — повышение эффективности претрейна больших моделей: даже если не всё масштабируется, то что-то точно будет. А наличие чёткого базового уровня помогает лучше понять эффективность каждого отдельного изменения. Вторая - повышение доступности ресёрча. Одна 3090 может натренировать такую модель примерно за 8 часов (одну ночь), без этих оптимизаций тренировка на 3090 приближалась бы к суткам, что сильно снижает скорость итерации.

https://github.com/KellerJordan/modded-nanogpt/

@ai_newz

BY эйай ньюз




Share with your friend now:
group-telegram.com/ai_newz/3422

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

In 2018, Russia banned Telegram although it reversed the prohibition two years later. What distinguishes the app from competitors is its use of what's known as channels: Public or private feeds of photos and videos that can be set up by one person or an organization. The channels have become popular with on-the-ground journalists, aid workers and Ukrainian President Volodymyr Zelenskyy, who broadcasts on a Telegram channel. The channels can be followed by an unlimited number of people. Unlike Facebook, Twitter and other popular social networks, there is no advertising on Telegram and the flow of information is not driven by an algorithm. At its heart, Telegram is little more than a messaging app like WhatsApp or Signal. But it also offers open channels that enable a single user, or a group of users, to communicate with large numbers in a method similar to a Twitter account. This has proven to be both a blessing and a curse for Telegram and its users, since these channels can be used for both good and ill. Right now, as Wired reports, the app is a key way for Ukrainians to receive updates from the government during the invasion. This provided opportunity to their linked entities to offload their shares at higher prices and make significant profits at the cost of unsuspecting retail investors. For example, WhatsApp restricted the number of times a user could forward something, and developed automated systems that detect and flag objectionable content.
from no


Telegram эйай ньюз
FROM American