В этом году компания «Яндекс» запустила голосового помощника «Алиса». Новый сервис позволяет пользователю прослушивать новости и погоду, получать ответы на вопросы и просто общаться с ботом. «Алиса» иногда дерзит, порой кажется почти разумной и по-человечески саркастичной, но часто не может разобраться, о чём её спрашивают, и садится в лужу.
Всё это породило не только волну шуток, но и новый виток дискуссий о развитии искусственного интеллекта. Новости о том, чего добились умные алгоритмы, сегодня приходят чуть ли не каждый день, а машинное обучение называют одним из самых перспективных направлений, которому можно себя посвятить.
Чтобы прояснить главные вопросы об искусственном интеллекте, мы побеседовали с Сергеем Марковым, специалистом по искусственному интеллекту и методам машинного обучения, автором одной из самых сильных отечественных шахматных программ SmarThink и создателем проекта «XXII век».

Развенчивая мифы об ИИ
так что же такое «искусственный интеллект»?
Читайте также:

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

«сильный» и «слабый» искусственный интеллект
Системы ИИ делятся на две большие группы.
Прикладной искусственный интеллект (также используют термин «слабый ИИ» или «узкий ИИ», в английской традиции — weak/applied/narrow AI) — это ИИ, предназначенный для решения какой-либо одной интеллектуальной задачи или их небольшого множества. К этому классу относятся системы для игры в шахматы, го, распознавания образов, речи, принятия решения о выдаче или невыдаче банковского кредита и так далее.
В противоположность прикладному ИИ вводят понятие универсального искусственного интеллекта (также «сильный ИИ», по-английски — strong AI/Artificial General Intelligence) — то есть, гипотетического (пока что) ИИ, способного решать любые интеллектуальные задачи.
Сильного ИИ действительно пока не существует. Практически все успехи, которые мы наблюдаем в последнее десятилетие в области ИИ, — это успехи прикладных систем. Эти успехи нельзя недооценивать, так как прикладные системы в ряде случаев способны решать интеллектуальные задачи лучше, чем это делает универсальный человеческий интеллект.
Я думаю, вы заметили, что понятие ИИ — довольно широкое. Скажем, устный счёт — это тоже интеллектуальная задача, и это значит, что любая счётная машина будет считаться системой ИИ. А как насчёт счётов? Абака? Антикитерского механизма? Действительно, всё это формально хотя и примитивные, но системы ИИ. Однако обычно, называя какую-то систему системой ИИ, мы тем самым подчёркиваем сложность решаемой этой системой задачи.
Совершенно очевидно, что разделение интеллектуальных задач на простые и сложные — весьма искусственное, и наши представления о сложности тех или иных задач постепенно меняются. Механическая счётная машина была чудом техники в XVII веке, но сегодня людей, с детства сталкивающихся с куда более сложными механизмами, она уже не способна впечатлить. Когда игра машин в го или автомобильные автопилоты уже перестанут удивлять публику, наверняка найдутся люди, которые будут морщиться из-за того, что кто-то будет относить такие системы к ИИ.

«Роботы-отличники»: о способностях ИИ к обучению
Читайте также:

Ещё одно забавное заблуждение — всенепременное наличие у систем ИИ способности к самообучению. С одной стороны, это совсем не обязательное свойство систем ИИ: есть множество удивительных систем, не способных самообучаться, но, тем не менее, решающих многие задачи лучше человеческого мозга. С другой стороны, некоторые люди просто не знают того, что самообучение — свойство, которые многие системы ИИ обрели ещё более полусотни лет назад.
Когда в 1999 году я писал свою первую шахматную программу, самообучение уже было совершенно общим местом в этой области — программы умели запоминать опасные позиции, подстраивать под себя дебютные варианты, регулировать стиль игры, подстраиваясь под соперника. Конечно, тем программам было ещё очень далеко до Alpha Zero. Тем не менее, даже системы, обучающиеся поведению на основе взаимодействия с другими системами в ходе экспериментов по так называемому «обучению с подкреплением», уже существовали. Однако по необъяснимой причине некоторые люди до сих пор думают, что способность к самообучению — это прерогатива человеческого интеллекта.
Существует два больших полюса машинного обучения — обучение с учителем и обучение без учителя.
При обучении с учителем у машины уже есть некоторое количество условно правильных решений для некоторого набора случаев. Задача обучения в таком случае заключается в том, чтобы научить машину на основе имеющихся примеров принимать правильные решения в других, неизвестных ситуациях.
Другая крайность — обучение без учителя. То есть машину ставят в ситуацию, когда правильные решения неизвестны, имеются только данные в сыром, неразмеченном виде. Оказывается, и в таких случаях можно добиться некоторого успеха. Например, можно научить машину выявлению семантических отношений между словами языка на основе анализа очень большого набора текстов.
Одна из разновидностей обучения с учителем — это обучение с подкреплением (reinforcement learning). Идея заключается в том, что система ИИ выступает в роли агента, помещённого в некоторую модельную среду, в которой она может взаимодействовать с другими агентами, например, с собственными копиями, и получать от среды некоторую обратную связь через функцию вознаграждения. Например, шахматная программа, которая играет сама с собой, постепенно подстраивая свои параметры и тем самым постепенно усиливая собственную игру.
Обучение с подкреплением — довольно широкая область, в ней применяют множество интересных методов, начиная от эволюционных алгоритмов и заканчивая байесовской оптимизацией. Последние достижения в области ИИ для игр как раз связаны с усилением ИИ в ходе обучения с подкреплением.
Риски развития технологий: стоит ли бояться «Судного дня»?
Читайте также:

