Около шестидесяти лет назад на стенах 15-го этажа главного здания МГУ висели десятки листов бумаги, на каждом из которых было напечатано название спецкурса, краткое содержание и минимальный уровень знаний, наличие которых предполагалось у слушателей. В 1967 году в поисках редких курсов, подходящих для тех, кто только что начал свой второй год на мехмате, я обнаружил поразившее меня объявление. В нем Михаил Моисеевич Бонгард объявлял курс под названием, скажем, «Алгоритмы обработки информации в зрении и мышлении». (Честно говоря, точного названия я уже не помню. Уверен только, что и слово «зрение», и слово «мышление» там присутствовали.)
Что удивительного для меня было в этом объявлении? Во-первых, оно не относилось к традиционной математике. Во-вторых, фамилия Бонгард была мне знакома по рассказам моего папы, который в 1941/1942 году учился вместе с Микой Бонгардом и Ефимом Либерманом в Свердловском университете. Конечно, я пошел на этот спецкурс.

Надо сказать, что он оказался, может быть, лучшим из тех, которые я слушал на мехмате. Мика читал его блестяще. Собственно, это не был классический лекционный курс, скорее смесь спецкурса и семинара, поскольку после рассказа очередного кусочка Мика задавал слушателям вопросы и обсуждал их ответы. В первую часть курса входили как классические результаты (например, колориметрия и размерность цветного зрения) и классические постановки задач (константность цветовосприятия), так и относительно недавние работы Мики (например, модель пустого поля Ярбуса). Вторая часть курса была посвящена распознаванию образов или, как предпочитал говорить Мика, «проблеме узнавания» (он почему-то не любил слово «распознавание»). При этом объединяющей идеей и этого курса, и деятельности Мики вообще было то, что и исследования зрения, и проблема узнавания были интересны не столько сами по себе, сколько как шаги в исследовании мышления. Именно с этим были связаны как начальный выбор предмета (глаз — это часть мозга, «окно в мозг»), так и смены направлений его исследований.
Я позволю себе процитировать несколько абзацев, которые мы, авторы сборника памяти Бонгарда, написали в предисловии к нему (сборник вышел в 1975 году).
«Всё началось почти четверть века назад, когда Михаил Моисеевич Бонгард поставил перед собой цель — понять, как думает человек, каковы механизмы мышления. Ему, конечно, ясно было, что эта задача — необозримой сложности. И Бонгард начал с попытки разобраться, как работает маленькая часть центральной нервной системы — сетчатка глаза. Несколько лет он увлеченно занимался физиологией зрения, в основном исследованием механизмов цветоразличения. Им и его коллегами были разработаны и освоены эффективные методы, получены первые важные результаты. Становилось очевидным, что сетчатка является совершенным, но узкоспециализированным аппаратом, дальнейшее изучение которого весьма интересно, но почти ничего не может дать для понимания того, как человек думает. Ведь главной чертой человеческого мышления является не умение блестяще справляться с одной, пусть даже очень трудной задачей, а его универсальность, в основе которой лежит способность к обучению».
Идея, описанная в последней фразе, — одна из основополагающих идей Бонгарда. Он писал о ней в своей книге «Проблемы узнавания» и говорил в курсе (они относятся к одному и тому же времени — 1967 год). Сейчас это выглядит очевидным и банальным. Однако даже в 1975 году, когда вышел мемориальный сборник, эта идея была не только не очевидной, но и в определенной мере еретической (интересующиеся этой историей могут погуглить “AI winter”).
В качестве первого универсального блока, обладающего способностью к обучению, который необходимо исследовать, Бонгард выбрал алгоритмы узнавания, решающие «проблему узнавания» — обучения классификации для классов, заданных примерами. Первая постановка проблемы узнавания и первый алгоритм ее решения (однослойный перцептрон) были предложены Фрэнком Розенблаттом в 1958 году. Однако проблема была сформулирована как узнавание (классификация) картинок, а алгоритм, как выяснилось впоследствии, в принципе не мог решить целый ряд простых задач.
«Бонгард, по-видимому, первым поставил вопрос о создании программ, обучающихся узнаванию не только геометрических изображений. Уже в 1959 году он написал программу „Арифметика“, которая училась узнавать числовые таблицы — то есть сортировать их в соответствии с арифметическими законами, по которым они построены».

