Соавтор Adam: «В моём доказательстве было четыре ошибки»

Yannic Kilcher 13,5 тыс. 13 мин 5 мин 17.01.2021
Главное

Ведущий YouTube-канала Янник Кильчер и его гость, ученый-исследователь и соавтор знаменитого оптимизатора Adam, провели вторую часть юмористического обзора мемов из мира глубокого обучения (Deep Learning). В ходе непринужденной беседы коллеги обсудили суровые реалии академической науки, курьезы при публикации статей, проблему «ошибочного» доказательства сходимости Adam и феномен популярности больших языковых моделей вроде GPT-3. Этот детальный разбор позволяет заглянуть за кулисы хайпа вокруг искусственного интеллекта сквозь призму индустриального юмора.

🎓 Будни академической науки: дедлайны, слабые бейслайны и проклятие датасета CIFAR 0:00

Разговор начинается с шутки гостя о том, что когда-нибудь он сможет запрограммировать цифровую копию Янника, чтобы тот наконец начал выпускать свои видеоролики вовремя. Затем собеседники плавно переходят к обсуждению суровой академической реальности. Гость иронизирует над точностью своего случайного классификатора в 47%, отмечая, что простое изменение начального значения (seed) позволяет поднять этот показатель до 48%. Собеседники приходят к циничному выводу: чтобы гарантированно опубликовать научную работу, вовсе не обязательно создавать прорывной алгоритм — достаточно выбрать максимально слабый базовый уровень (baseline) для сравнения.

Проблемы современных академических исследователей в области искусственного интеллекта включают в себя:

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

⚙️ Математика на коленке и ритуальные жертвоприношения алгоритмам YouTube 2:16

Обсуждая математические аспекты машинного обучения, спикеры затронули тему накопления градиентов (gradient accumulation) и снижения скорости обучения (learning rate). Гость подтверждает, что теоретически алгоритмы сходятся именно при усреднении градиентов с уменьшающимся шагом, хотя на практике все часто идет наперекосяк. Кроме того, они высмеяли классическую структуру научных публикаций (аннотация, введение, результаты). По наблюдениям авторов, амбициозные заявления во введении («мы доказываем, что это всегда работает») при детальном изучении самой статьи оказываются лишь единичным удачным примером, построенным на множестве жестких допущений.

Отдельное внимание авторы уделили нелегкой доле блогеров, создающих контент об ИИ. По словам Янника Кильчера, YouTube-авторам приходится регулярно приносить свои видеокарты (GPU) в жертву алгоритмам рекомендаций платформы. Этот ироничный ритуал умилостивления включает в себя следующие шаги:

В качестве еще одной шутки прозвучало сравнение фреймворка TensorFlow со средством контрацепции, намекающее на то, что работа с этим инструментом может полностью лишить инженера личной жизни.

🧠 Теоретики против практиков: бесконечные нейросети и восстание роботов 5:46

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

Среди таких оторванных от реальности концепций спикеры выделили:

Шутки ради гость перефразировал классический интернет-мем, заявив, что единственная бесконечно широкая вещь в мире — это «твоя мама».

Отдельно была затронута тема беспилотных автомобилей, сложность создания которых индустрия часто недооценивает. По ироничному замечанию авторов, вся задача программирования беспилотника сводится к одной простой инструкции: «главное — ни во что не врезаться». Гость рассказал реальную историю из своей практики: во все свои программные коды он добавляет скрытую строчку-комментарий, которая гласит: if target == yannick then don't fire («если цель — Янник, не стрелять»). По мнению гостя, это убережет Янника в будущем, если данный код случайно окажется в основе армии восставших роботов.

Практический аспект обучения моделей свелся к обсуждению момента, когда график точности стагнирует. Как отмечают авторы, стандартный трюк любого инженера в этот момент — просто уменьшить скорость обучения (learning rate), разделив её на 10, после чего показатели точности мгновенно совершают резкий скачок вверх.

🤖 Дискуссия о GPT-3: истинный интеллект или простое приближение функций? 8:51

