Краткая история поиска нейронной архитектуры и не только

В 2016 году на arXiv была незаметно опубликована интересная статья группой ученых-исследователей из Google Brain, которая использовала машинное обучение (ML) для создания новых моделей ML. Никто не ожидал, что это вызовет всевозможные споры об исследованиях машинного обучения и поставит Google на первое место в следующие три года. Затем лауреату премии Тьюринга в Google потребовалось еще три года, чтобы полностью проанализировать проблему и дать официальный ответ.

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

Прорыв: первоначальный документ

Обучение с подкреплением может научить умного агента выполнять множество задач, например играть в шахматы или аркадные игры. Агент может изучить почти все, если существует четкая обратная связь для оценки производительности агента. Как насчет разработки моделей машинного обучения? Мы можем легко оценить модель машинного обучения. В этом заключалась идея газеты.

Статья называется Поиск нейронной архитектуры с обучением с подкреплением, опубликованная в 2016 году. Вместо того, чтобы вручную разрабатывать новый тип архитектуры нейронной сети, такой как AlexNet, ResNet или DenseNet, она использует обучение с подкреплением для автоматического создания новых нейронных архитектур. . Как показано на следующем рисунке, агент, который также является нейронной сетью, обучен создавать нейронные архитектуры. Каждая нейронная архитектура обучается и оценивается. Результат оценки является функцией вознаграждения агента. Создавая новые архитектуры и изучая производительность каждой из них, агент постепенно учится создавать хорошие нейронные архитектуры.

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

Документ также открыл совершенно новую область исследований в области машинного обучения под названием «Поиск нейронной архитектуры» (NAS), которая должна использовать автоматизированные методы для создания новых типов нейронных архитектур.

Бумага изменила правила игры. Казалось бы, это была еще одна попытка создать лучшую нейронную архитектуру. Тем не менее, он попытался автоматизировать работу исследователя машинного обучения. Многие люди опасаются, что их рабочие места отнимут ОД. Что ж, исследователи машинного обучения этого не делают. Наоборот, они усердно работали, чтобы заменить себя ML. Если эта идея сработает, они начнут создавать модели машинного обучения, недоступные исследователям машинного обучения.

Такая великая попытка дорого обошлась. Google Brain потребовалось 800 графических процессоров для проведения экспериментов из-за обучения и оценки большого количества нейронных архитектур. Такая высокая стоимость отпугивала большинство игроков на поле. Никакая другая статья не была опубликована сразу по этой теме.

Google Brain продолжил это направление исследований, расширив эту идею автоматизированного проектирования на другие части процесса машинного обучения, такие как поиск функций активации и поиск дополнений к данным.

Прорыв: снижение затрат

Чтобы снизить вычислительные ресурсы, потребляемые NAS, они опубликовали новую статью примерно через год после первоначальной статьи. Название новой статьи — Эффективный поиск нейронной архитектуры посредством совместного использования параметров (ENAS). Это снизило стоимость NAS почти до стоимости обучения одной нейронной сети. Как они это делают?

Нейронные архитектуры, сгенерированные агентом, могут не сильно отличаться друг от друга. В предыдущей работе им приходилось тренировать каждую нейронную архитектуру от начала до конца, даже если они были очень похожи друг на друга. Можем ли мы повторно использовать веса в ранее обученных нейронных архитектурах, чтобы ускорить обучение нейронных архитектур, сгенерированных позже? Такова идея этой статьи.

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

Прорыв: нейронные архитектуры дифференцируемы

Вскоре после статьи, приведенной выше, к игре начали присоединяться некоторые другие исследовательские группы. Они также стремились сделать NAS более эффективным, но с другой точки зрения. Вместо улучшения обучения и оценки они улучшили агента.

Из дискретной математики мы знаем, что графы — это дискретные структуры. Нейронные архитектуры — это вычислительные графы, поэтому они дискретны. Агент может с трудом воспринимать корреляции между различными нейронными архитектурами и их производительностью из-за их дискретности. Что, если мы сможем сделать нейронные архитектуры дифференцируемыми? Затем нам больше не нужен агент для создания нейронных архитектур. Мы можем напрямую использовать градиентный спуск для оптимизации нейронной архитектуры точно так же, как мы обучаем нейронную сеть.