Также Бонгард, по-видимому, первым сформулировал процесс обучения распознающей программы как процесс выбора одного решающего правила из множества решающих правил. Это множество определяется конструкцией программы. Таким образом, задача узнавания, как подчеркивается в книге Бонгарда и в более поздних работах, таких как «Теория распознавания образов (статистические проблемы обучения)» Вапника и Червоненкиса, разделяется на две части: построение класса решающих правил, внутри которого будет искаться нужное, и поиск правила классификации среди заданного множества решающих правил. Вторая задача относится к статистике, а первая с точки зрения Бонгарда и является спецификой новой области науки — узнавания образов.
Несмотря на то, что вторая задача относится к статистике, выяснилось, что в ней появляются новые математические проблемы, которые или не ставились, или не были решены в классической статистике. Эти проблемы были в значительной степени решены в упомянутой работе Вапника и Червоненкиса и последующих работах Вапника. В частности, качественная идея Бонгарда о связи между мощностью множества решающих правил, используемых системой распознавания, и ее способностью к обобщению получила математическое обоснование (в уточненном виде). Работы Вапника оказали чрезвычайно большое влияние на западных ученых. Фактически, они, а также алгоритм обучения многослойных перцептронов Румельхарта привели к тому, что проблема узнавания и — шире — проблема машинного обучения с середины 1980-х стали популярными темами исследований на Западе.
Однако практически все эти исследования касались только второй задачи, то есть статистической теории распознавания. Несмотря на то, что книга Бонгарда была переведена на английский в 1971 году и получила достаточную популярность, вплоть до середины 1990-х первая задача — задача построения класса решающих правил — не получала существенного теоретического развития. В своей книге Бонгард переформулировал эту задачу как задачу поиска адекватного языка и сформулировал некоторые требования к адекватному языку. Понятие адекватного языка активно использовалось группой И. М. Гельфанда в серии работ по медицинской диагностике. В них развивались неформальные, «человеческие», а не машинные методы, с помощью которых математики вместе с врачами строили адекватные языки для конкретных задач медицинской диагностики. Это вообще было характерно практически для всех работ по распознаванию до конца XX века включительно — класс решающих правил, включающий в себя то, что Бонгард называл «пространством полезных признаков», строился человеком для конкретного класса задач.
Хотелось бы сказать еще об одной стороне деятельности Бонгарда. Он был одним из основных создателей новой области техники — в СССР ее часто называли технической и медицинской диагностикой. Фактически эта область состоит из применения к реальным задачам алгоритмов и теории распознавания образов. Однако применение к реальным задачам требует большой и нетривиальной работы даже при наличии теории. Разумеется, Бонгард это делал не один, а с соавторами, и, разумеется, в СССР существовали и независимые группы, работавшие в этой области, но всё же роль Бонгарда в создании в этой новой (тогда) и весьма важной (особенно сейчас) области трудно переоценить.
В конце 1960-х годов Бонгард потерял интерес к проблеме узнавания. С его точки зрения она перестала быть узким местом в задаче понимания мышления. Он решил, что настала пора создать модель организации поведения в целом, хотя бы и в игрушечном мире. Как и следовало ожидать, построение такой модели оказалось чрезвычайно трудным. Работе над моделью (проект «Животное») Бонгард посвятил последние пять лет своей жизни. Он погиб 5 августа 1971 года на Памире во время альпинистской экспедиции. Проект «Животное» остался незаконченным и далеким от завершения.

Как я уже говорил, после работ Бонгарда и некоторых других в 1960-х годах вплоть до начала XXI века теория автоматического поиска адекватного описания заданного класса задач стояла на месте. Однако в начале XXI века, особенно начиная с 2010-х годов, были получены удивительные результаты. Оказалось, что многослойные перцептроны, похожие на те, которые были описаны еще Розенблаттом, способны, начиная со случайного состояния, обучаться построению описания конкретной задачи, если она принадлежит одному из классов задач, неплохо решаемых человеком. При этом процесс обучения состоит в оптимизации функции потерь, которая, вместе с архитектурой связей, задается человеком. Архитектура связей и функция потерь и являются описанием класса специфических для задачи решающих правил. Однако формальных правил, связывающих описание классов задач на каком-нибудь языке с описанием адекватных архитектур и функций потерь, на данный момент не существует. При этом важно понимать, что класс решающих правил — это класс непрерывных параметрических функций определенного вида, который задается архитектурой с числом параметров от сотен тысяч до десятков миллионов. Во времена Бонгарда невозможно было представить себе ЭВМ, работающую с объектами такой сложности. Распознающие системы, основанные на таких методах автоматического построения описания объектов, называются системами глубокого обучения. Для многих задач (например, для задачи узнавания лиц) системы глубокого обучения достигают такого же качества, как человек. Как и следовало ожидать, платой за это становится требование весьма большого объема материала обучения. Обычно требуется от сотен тысяч до нескольких миллионов объектов. Требование такого количества объектов тоже было совершенно непредставимо во времена Бонгарда.
Глубокое обучение позволило резко повысить качество решения многих важных задач узнавания и задач из других областей искусственного интеллекта, таких, как перевод с языка на язык, чтение рукописного текста и т. д. Значит ли это, что идеи, изложенные в книге Бонгарда, устарели и имеют лишь историческое значение?
Я думаю, что это не так, по следующим трем причинам.
1. Любая область науки начинается со специфического неформального языка, без которого просто невозможно обсуждать, что в ней происходит. По мере развития науки часто содержание понятий этого языка несколько изменяется, но сами понятия остаются. В книге Бонгарда введены многие неформальные понятия, которые и сейчас необходимы, чтобы говорить о проблеме узнавания. Даже понятие адекватного языка имеет смысл для глубокого обучения, хотя его свойства сильно меняются.
2. Глубокое обучение заменило традиционные алгоритмы распознавания, такие как Кора́ и ее модификации, лишь в некоторых классах задач. С практической точки зрения в очень многих реальных ситуациях просто отсутствует количество объектов, нужное для применения глубокого обучения.
3. С теоретической точки зрения моделирование поведения человека требует решения задач узнавания с очень небольшим материалом обучения. Поэтому в самое последнее время появились работы, призывающие к синтезу глубокого обучения и традиционных алгоритмов распознавания. Я уверен, что на этом пути идеи Бонгарда будут востребованы.
Илья Лосев, канд. физ.-мат. наук
Фото предоставлены Е.М.Максимовой
Продолжение следует
Про лабораторию зрения ИППИ в 1960–1970 годы и Михаила Моисеевича Бонгарда
Удивительно, как написав о Вл. Вапнике и Ал. Червоненкисе, не упомянули их научного руководителя А. Я. Лернера, а также остальных сотрудников Лернера.