Я не отношусь к числу ИИ-алармистов, и в этом смысле я отнюдь не одинок. Например, создатель стэнфордского курса по машинному обучению Эндрю Ын сравнивает проблему опасности ИИ с проблемой перенаселения Марса.
Действительно, в будущем вполне вероятно, что люди колонизируют Марс. Также вероятно, что рано или поздно на Марсе может возникнуть проблема перенаселения, но не совсем понятно, почему мы должны заниматься этой проблемой уже сейчас? Согласны с Ыном и Ян ЛеКун — создатель свёрточных нейронный сетей, и его шеф Марк Цукерберг, и Йошуа Беньо — человек, во многом благодаря исследованиям которого современные нейронные сети способны решать сложные задачи в области обработки текстов.
Чтобы изложить мои взгляды на эту проблему, потребуется, вероятно, несколько часов, поэтому остановлюсь только на основных тезисах.
1. НЕЛЬЗЯ ОГРАНИЧИВАТЬ РАЗВИТИЕ ИИ
Алармисты рассматривают риски, связанные с потенциальным разрушительным воздействием ИИ, при этом игнорируя риски, связанные с попыткой ограничить или даже остановить прогресс в этой области. Технологическое могущество человечества возрастает чрезвычайно быстрыми темпами, что приводит к эффекту, который я называю «удешевлением апокалипсиса».
150 лет назад при всём желании человечество не могло нанести невосполнимого урона ни биосфере, ни себе как виду. Для реализации катастрофического сценария 50 лет назад необходимо было бы сконцентрировать всю технологическую мощь ядерных держав. Завтра для воплощения в жизнь глобальной техногенной катастрофы может хватить и небольшой горстки фанатиков.
Если на смену человеческому интеллекту с его предрассудками, агрессией, заблуждениями и ограниченностью не придёт система, способная принимать более взвешенные решения (будь то ИИ или, что я считаю более вероятным, технологически улучшенный и объединённый с машинами в единую систему человеческий интеллект), нас может ждать глобальная катастрофа.

