# Янник Килчер: «Человечество обречено, теперь ИИ проектирует ИИ-ускорители»

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

---

Дизайн современных микрочипов — это невероятно сложная задача, напоминающая игру в «Тетрис» на стероидах, где на кону стоят миллиарды транзисторов и производительность вычислительных систем будущего. В новом видео Янник Килчер разбирает научную работу исследователей Google (Азалии Мирхосейни, Анны Голди и других), которые предложили использовать глубокое обучение с подкреплением (Deep Reinforcement Learning) для автоматизации размещения компонентов на кристалле. По мнению Килчера, эта работа не только объединяет в себе передовые методы из разных областей машинного обучения, но и делает шаг к «технологической сингулярности», когда нейросети начинают проектировать железо для самих себя.

## 🧩 Проблема размещения: «Тетрис» планетарного масштаба
[[JUMP:00:28]]

Фундаментальная задача проектирования чипа заключается в том, чтобы оптимально расположить компоненты на пустом «холсте» (канвасе) будущего кристалла [00:44]. У инженера есть так называемый «нетлист» (netlist) — список всех деталей, их размеров и, что самое важное, схема их соединений [00:57].

Основные сложности процесса:

*   **Огромное количество элементов:** В нетлисте могут быть тысячи крупных блоков (макросов) и миллионы мелких стандартных ячеек [01:12].
*   **Сложная топология:** Все элементы связаны между собой. Эти связи можно представить в виде огромного графа или матрицы смежности [01:39].
*   **Противоречивые цели:** Нужно одновременно соблюсти три условия:
    1.  **Плотность:** Элементы не могут перекрывать друг друга [03:14].
    2.  **Длина проводов:** Чем длиннее провод, тем медленнее идет сигнал. Для максимальной скорости нужно минимизировать общую длину соединений [04:06].
    3.  **Заторы (Congestion):** В определенных областях может скопиться слишком много проводов, что сделает производство невозможным [04:18].

Традиционно этим занимаются эксперты-люди в сочетании со специализированными алгоритмами. По словам Килчера, такой процесс обычно занимает несколько недель [05:15]. Подход Google позволяет решить ту же задачу за несколько часов [05:28].

## 🤖 Агент в пустом пространстве: архитектура решения
[[JUMP:05:42]]

Исследователи представили задачу размещения как последовательный процесс принятия решений, идеально подходящий для обучения с подкреплением (RL). Агент начинает с пустого холста и по очереди выставляет компоненты из списка, начиная с самых крупных [06:07].

Процесс работы RL-агента выглядит так:

1.  **Состояние:** Текущее состояние холста и список еще не размещенных компонентов.
2.  **Действие:** Агент решает, в какую именно точку сетки поставить следующий макрос [06:20].
3.  **Пост-обработка:** После того как агент разместил все крупные блоки, в дело вступает классический алгоритм — «метод силовых полей» (force-directed method). Он расставляет миллионы мелких стандартных ячеек в оставшиеся пустые пространства [07:12].
4.  **Награда:** Только в самом конце, когда чип полностью «собран», агент получает сигнал — насколько удачным получилось размещение с точки зрения длины проводов и заторов [07:41].

Янник Килчер подчеркивает, что это «крайне неприятная» (nasty) задача для обучения с подкреплением, так как награда является разреженной (sparse) [08:08]. Агенту приходится совершать тысячи действий, не получая никакой обратной связи до самого финала. Более того, агент должен заранее «оставлять место» для работы стороннего алгоритма, который будет расставлять стандартные ячейки позже [08:50].

## 🏗️ Графовые нейросети и генеративные подходы
[[JUMP:11:35]]

Модель, предложенная в статье, состоит из двух ключевых частей: системы кодирования состояния (encoder) и сетей политики и ценности (policy and value networks) [11:50].

Для кодирования нетлиста используются **графовые сверточные нейросети (GCN)** [16:34]. Поскольку чип — это фактически граф, GCN позволяет передавать информацию между узлами. Килчер объясняет это так:

*   Сначала вычисляются признаки ребер (связей) на основе признаков узлов (компонентов) [19:08].
*   Затем признаки узлов обновляются на основе средних значений признаков прилегающих ребер [19:22].
*   Этот процесс повторяется итеративно, пока информация о структуре всего чипа не «пропитает» эмбеддинги каждого элемента [20:14].

Сама политика (Policy Network) устроена необычно. Она не просто выбирает из списка действий, а генерирует своего рода карту вероятностей, похожую на изображение [13:27]. Для этого используются деконволюции (D-convolutions), как в архитектурах GAN (генеративно-состязательных сетей) [14:09]. Модель выдает число для каждой точки на сетке чипа: чем выше число, тем больше агент хочет поставить туда деталь [15:03]. Перед принятием решения накладывается маска, запрещающая ставить блоки там, где уже что-то есть [15:15].

## 🧠 Трансферное обучение: от одного чипа к другому
[[JUMP:23:06]]

Одним из самых впечатляющих аспектов работы Килчер называет способность модели к переносу знаний (transfer learning). Если обучить агента на одном нетлисте, он сможет быстрее и лучше проектировать совершенно другие чипы.

Ключевые выводы по трансферному обучению:

*   Даже «нулевое» применение (zero-shot), когда предобученную на других задачах модель запускают на новом чипе без дообучения, дает достойные результаты [24:41].
*   Обучение на наборе всего из 20 различных архитектур чипов позволяет модели крайне эффективно работать с новыми, ранее не виденными схемами [24:14].
*   Это доказывает, что задачи размещения компонентов имеют общую внутреннюю логику, которую нейросеть способна уловить [25:09].

## 🏁 Вердикт: ИИ строит ИИ
[[JUMP:26:44]]

В завершение обзора Янник Килчер отмечает, что статья Google — это пример великолепного инженерного подхода, объединяющего RL, графовые сети и генеративные архитектуры для решения реальной промышленной задачи. 

По мнению Килчера, мы наблюдаем важный исторический момент: ИИ начинает проектировать специализированные ускорители для самого ИИ [27:00]. В шутливой манере ведущий резюмирует, что это очередной шаг к технологической сингулярности, и «человечество обречено», так как циклы разработки железа теперь будут ускоряться сами собой за счет машинного обучения [27:15].