Центральной темой для серьезной дискуссии стал разбор критического мнения о языковой модели GPT-3 от OpenAI. В зачитанном авторами меме утверждалось, что GPT-3 принципиально не отличается от старейшего чат-бота Elisa и представляет собой лишь «прославленное сопоставление шаблонов и подгонку кривых» (glorified pattern matching and curve fitting), а не истинный интеллект, требующий символического представления входных данных. Согласно этой критической позиции, коннекционистские модели в принципе никогда не смогут достичь уровня человеческого мышления.

Когда Янник Кильчер спросил своего коллегу напрямую, считает ли тот GPT-3 разумной, гость уклончиво ответил, что ему просто «нравятся цвета видеокарты», на которой работает модель, признавая её забавной, но не интеллектуальной. Тем не менее, сам Янник Кильчер высказал мнение, что GPT-3 в какой-то степени действительно обладает признаками осознанности. Ведущий добавил, что за подобное утверждение его, скорее всего, «отменят в Твиттере уже в 50-й раз». В завершение темы спикеры высмеяли кликбейтные заголовки в духе: «Исследователи ненавидят его: обычный парень открыл один странный трюк для создания сильного ИИ — оказывается, вы просто использовали недостаточно слоев».

💥 Великое заблуждение: 60 тысяч цитирований ошибочного доказательства Adam 10:42

Самым громким разоблачением выпуска стало обсуждение математического доказательства сходимости популярного оптимизатора Adam. Гость, являющийся непосредственным соавтором этого алгоритма, открыто признал, что его оригинальное теоретическое доказательство было ошибочным и содержало как минимум четыре серьезные математические ошибки. Курьез заключается в том, что научная статья успела собрать около 30 000 цитирований (а на момент записи видео — уже более 60 000), прежде чем академическое сообщество вообще осознало наличие критической ошибки, связанной с переменной $v$.

История исправления этой ошибки развивалась следующим образом:

  1. Сторонние исследователи опубликовали работу, исправляющую данный недочет, и предложили модификацию алгоритма под названием AMSGrad.
  2. Однако, по словам гостя, модификацию AMSGrad на практике никто из инженеров не использует, и сам он относится к ней крайне негативно.
  3. В конечном итоге появилась еще одна научная работа, которая доказала, что оригинальный алгоритм Adam все-таки отлично сходится, несмотря на первоначальные ошибки в формулах автора.

В финале видео авторы вспомнили знаменитую фразу, приписываемую Альберту Эйнштейну, о том, что безумие — это повторение одного и того же действия с ожиданием разных результатов. По мнению Янника Кильчера, именно так и пишутся современные научные статьи по нейросетям: исследователи раз за разом запускают обучение, просто меняя начальный параметр seed = 2 или повторно отправляя отклоненные работы на конференции. Также коллеги поиронизировали над новой технологией от Nvidia (функция коррекции взгляда на базе ИИ), отметив, что индустрия тратит миллионы долларов на то, чтобы «заставить ваши глаза выглядеть безумно на видео».

💬 Цитаты

«В моём доказательстве как минимум четыре ошибки, и статья получила около 30 тысяч цитирований, прежде чем это поняли.»

«Теоретики — худшие люди. Они приходят в восторг от бесконечно широких нейросетей.»

👥 Спикеры
🔗 Упомянутые сайты и проекты
📖 Термины
Adam
Популярный алгоритм оптимизации, используемый для обучения нейронных сетей.
AMSGrad
Модификация оптимизатора Adam, предложенная для исправления ошибок в его доказательстве сходимости.
CIFAR
Классический набор данных (датасет), используемый для обучения и тестирования алгоритмов компьютерного зрения.
GPT-3
Большая языковая модель от компании OpenAI, способная генерировать человекоподобный текст.
Бейслайн (Baseline)
Базовая простая модель, с результатами которой сравнивают новый разработанный алгоритм для оценки его эффективности.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект Янник Кильчер GPT-3 OpenAI Nvidia оптимизатор Adam