2. создание сверхинтеллекта принципиально невозможно
Существует идея о том, что ИИ будущего всенепременно будет сверхинтеллектом, превосходящим людей даже сильнее, чем люди превосходят муравьёв. Боюсь в данном случае разочаровать и технологических оптимистов — наша Вселенная содержит целый ряд фундаментальных физических ограничений, которые, по всей видимости, сделают создание сверхинтеллекта невозможным.
Например, скорость передачи сигнала ограничена скоростью света, а на планковских масштабах появляется неопределённость Гейзенберга. Отсюда вытекает первый фундаментальный предел — предел Бремерманна, вводящий ограничения на максимальную скорость вычислений для автономной системы заданной массы m.
Другой предел связан с принципом Ландауэра, в соответствии с которым существует минимальное количество теплоты, выделяемое при обработке 1 бита информации. Слишком быстрые вычисления вызовут недопустимый разогрев и разрушение системы. В действительности, современные процессоры от лимита Ландауэра отделяет менее чем тысячекратное отставание. Казалось бы, 1000 — это довольно много, однако ещё одна проблема заключается в том, что многие интеллектуальные задачи относятся к классу сложности EXPTIME. Это означает, что время, необходимое для их решения, является экспоненциальной функцией от размерности задачи. Ускорение системы в несколько раз даёт лишь константный прирост «интеллекта».
В общем, есть очень серьёзные основания полагать, что сверхинтеллектуального сильного ИИ не получится, хотя, конечно, уровень человеческого интеллекта вполне может быть превзойдён. Насколько это опасно? Скорее всего, не очень.
3. мы беспокоимся совсем не о том
К сожалению, в результате спекуляций алармистов на страхах публики, воспитанной на «Терминаторе» и знаменитом HAL 9000 Кларка и Кубрика, происходит смещение акцентов в сфере безопасности ИИ в сторону анализа маловероятных, но эффектных сценариев. При этом реальные опасности ускользают из виду.
Любая достаточно сложная технология, претендующая на то, чтобы занять важное место в нашем технологическом ландшафте, безусловно приносит с собой специфические риски. Множество жизней было погублено паровыми машинами — на производстве, на транспорте и так далее — прежде чем были выработаны эффективные правила и меры по обеспечению безопасности.
Если говорить о прогрессе в области прикладного ИИ, можно обратить внимание на связанную с ним проблему так называемого «Цифрового тайного суда». Всё больше и больше прикладных систем ИИ принимает решения по вопросам, затрагивающим жизнь и здоровье людей. Сюда относятся и медицинские диагностические системы, и, например, системы, принимающие в банках решения о выдаче или невыдаче кредита клиенту.
В то же время структура используемых моделей, наборы используемых факторов и другие детали процедуры принятия решения скрыты коммерческой тайной от человека, чья судьба находится на кону.
ИИ, обученный на решениях таких экспертов, будет добросовестно воспроизводить эти предрассудки в своих решениях. В конце концов эти модели могут содержать в себе специфические дефекты.
Этими проблемами сейчас мало кто занимается, поскольку, конечно, SkyNet, развязывающий ядерную войну, это, безусловно, куда более зрелищно.

Нейросети как «горячий тренд»
Читайте также:

С одной стороны, нейронные сети — это одна из самых старинных моделей, применяющихся для создания систем ИИ. Появившиеся изначально в результате применения бионического подхода, они довольно быстро убежали от своих биологических прототипов. Исключением тут являются только импульсные нейронные сети (впрочем, пока не нашедшие широкого применения в индустрии).
Прогресс последних десятилетий связан с развитием технологий глубокого обучения — подхода, при котором нейронные сети собирают из большого количество слоёв, каждый из которых построен на основе определённых регулярных паттернов.
Помимо создания новых нейросетевых моделей важный прогресс был также достигнут в области технологий обучения. Сегодня нейронные сети учат уже не при помощи центральных процессоров компьютеров, а с использованием специализированных процессоров, способных быстро производить матричные и тензорные вычисления. Наиболее распространённый на сегодняшний день вид таких устройств — видеокарты. Впрочем, активно ведётся разработка ещё более специализированных устройств для обучения нейросетей.
В целом, безусловно, нейронные сети на сегодняшний день, — это одна из основных технологий в области машинного обучения, которой мы обязаны решению многих задач, ранее решавшихся неудовлетворительно. С другой стороны, конечно, нужно понимать, что нейронные сети не являются панацеей. Для некоторых задач они — далеко не самый эффективный инструмент.
Так насколько умны нынешние роботы на самом деле?
Всё познаётся в сравнении. На фоне технологий 2000-го года нынешние достижения выглядят настоящим чудом. Всегда найдутся люди, любящие побрюзжать. 5 лет назад они вовсю трындели о том, что машины никогда не выиграют у людей в го (ну или, по крайней мере, выиграют очень нескоро). Говорили о том, что машина никогда не сможет нарисовать с нуля картину, в то время как сегодня люди практически неспособны отличать картины, созданные машинами, от картин неизвестных им художников. В конце прошлого года машины научились синтезировать речь, практически неотличимую от человеческой, а в последние годы от музыки, создаваемой машинами, не вянут уши.
Посмотрим, что будет завтра. Я смотрю на эти области применения ИИ с большим оптимизмом.
Перспективные направления: где начать погружение в сферу ИИ?
Читайте также:

Я бы посоветовал постараться на хорошем уровне освоить один из популярных нейросетевых фреймворков и один из популярных в области машинного обучения языков программирования (наиболее популярна на сегодняшний день связка TensorFlow + Python).
Овладев этими инструментами и имея в идеале крепкую базу в области математической статистики и теории вероятностей, следует направить свои усилия в ту сферу, которая будет наиболее интересна лично вам.
Потребность в специалистах по машинному обучению существует в самых разных областях — в медицине, в банковском деле, в науке, на производстве, поэтому сегодня хорошему специалисту предоставлен как никогда широкий выбор. Потенциальные преимущества любой из этих отраслей мне представляются несущественными по сравнению с тем, что работа будет приносить вам удовольствие.