Игры – это всего лишь платформа для дальнейшего развития… Это самый быстрый способ разрабатывать и тестировать алгоритмы ИИ, но в итоге мы хотим использовать их так, чтобы они решали реальные задачи и оказывали огромное влияние на такие области, как здравоохранение и наука. Суть в том, что это общий ИИ – и он учится работать [на основе] собственного опыта и данных[212].
Давайте копнем немного глубже. Насколько общим можно считать этот ИИ? Насколько он применим к реальным задачам, помимо игр? В какой степени эти системы действительно учатся “самостоятельно”? И чему именно они учатся?
Общий характер и “перенос обучения”
Когда я искала в интернете статьи об AlphaGo, Сеть подкинула мне громкий заголовок: “Разработанная DeepMind программа AlphaGo на досуге научилась играть в шахматы”[213]. Это утверждение недостоверно, и важно понимать почему. AlphaGo (во всех версиях) не умеет играть ни в одну игру, кроме го. Даже самая общая версия, AlphaZero, – это не единая система, которая научилась играть в го, шахматы и сёги. Для каждой игры выделяется отдельная сверточная нейронная сеть, которую необходимо с нуля обучать конкретной игре. В отличие от людей, эти программы не могут “переносить” знания об одной игре, чтобы им было легче учиться играть в другую.
То же самое относится к различным программам для игры в видеоигры Atari: каждая из них узнает веса сети с нуля. Можно провести такое сравнение: представьте, что вы научились играть в Pong, но затем, чтобы научиться играть в Breakout, должны забыть все, что узнали об игре в Pong, и начать с чистого листа.
Специалисты по машинному обучению возлагают надежды на “перенос обучения”, то есть способность программ переносить знания, полученные при приобретении одного навыка, и с их помощью облегчать приобретение другого, родственного навыка. У людей перенос обучения происходит автоматически. Научившись играть в настольный теннис, я смогла использовать некоторые навыки, когда училась играть в большой теннис и бадминтон. Умение играть в шашки помогло мне научиться играть в шахматы. В детстве я не сразу научилась поворачивать дверную ручку в своей комнате, но стоило мне овладеть этим навыком, как мне покорились почти все дверные ручки.
Люди без труда применяют имеющиеся знания при освоении новых навыков, и способность к генерализации обучения лежит в основе наших представлений о мышлении. Таким образом, если выражаться человеческим языком, “перенос обучения” вполне можно назвать собственно “обучением”.
“Обучение” современного ИИ, напротив, не переносится между родственными задачами. В этом отношении до того, что Хассабис называет “общим ИИ”, еще очень далеко. Хотя специалисты по машинному обучению активно исследуют возможность переноса обучения, прогресс на этом фронте пока минимален[214].
“Без человеческих примеров и руководства”
В отличие от обучения с учителем, обучение с подкреплением позволяет надеяться на появление программ, которые действительно смогут учиться самостоятельно, просто выполняя действия в своей “среде” и анализируя их результаты. Говоря о результатах своей работы, особенно об AlphaGo, в DeepMind отметили важнейшую вещь, подчеркнув, что эти надежды оправдались: “Наши результаты наглядно демонстрируют, что чистое обучение с подкреплением вполне возможно даже в самых сложных областях: можно приобрести сверхчеловеческие навыки без человеческих примеров и руководства, не зная об области ничего, кроме базовых правил”[215].
Заявление понятно. Теперь рассмотрим оговорки. AlphaGo (а точнее, AlphaGo Zero) действительно не использовала при обучении предоставленных людьми примеров, но человеческое “руководство” – совсем другая история. Огромную роль в успехе программы сыграли несколько определенных людьми аспектов, включая специфическую архитектуру ее сверточной нейронной сети, использование поиска по дереву методом Монте-Карло и настройку множества гиперпараметров для эффективной работы этих методов. Как отметил психолог и исследователь ИИ Гэри Маркус, ни один из этих ключевых аспектов AlphaGo не был “определен на основе данных с помощью чистого обучения с подкреплением. [Эти аспекты] были встроены… программистами DeepMind”[216]. Программы DeepMind для видеоигр Atari представляли собой более удачный пример “обучения без человеческого руководства”, чем AlphaGo, поскольку – в отличие от последней – не получали ни правил игры (например, не узнавали, что цель Breakout заключается в уничтожении кирпичей), ни представления о связанных с игрой “объектах” (например, ракетке или мяче), а обучались исключительно по пикселям на экране.
Самые сложные области
Необходимо рассмотреть и другой аспект заявления DeepMind – фразу “в самых сложных областях”. Как понять, насколько сложна для ИИ конкретная область? Как мы видели, многие вещи, которые нам, людям, кажутся довольно простыми (например, описание изображенного на фотографии), для компьютеров представляют огромную сложность. При этом многие вещи, которые нам, людям, кажутся ужасно сложными (например, точное перемножение двух пятидесятизначных чисел), компьютеры выполняют за долю секунды, пользуясь программой из одной строки.
Один способ оценить сложность области для компьютеров – посмотреть, насколько хорошо в ней работают простые алгоритмы. В 2018 году ученые из Uber AI Labs обнаружили, что некоторые относительно простые алгоритмы почти не уступали предложенному DeepMind методу глубокого Q-обучения (а иногда и превосходили его) в работе с несколькими видеоиграми Atari. Самым неожиданным стал успех “алгоритма случайного поиска”: вместо того чтобы обучать глубокую Q-сеть с помощью обучения с подкреплением с огромным числом эпизодов, можно просто применить множество сверточных нейронных сетей со случайными весами[217]. Иными словами, не проводить никакого обучения, а действовать методом случайных проб и ошибок.