Звучит как сумасшедшая идея, но авторы DARTS: Поиск дифференцируемой архитектуры и Оптимизация нейронной архитектуры нашли способы сделать это и реализовали их. Мы не будем вдаваться в подробности здесь, но вы можете сами прочитать статьи.

Другие попытки

По мере того, как все больше исследователей вносили свой вклад в эту тему, становилось все труднее делать прорывы в исходной проблеме NAS. Они начали вносить улучшения на основе этих дифференцируемых решений или добавлять ограничения к проблеме. Среди этих статей стоит прочитать некоторые высококачественные, в том числе SNAS, ProxylessNAS и MnasNet.

Противоречие: NAS не имеет смысла

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

Представьте себе эту ситуацию. Если я только позволю агенту генерировать нейронные архитектуры, очень похожие на ResNet, сгенерированная нейронная архитектура гарантированно будет работать аналогично ResNet. Можем ли мы в этом случае сказать, что агент достаточно умен, чтобы найти хорошую нейронную архитектуру? Независимо от того, насколько глуп агент, пока исследователь достаточно умен, чтобы ограничить пространство поиска небольшим пониманием хороших нейронных архитектур, результаты будут хорошими. Использовали ли авторы статей НАН этот трюк? Бумага была опубликована только для того, чтобы проверить это.

Название статьи: Случайный поиск и воспроизводимость для поиска нейронной архитектуры. Они заменили обучение с подкреплением или любой другой алгоритм поиска, используемый в документах NAS, алгоритмом случайного поиска.

Результаты шокируют. Случайный поиск так же хорош, как и любой другой алгоритм поиска, а иногда даже лучше. Этот вывод обесценил всю область исследований НАН.

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

Прорыв: Откройте для себя модели с нуля

Поскольку мы все думали, что исследования NAS завершены, они вернулись с другой статьей, изменившей правила игры, AutoML-Zero: развитие алгоритмов машинного обучения с нуля, которая пролила новый свет на то, может ли ML выполнять работу по созданию новые модели МЛ.

В отличие от предыдущих статей NAS, нейронные архитектуры больше не ограничиваются тщательно разработанным человеком поисковым пространством. Он даже не ищет нейронные архитектуры. Он строит модели машинного обучения с нуля.

Он использует эволюционные алгоритмы для объединения основных математических операций, таких как сложение, умножение или равномерная выборка. Используйте эти комбинации в качестве моделей машинного обучения и оцените их эффективность в наборах данных, чтобы выбрать хорошие модели. С этой настройкой в ​​пространство поиска включается практически любая модель машинного обучения.

Результаты потрясающие. Многие широко используемые модели машинного обучения были сгенерированы алгоритмом. Например, он заново открыл линейную регрессию, стохастический градиентный спуск, ReLU и двухслойные нейронные сети. Процесс поиска был похож на воспроизведение истории исследований машинного обучения.

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

Противоречие: NAS против окружающей среды

Вскоре после предыдущей полемики вокруг NAS возник еще больший кризис, который начался с статьи под названием Энергия и политические соображения для глубокого обучения в НЛП. Это было отмечено MIT Technology Review и привлекло большое внимание.

В работе изучалось потребление энергии и выбросы углерода при проведении исследований глубокого обучения, особенно при обучении больших моделей глубокого обучения для обработки естественного языка (NLP). Самой большой моделью, упомянутой в документе, была модель Transformer на основе NAS, которая содержит 0,2 миллиарда параметров. При обучении такой модели будет выделяться такое же количество CO2, как при перелете 300 пассажиров из Сан-Франциско в Нью-Йорк туда и обратно.

