Антология машинного обучения. Важнейшие исследования в области ИИ за последние 60 лет
Последние достижения глубокого обучения были сделаны не в одночасье, как может показаться по сообщениям в СМИ. История перехода ИИ, основывавшегося на символах, логике и системе правил, к глубокому обучению малоизвестна. Эта книга о появлении и развитии глубокого обучения с моей точки зрения как того, кто стоял у истоков разработки алгоритмов обучения нейронных сетей в 1980-х годах и в качестве президента Фонда Neural Information Processing Systems [44] (NIPS) курировал открытия в области машинного и глубокого обучения в течение последних 30 лет. Долгие годы нас преследовали неудачи, но в конце концов наши настойчивость и терпение были вознаграждены.
Глава 2. Перерождение искусственного интеллекта
Марвин Минский – блестящий математик и основатель Лаборатории искусственного интеллекта в МТИ в США. Основатели задают направление всей отрасли, и в 1960-х годах эта лаборатория стала цитаделью разума. У Минского за минуты рождалось огромное количество идей, и он мог убедить любого, что его мнение является верным, даже если здравый смысл говорил об обратном. Я восхищался его умом и смелостью, но был не согласен с его взглядами на ИИ.
Детская игра?
Blocks World – хороший пример проекта, созданного Лабораторией искусственного интеллекта МТИ в 1960-х годах. Если объяснять просто, Blocks World состоял из прямоугольных строительных блоков, которые можно было сложить в различных сочетаниях (рис. 2.1). Основной целью было написать программу, которая умела бы обрабатывать запросы вроде: «Найди большой желтый блок и положи его на красный блок», – а также продумывать шаги, необходимые для выполнения задания роботизированной рукой. Это похоже на детскую игру, однако требовалось написать сложную программу, причем настолько громоздкую, что было очень тяжело устранять неполадки. Программа была заброшена, когда студент Терри Виноград, написавший программу, покинул МТИ. Простая на первый взгляд программа оказалась головоломной. Но даже если бы ее удалось реализовать, все равно она не нашла бы применения вне лаборатории, ведь в реальном мире у объектов разные форма, размер и вес, а освещение может сильно отличаться в зависимости от места и времени, что сильно затрудняет распознавание.
В 1960-х годах Лаборатория ИИ получила крупный грант от Министерства обороны США на создание робота, играющего в пинг-понг. Я однажды услышал историю о том, что ученый, руководивший проектом, якобы забыл попросить деньги, необходимые на создание для робота зрительной системы, и потому поручил это дело аспиранту в качестве летнего проекта. При случае я спросил у Марвина Минского, правда ли это? Он резко ответил, что я ошибаюсь: «Мы поручили задачу студенту-бакалавру». Документ из архива МТИ подтверждает его слова (рис. 2.2) [45].
Рис. 2.1. Марвин Минский наблюдает за роботом, укладывающим блоки. 1968 год. Blocks World был упрощенной моделью того, как мы взаимодействуем с окружающим миром. Но все оказалось гораздо сложнее, чем кто-либо предполагал, и проблема не была решена, пока это не сделало глубокое обучение в 2016 году
То, что казалось простым на первый взгляд, стало своего рода зыбучим песком для целого поколения ученых, работающих над созданием компьютерного зрения.
Почему компьютерное зрение – трудная задача?
Мы, как правило, без проблем определяем, что за объект перед нами, независимо от его расположения, размера, ориентации в пространстве и освещенности. Одна из первых идей, касающихся компьютерного зрения, предлагала сопоставлять шаблон предмета с его пиксельным изображением. Но это не сработало, потому что если поменять положение одного и того же объекта, то его изображения не совпадут. Пример: фотография двух птиц на рис. 2.3. Если вы наложите изображение одной птицы на изображение другой, то какая-то его часть совпадет, но остальная – нет. В то же время оно может быть удачно совмещено с изображением птицы, относящейся к другому виду, но находящейся в такой же позе.
Рис. 2.2. Первая страница летнего проекта по созданию машинного зрения в МТИ. dspace.mit.edu/handle/1721.1/6125
Рис. 2.3. Две зебровые амадины, изображения которых надо совместить. Мы без труда определим, что это птицы, относящиеся к одному и тому же виду. Но из-за разного положения на снимке их сложно сравнивать с помощью шаблона, хотя у них схожие идентификационные признаки
Ученые добились прогресса, когда сосредоточились не на шаблонах, а на схожих чертах. Например, орнитологи должны профессионально определять разные виды птиц, так как некоторые могут отличаться лишь отдельными неявными чертами. В популярной прикладной книге, помогающей идентифицировать птиц, дается всего одна фотография каждой птицы и множество схематичных рисунков, на которых обозначены ключевые различия (рис. 2.4) [46]. Хорошая особенность – та, которая присутствует только у одного вида птиц, но практика показывает, что схожие признаки можно обнаружить у нескольких видов. Таким образом, единственный способ идентифицировать птицу – определить уникальный набор различных признаков: цвет оперения, полосы над глазами, вкрапления на крыльях. Когда не получается распознать птиц по этим чертам, ученые обращаются к их пению. Рисунки отличительных особенностей птиц гораздо информативнее, так как фотографии переполнены лишней информацией.
Рис. 2.4. Изображение отличительного признака, по которому можно определить вид птицы среди схожих. Стрелки указывают на участки оперения, которые особенно важны для того, чтобы распознать вид птицы семейства соловьиных: некоторые из них бросаются в глаза, другие нечеткие; одни длинные, другие короткие. Из книги Роджера Петерсона, Гайя Маунтфорта и Филипа Холлома «Справочник птиц Британии и Европы»
Проблема такого подхода в том, что очень непросто разработать анализаторы признаков для сотен тысяч объектов, и даже с большим набором признаков программе будет трудно различить объекты на изображении, если те частично закрыты, и понять, где заканчивается один объект и начинается другой.
Едва ли в 1960-х кто-то мог предположить, что потребуется 50 лет и в миллион раз бо́льшая мощность компьютера, прежде чем компьютерное зрение достигнет уровня человеческого. Предположение, что создать машинное зрение будет просто, основывается на том, что мы сами без труда видим, слышим и передвигаемся. Мы профессионалы во всем вышеперечисленном, потому что указанные навыки помогают нам выжить, а эволюции понадобились миллионы лет, чтобы усовершенствовать их. Это и сбило с толку первых исследователей в области ИИ. Обратная ситуация с доказательством теорем: человеку нужно обладать высоким интеллектом, чтобы сделать это, в то время как для компьютера приведение доказательства не составит никакого труда, потому что логика у него развита гораздо лучше, чем у нас. Способность мыслить логически – результат поздней эволюции, и даже людям нужна тренировка, чтобы выстроить длинную логическую цепочку и по ней прийти к однозначному выводу. Для большинства проблем, которые нужно решить, чтобы выжить, необходимы выводы из предыдущего опыта и их обобщение.
Экспертная система
Экспертные системы, основывающиеся на определенных правилах, были популярны в 1970–1980-х годах. Их цель – решение таких проблем, как постановка медицинского диагноза, с помощью набора правил. Одна из первых экспертная систем MYCIN [47], например, была специально разработана для анализа на бактерии, вызывающие различные инфекции, в том числе менингит. Первый шаг – сбор правил и фактов, которыми руководствуются врачи-инфекционисты. Далее были добавлены истории болезни и диагнозы пациентов, и на их основе сделаны соответствующие логические выводы. Слабым местом такого подхода был сбор экспертной информации, особенно если речь шла о сложных проблемах. Лучшие диагносты не используют правила, они полагаются на свой опыт, а его трудно кодифицировать [48]. Более того, экспертная система должна постоянно обновляться: нужно вносить в базу данных новые факты и убирать оттуда устаревшие. На практике MYCIN никогда не использовалась врачами, потому что все вопросы, которые система задает пациенту, требовалось вносить в компьютер, а занятой врач не может тратить на это по полчаса каждый раз. Однако многие экспертные системы были написаны для других целей, например для управления разливом токсичных веществ, планирования маршрута для беспилотных транспортных средств и распознавания речи. Некоторые из них используются до сих пор.