🐟 Sakana AI выкатили DiffusionBlocks - способ обучать нейросеть по одному блоку за раз, не держа в памяти всю модель целиком. Работу приняли на ICLR 2026.
При обычном обучении градиенты проходят через весь граф, а память под активации растёт вместе с глубиной модели. DiffusionBlocks предлагает разрезать сеть на отдельные блоки и обучать каждый независимо.
Каждому блоку дают свою локальную задачу: сдвинуть представление чуть ближе к целевому состоянию, чем это сделал предыдущий блок. Формально это похоже на один шаг диффузионного процесса, поэтому каждый блок оптимизирует собственный лосс и не зависит от соседних блоков.
Главный плюс - память. Для тренировки нужна память под один блок, а не под всю сеть целиком.
Авторы проверили подход на разных архитектурах:
- ViT
- DiT
- masked diffusion
- авторегрессионные трансформеры
- recurrent-depth / Looped-трансформеры
По качеству результаты сопоставимы со сквозным обучением, но с куда меньшими требованиями к памяти.
В Looped-трансформерами один и тот же блок прогоняется много раз подряд, как будто модель «думает» несколькими итерациями. Обычно для обучения приходится разворачивать весь этот процесс через BPTT, из-за чего память и вычисления быстро дорожают
Это ещё один аргумент в пользу идеи, что диффузия - не только про генерацию картинок, а более универсальная рамка для обучения моделей.
Если модель упирается в VRAM из-за глубины, DiffusionBlocks выглядит как подход, за которым стоит следить.
Пейпер: arxiv.org/abs/2506.14202
Код: github.com/SakanaAI/DiffusionBlocks
@ai_machinelearning_big_data
#sakana #ai #ml
Post #406
1.53K