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

Yannic Kilcher 12,8 тыс. 27 мин 4 мин 04.05.2020
Главное

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

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

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

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

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

🤖 Агент в пустом пространстве: архитектура решения 5:42

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

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

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

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

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

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

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

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

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

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

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

🏁 Вердикт: ИИ строит ИИ 26:44

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

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

💬 Цитаты

«Это шаг к сингулярности, поскольку теперь ИИ может проектировать ИИ-ускорители. Как потрясающе... человечество обречено.»

Янник Килчер 27:00

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

Янник Килчер 03:53
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Нетлист (Netlist)
Список электронных компонентов и описание их электрических соединений.
Макросы (Macros)
Крупные функциональные блоки на чипе, такие как блоки памяти или процессорные ядра.
Стандартные ячейки (Standard Cells)
Мелкие логические элементы (например, логические затворы), из которых состоят более сложные узлы.
Разреженная награда (Sparse Reward)
Ситуация в обучении с подкреплением, когда агент получает обратную связь крайне редко, только после длинной серии действий.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект Deep Reinforcement Learning Chip Placement Yannic Kilcher Google Research Graph Convolutional Networks