Глубокое обучение VS. окружающая среда. Это фундаментальный вопрос, на который необходимо ответить, поскольку в последние годы глубокое обучение развивалось с сумасшедшей скоростью. Неожиданно возникло много критики. Google критиковали за нанесение вреда окружающей среде путем обучения больших моделей глубокого обучения. Сможет ли Google успешно справиться с этим PR-кризисом? Самое главное, возьмет ли Google на себя ответственность за решение проблемы экологичности для глубокого обучения?

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

Название статьи: Углеродный след обучения машинному обучению вырастет на плато, а затем сократится. Они предложили 4 передовых метода по сокращению углеродного следа и энергопотребления при обучении моделей глубокого обучения. Приняв эти передовые методы, Google значительно сократила выбросы углекислого газа в своей деятельности, связанной с глубоким обучением. Объем сокращения выбросов CO2 в 2021 году равен выбросу CO2 при обучении модели Transformer в 700 раз в 2017 году.

Поиск нейронной архитектуры — это не AutoML

Прежде чем мы перейдем к заключению, я хотел бы объяснить путаницу между NAS и AutoML, поскольку эти два термина часто встречаются вместе. AutoML даже появился под названием «AutoML-Zero». Однако большая часть исследований NAS не связана с AutoML.

Люди называют NAS AutoML, потому что NAS — это автоматизированный способ создания новых моделей машинного обучения. NAS создает новые модели машинного обучения, которые хорошо обобщаются для других наборов данных и задач. Однако с точки зрения практика они не так уж сильно отличаются от ResNet, за исключением лучшей производительности. Им все равно придется выполнять предварительную обработку данных, постобработку, настройку гиперпараметров и т. д., если они хотят использовать модель на практике.

AutoML предназначен не для создания новых моделей машинного обучения, а для простоты внедрения решений машинного обучения. Учитывая набор данных и задачу, AutoML пытается автоматически собрать подходящее сквозное решение ML, включая предварительную обработку данных, постобработку, настройку гиперпараметров и все остальное. С точки зрения практикующего специалиста, внедрение машинного обучения для решения своих проблем значительно снижает требования к знаниям и инженерную нагрузку.

Выводы

До сих пор мы рассмотрели историю автоматически сгенерированных моделей машинного обучения. Теперь нам нужно ответить на вопрос: можем ли мы полагаться на автоматически сгенерированные модели машинного обучения?

Судя по обсуждению выше, по мере развития этой области решения становились все лучше и лучше. Особенно, когда вышел AutoML-Zero, я почувствовал, что он на правильном пути. Однако он уже исчерпал сегодняшние вычислительные мощности только для того, чтобы найти простую двухслойную нейронную сеть. Я не могу себе представить, сколько вычислительных ресурсов потребуется для создания моделей лучше, чем современные современные модели. Кроме того, финансовые выгоды не так очевидны, как в других исследованиях машинного обучения, таких как GPT-3 или Stable Diffusion. Крупные компании вряд ли будут выделять на это огромное количество ресурсов. Поэтому мой ответ: в ближайшее время это недостижимо.

Большее значение

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

Какая именно разница здесь? Раньше мы строили модели машинного обучения с красивыми математическими уравнениями и строго доказанными теоремами. Однако алгоритмы NAS совершенно не понимают математику. Они рассматривают модели машинного обучения как черные ящики и оценивают их исключительно экспериментально.

Методология исследования машинного обучения начинает выглядеть как экспериментальная наука. Как и в экспериментальной физике, мы делаем новые открытия на основе экспериментов. Итак, должны ли мы проводить исследования машинного обучения, как математические или экспериментальные науки? Нужна ли математика для моделей машинного обучения? NAS поднял эти вопросы для всех нас, чтобы ответить на них, что окажет глубокое влияние на будущие исследования машинного обучения.

На мой взгляд, создание моделей машинного обучения без надежной математической поддержки может оказаться неизбежным в будущем. Математика была совершенным миром, построенным людьми, где каждый вывод был сделан путем строгого вывода. Однако по мере развития математического мира он постепенно становился таким же сложным, как реальный мир. В конце концов, нам придется полагаться на экспериментальные методы для открытия новых открытий в математике, точно так же, как мы делаем это сегодня с реальным миром.