# AlphaTensor: Как DeepMind ускоряет вычисления с помощью ИИ

Источник: https://www.youtube.com/watch?v=3N3Bl5AA5QU
Канал: Yannic Kilcher
Опубликовано: 07.10.2022

---

## Революция в матричных вычислениях: Как AlphaTensor меняет правила игры
[[JUMP:0:00]]

Матричное умножение — фундамент практически всей современной науки и вычислительной техники, от графики до обучения нейронных сетей. Команда DeepMind представила систему AlphaTensor, которая с помощью обучения с подкреплением находит новые алгоритмы умножения матриц, работающие быстрее общепринятых методов. Этот успех подтверждает состоятельность подхода DeepMind: разработка методов для «игровых» сред, будь то Atari, шахматы или Go, имеет прямые прикладные задачи в реальном мире, где многие процессы можно представить как игру.

### 🎮 Матричное умножение как игра
[[JUMP:1:17]]

Традиционно умножение матриц $n \times n$ требует около $O(n^3)$ операций умножения, что является крайне ресурсозатратным процессом, так как на аппаратном уровне процессоры тратят на умножение чисел гораздо больше времени, чем на их сложение.

*   **Суть оптимизации:** Основная идея заключается в замене «дорогих» операций умножения на «дешевые» операции сложения и вычитания.
*   **Тензорная игра:** Умножение двухмерных матриц можно представить как задачу декомпозиции трехмерного тензора. Алгоритм нахождения метода умножения превращается в игру, где задача системы — разложить тензор на сумму произведений векторов.
*   **Минимизация шагов:** Каждый шаг в этой «игре» соответствует одной операции умножения. Чем меньше шагов делает система для разложения тензора, тем эффективнее становится итоговый алгоритм.

По словам Янника Кильхера, хотя задача декомпозиции тензора порядка выше двух является NP-трудной, использование глубокого обучения с подкреплением позволяет находить решения там, где человеческие методы ограничены.

### 🧠 Архитектура и обучение AlphaTensor
[[JUMP:34:05]]

Система AlphaTensor базируется на принципах AlphaZero и использует нейронную сеть с архитектурой на основе трансформеров, расширяющих форму аксиального внимания (axial attention).

*   **Подход к обучению:** Агент играет в «тензорную игру» против самого себя, пытаясь достичь нулевого состояния тензора.
*   **Награды:** Система получает отрицательную награду за каждый сделанный шаг, что вынуждает её искать кратчайший путь к решению, тем самым минимизируя количество операций умножения.
*   **Синтетические данные:** Команда DeepMind использует специфические трюки для обучения: смену базиса линейных операций (для создания большего объема данных из одного примера) и генерацию синтетических тензоров, для которых правильные шаги разложения уже известны.

### 🚀 Результаты: Скорость и адаптивность
[[JUMP:45:40]]

Для многих задач матричного умножения AlphaTensor нашел алгоритмы с меньшим количеством операций, чем лучшие известные человечеству методы.

1.  **Превосходство над человеком:** Для матриц $4 \times 4$ AlphaTensor предложил алгоритм с 47 умножениями, тогда как предыдущий рекорд составлял 49.
2.  **Аппаратная оптимизация:** Самое впечатляющее достижение — возможность настройки алгоритма под конкретное «железо» (например, TPU или GPU). Даже если архитектура чипа является «черным ящиком» для системы, через обучение с подкреплением AlphaTensor находит варианты, которые исполняются значительно быстрее на целевом оборудовании.
3.  **Математическая ценность:** Для умножения матриц $4 \times 4$ система обнаружила более 14 000 неэквивалентных факторизаций (различных алгоритмов), что открывает новые горизонты для специалистов в теории сложности вычислений.

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