Моделирование мышления (школа Бонгарда)
Материал из MachineLearning.
О работах М.М.Бонгарда и их продолжении
(М.Н.Вайнцвайг)
Работы, о которых пойдет речь были начаты Михаилом Моисеевичем Бонгардом (для большинства знавших его он был просто Микой) где-то в конце пятидесятых годов, когда нынешняя лаборатория передачи информации в органах чувств Института проблем передачи информации была лабораторией цветового зрения в Институте биофизики АН СССР, куда Мика пришел, надеясь, что, исследуя зрение, он подойдет к пониманию механизмов мышления.
Mика был чрезвычайно яркой и сильной личностью. С детства не обладая крепким здоровьем, он, побывав на фронте, занялся альпинизмом, стал мастером спорта и в любой мороз ходил по улице в обычном костюме и рубашке с отложным воротником (галстук он никогда не носил). Если было уж очень холодно, на голове бывала шапка, поскольку кончики ушей у него были отморожены и очень чувствительны.
Увлекаясь чем-либо, Мика легко заражал своей увлеченностью других, оказывая большое влияние на всех, кто с ним вместе работал. При этом он живо интересовался и чужими идеями, активно стараясь проникнуть в их суть, из-за чего общение с ним было всегда полезно даже для тех, кто имел с ним существенные идейные расхождения.
Мика был физиком не только по образованию (окончил физ-фак МГУ), но и по подходу к исследованию. Каждая задача, которой он занимался, была для него лишь очередным шагом на пути к решению какой-то более общей проблемы и интересовала лишь до тех пор, пока ее решение не становилось принципиально понятным. Поэтому он редко занимался наведением большой строгости в работы, доказательством теорем и пр. Такую возможность он, как правило, оставлял другим. Сам же предпочитал двигаться дальше.
Изучение зрения он начал с электрофизиологического исследования нейронной организации сетчатки лягушки, опираясь на педставление о ней как о части мозга выдвинутой на периферию. Вскоре, однако, стало понятно, что чисто электрофизиологические исследования мало продвигают в понимании механизмов не только мышления, но и самого зрения. Был необходим некий взгляд на проблему сверху. Тогда у нас только входило в моду слово “кибернетика”, вышел вызвавший тогда очень широкий резонанс сборник “Автоматы” под редакцией К.Шеннона и Дж. Маккарти, стали доступными первые вычислительные машины, появились первые, еще очень туманные сведения о персептроне, вызвавшие интерес к проблемам обучения распознаванию образов, и была надежда, что достаточно скоро на конструктивном уровне удастся разобраться в том, как устроено мышление.
Решение проблемы распознавание тогда рассматривалось как этап на этом пути, а само распознавание как важный самостоятельный блок общего механизма мышления, в котором можно относительно просто разобраться отдельно от механизма мышления. Все это привело Мику к отходу от исследования нейронных механизмов зрения и рассмотрению более общих задач, связанных с моделированием процессов распознавания и обучения.
Примечательно, что в настоящее время происходит возврат интереса к нейронной организации механизмов мышления, который сейчас в основном связан с возможностью эффективного распараллеливания обработки в процессах анализа сенсорной информации, ассоциативного обучения и принятия решений.
Первые программы, которые Мика писал еще один, были направлены на моделирование процесса поиска закономерностей. Первая из них, названная "Открой закон", посредством перебора формул и их проверки на таблице числовых примеров восстанавливала арифметический закон, по которому эта таблица была построена. В этой программе метод проб и ошибок реализовывался в самом грубом и непосредственном виде и основывался на переборе множества всех априори возможных законов, который не зависел от результатов каких-либо промежуточных проверок. Даже тогда эта программа выглядела достаточно тривиальной и была интересна лишь с точки зрения возможности машинной реализации процесса перебора формул. Поэтому вскоре была написана вторая программа - "Арифметика", отождествляющая данную для экзамена таблицу чисел с одной из таблиц, представленных для обучения и построенной по мнению программы по тому же закону, что и данная для экзамена. Это делалось не путем перебора и проверки множества арифметических законов, а на основе представления строчек таблиц наборами двоичных признаков, имеющих вид неравенств. В результате полного перебора множества логических функций двух переменных от таких признаков отбирался относительно небольшой набор функций, принимающих на всех строчках одной и той же таблицы одинаковые значения и являющихся на данном множестве таблиц достаточно информативными и независимыми. В их терминах производилась кодировка каждой из таблиц в целом. Отождествление таблиц производилось на основе максимальной близости их кодов в метрике Хемминга.
Программа была интересна тем, что переход от пространства формул к более многомерному пространству признаков позволял значительно сократить объем перебора при поиске хоть и приближенного, но достаточного для устойчивого распознавания описания объектов. Часть этой программы, связанная с перебором логических функций, послужила потом некоторым отдаленным прототипом программы распознавания "Кора-3", алгоритм которой был предложен мною, а сама программа написана Микой совместно с А.П.Петровым.
Я тогда только окончил мех.-мат. МГУ по кафедре логики, хорошо ориентировался в разного рода представлениях логических функций, поэтому замена Микиного полного перебора на как бы табличное построение функций в “Коре-3” в виде наборов “голосующих” за каждый класс конъюнкций была сделана мною достаточно быстро.
"Кора-3" оказалась одной из первых, если не просто первой программой распознавания, с помощью которой решались прикладные задачи. Первой такой задачей было распознавание нефти. Процент ошибок, который давала "Кора-3" на этой задаче при соответствующей квалифицированной подготовке данных, был в 2-3 раза меньше, чем у специалистов-геофизиков, поэтому естественно, что у "Коры-3" было много последователей. Появились программы Браиловского и Лунца, Кунина и многих других. Эти программы расширяли область применимости "Коры-3", но практически не улучшили ее результаты для тех задач, где ей удавалось отбирать признаки. Разные модификации "Коры-3" до сих пор успешно используются для решения задач различного рода диагностики.
В связи с "Корой-3" была построена некая теория. Были доказаны теоремы о качестве отбираемых признаков, об использовании метода голосования, был разработан метод априорной оценки эффективности обучения, названный потом методом "скользящего контроля" и пр. Одновременно с этим велись работы по распознаванию зрительных сцен, в которых, кроме Мики и меня, участвовали М.С.Смирнов, В.В.Максимов, Г.М.Зенкин и А.П.Петров.
В 1963г наша лаборатория перешла в ИППИ. Примерно в это время, базируясь на идеях "Арифметики" и "Коры-3", была написана программа распознавания изображений - "Геометрия" и ряд ее модификаций. Результаты работы этих программ, однако, уже не были столь эффектными. Оказалось, что идей, связанных с переходом к случайно взятому многомерному пространству признаков для распознавания изображений далеко не достаточно. Это послужило причиной начала кризиса распознаватель-ского жанра в нашей лаборатории.
Стало понятно, что метод проб и ошибок при обучении распознаванию не панацея, поскольку универсальное обучение всегда требует полного показа множества примеров, а потому реально неосуществимо и неинтересно. В своей книге Мика потом писал: "Мы видим, что система способная обучаться на разумном числе примеров, обязательно должна обладать достаточно высокой начальной организацией. Эта организация не может быть достигнута в ходе предварительного обучения. Она должна быть привнесена извне конструктором систе-мы." Преодоление кризиса шло в следующих направлениях.
Стало ясно, что алгоритмы обучения должны быть строго согласованы со способом описания объектов мира и опираться на некоторые априорные знания об устройстве мира, что основная трудность решения задач распознавания лежит не в невозможности реализовать очень большой перебор решающих правил и их проверку на материале обучения, а в выборе того естественного языка, в терминах понятий которого должны описываться объекты. При неудачно сделанном описании найденные при обучении решающие правила перестают правильно экстраполировать - возникают “предрассудки”.
Результатом осознания всех этих обстоятельств стала вышедшая в 1967г. книга М.М.Бонгарда "Проблемы узнавания". В ней, в частности, был изложен проект новой системы распознавания геометрических изображений, получившей у нас условное название "Геометрия 2". В основе этой системы лежал язык с достаточно сложно организованной структурой типов данных и применимых к ним операторов. Процесс анализа изображений (т.е. применения операторов и построения соответствующих им выражений языка) управлялся критерием "развала на кучи" (теперь бы сказали “кластеризации”) различных промежуточных числовых параметров - площадей, периметров, углов наклона и пр., - что было направлено как на сокращение перебора в процессе анализа изображений, так и на избавление от “предрассудочных” решающих правил.
Программа "Геометрии 2" постепенно реализовывалась В.В.Максимовым, поскольку сам Мика после написания книги потерял к ней какой-либо интерес. Дело в том, что к тому времени стало окончательно ясно, что невозможно построить хорошую систему распознавания без использования развитого рекурсивного обучения, которое должно включать в себя не только процесс последовательного решения задач, но и процесс их постановки, обусловленный какими-то метацелями.
Таким образом была разрушена исходная концепция - оказалось, что исследование механизма распознавания - задача не многим более простая, чем исследование механизма мышления и организации поведения. Поэтому интерес к проблеме распознавания как простой фундаментальной задаче, стоящей на пути к пониманию устройства механизма мышления был утерян.
Чтобы разобраться в устройстве механизма мышления нужна была достаточно простая и в то же время достаточно универсальная модель поведения, на которой можно было бы про-следить процесс рекурсивного формирования понятий при переходе от задачи к задаче, процесс постановки задач и пр.
К тому времени наш распознавательский коллектив распался как бы на две независимые группы. В первую входили М.М.Бонгард, М.С.Смирнов и В.В.Максимов. Вторая состояла из меня и М.П.Поляковой. Примерно в одно время в этих группах в значительной мере независимо друг от друга появились две модели такого рода - в первой группе - "Животное", во второй - игра по обучению языку. Для каждой из этих моделей строились свои системы реализации, основанные на различных, во многом взаимодополняющих подходах. Дух соревнования и взаимного интереса, существовавший тогда между этими группами плодотворно сказывался на ходе обеих работ. К сожалению, в самый разгар начальных работ по "Животному" Мика погиб. Это случилось в августе 1971г. на Памире во время альпинистской экспедиции и было невосполнимой утратой как для всего коллектива лаборатории, так и для дальнейшей работы по "Животному". Попытки продолжать работу над "Животным" оставшимся коллективом, к которому присоединился И.С.Лосев, к существенному продвижению не привели, и работа была прекращена.
Осталась наша игра по обучению языку. Уже начальный анализ поведения человека в ней показал, что закономерности находятся в ней не в виде алгоритмов дачи ответов, а в виде некоторых утверждений, которые потом с помощью логического вывода преобразуются в алгоритмы. Так еще в 1967г. у нас возникло направление, которое потом в мире получило название автоматического синтеза программ. Первая работа под таким названием была опубликована в США лишь в 1971г.
Был разработан некоторый простой универсальный язык, на котором записывались и утверждения и алгоритмы и для этого языка М.Поляковой был построен алгоритм, который по системе утверждений с указанием известности и неизвестности входящих в них переменных строил алгоритм вычисления значений неизвестных по значениям известных.
В процессе работы над этим алгоритмом при попытках сделать его более эффективным выяснилось, что в основе вывода и решения задач, также как в основе обобщения может лежать одна и та же операция ассоциации (т.е. установления оптимального поэлементного или пофрагментного соответствия) слов произвольной длины, выполняемая над всеми записями, лежащими в памяти, а потому могущая рассматриваться как параллельная.
Известные нам тогда конструкции ассоциативной памяти не позволяли реализовывать такую операцию. Они могли работать лишь со словами фиксированной длины.
Однажды, рассказав Е.А.Либерману о нашем языке и системе вывода, я услышал от него, что необходимые нам операции реализуются в живой клетке на основе комплементарности молекул. Так возникла наша с ним работа по молекулярной вычислительной машине.
Наличие конструктивной модели ассоциативной памяти позволило пойти дальше и разработать на ее основе грубую модель механизма мышления, в которой параллельная обработка всего содержимого памяти рассматривалась как бессознательный процесс и лишь последовательное помещение информации в поле внимания, откуда она автоматически заносилась в память и ассоциировалась с ее содержимым, считалось процессом сознательным. В дальнейшем эта модель постепенно уточнялась и конкретизировалась.
Следующее яркое событие было связано с приходом в нашу группу А.Диментмана, с которым мы придумали линейную конструкцию электронной ассоциативной памяти, способной выполнять необходимые операции.
С этого момента наша работа, получив ориентацию на конкретную конструкцию памяти, которая навязывала определенные принципы обработки хранящейся информации, стала более приземленной, направленной на разработку конкретных параллельных алгоритмов и уточнение конструкции памяти.
Постепенно наша группа стала расширяться. Из Животного" перешел к нам Лосев. Потом были получены ставки, на которые пришли Татузов, Концевич, Багоцкая. Группа выделилась в самостоятельную лабораторию. Начался долгий и не всегда гладко проходивший этап разработки алгоритмов ассоциаций, ассоциативного обобщения и решения задач, который проходил на фоне добывания валюты для покупки машин, организации этой покупки осложнившейся и затянувшейся из-за эмбарго и отнявшей много времени и сил, освоения машин, разработки удобного матобеспечения и пр.
Были найдены некоторые естественные для человека типы ассоциации - жесткая, мягкая, с учетом равенства длин, с учетом равенства фрагментов описаний и пр. Все это тогда касалось в основном обработки символьных последовательностей. Хотя попытки реализовать ассоциации с учетом равенства фрагментов на линейной конструкции ассоциативной памяти с самого начала натолкнулись на определенные трудности, у нас долгое время все же была надежда, что процесс организации поведения удастся реализовать на ее основе, ограничив тем или иным способом класс таких ассоциаций, поскольку переход на более сложные конструкции тогда нам представлялся абсолютно нереальным.
В некоторый момент, однако, были построены примеры задач (неполная индукция, решение силогизмов и пр.), которые быстро решаются человеком, но требуют для этого устанавления одновременных связей между далекими элементами памяти. Это привело к необходимости рассмотрения коммутационной среды, что перевело нашу работу на следующий качественно новый этап. Несмотря на то, что с самого начала были известны примеры задач, эффективно решаемых с помощью коммутационной среды, сколько-нибудь полного представления о том, как она должна использоваться в организации мыслительного процесса долгое время не было. Было непонятно, чему в общем случае должны соответствовать связи в коммутационной среде, в какие моменты и по каким критериям они устанавливаются, и какая информация должна по ним передаваться.
Лишь постепенно удалось уложить процесс построения понятий и законов в единую рекурсивную схему, эффективно реализуемую на этой архитектуру.
Идея состояла в том, что в процессе ассоциаций хранящихся в памяти описаний не только формируются некоторые простые понятия, используемые в качестве элементов последующих описаний, но и строится семантическая сеть, в которой каждое из понятий оказывается связанным с множеством его конкретных представителей. Это позволяло, в частности, одновременно для всех, хранящихся в памяти понятий вычислять меры пересечения их множеств истинности с множеством истинности того понятия, на которое в данный момент обращено внимание, и тем самым осуществлять проверку всех содержащих это понятие импликативных гипотез.
В это время в мире стали активно появляться многопроцессорные вычислительные системы с коммуникационной средой на основе гиперкуба, и у некоторых наших сотрудников (Лосев, Диментман, Оганов) возникло желание построить для наших задач специализированную вычислительную систему.
Хотя с самого начала было очевидно, что в наших условиях эта затея обречена на провал и я был против такого рода работ, политическая конъюнктура взяла верх - идея была поддержана и нашей дирекцией и отделением информатики. Были получены дополнительные ставки и некоторая финансовая поддержка. В лабораторию вошла группа электронщиков, которая занялась реализацией макета системы. Часть основных сотрудников также в значительной мере переключилась на это простое, понятное и интересное дело, обещающее с их точки зрения относительно быстрый выход. И хотя исследования по устройству собственно механизмов мышления в общем-то никогда не прекращались (была построена модель механизма мотива-ции, модель обучения правилам оптимального поведения, разработан язык описания и основные принципы ассоциации пространственно-временных объектов), произошло явное смещение акцентов, приведшее к значительному замедление такого рода исследований. Лишь с началом перестройки стало окончательно ясно, что изготовить макет сколько-нибудь хорошей вычислительной системы нашими силами невозможно, и связанные с этим работы были прекращены. Можно было бы сказать, что все это время и силы были потрачены впустую, если не считать того, что мы стали значительно лучше разбираться в принципах и возможностях параллельной организации процессов вычисления и коммуникации.
Еще раз подчеркну, что все это время мы в основном ориентировались на обработку информации, представленной в виде символьных последовательностей.
Отчасти это было обусловлено тем, что конструкция ассоциативной памяти с самого начала строилась и отлаживалась на игре по обучению языку, отчасти же тем, что все предпринимаемые нами попытки построить удовлетворяющую нас модель зрительной ассоциативной памяти долгое время ни к чему хорошему не приводили - узким местом была проблема эффективного установления оптимального соответствия объктов. В связи с этим считалось, что зрительная и тактильная информация должна сначала обрабатываться соответствующими входными анализаторами, переводящими ее в символьную форму, в которой она потом поступает для хранения и обработки в ассоциативную память. На проблемы, связанные с быстрой реализацией так привычных для человека ассоциаций зрительных сцен с точностью до изме-нения ракурса, требующих преобразований систем координат непосредственно в процессе установления соответствия, тогда как бы закрывались глаза. Так было до тех пор, пока в 1994г. нами не был построен быстрый и просто реализуемый алгоритм установления поточечного соответствия изображений, основанный на пирамидальных принципах. Алгоритм допускал параллельную реализацию и легко укладывался в архитектуру типа нейронных сетей. На его основе был построен ряд моделей зрительной ассоциативной памяти, позволяющих осуществлять выборку объектов в значительной мере инвариантно к изменениям ракурсов их наблюдения.
Наличие такого алгоритма в большой степени возродило наш интерес к общим проблемам обработки изображений, формирования зрительных понятий и основанных на них законов.
К тому времени у нас вновь установился контакт с В.Максимовым, который после реали-зации “Геометрии-2” и распада “Животного” долгое время занимался в основном вопросами цветного зрения.
С ним был разработан начальный проект системы, способной на основе зрительной информации (т.е. результатов наблюдений движения шаров на столе, их соударений, отражений и попаданий в лузы) обучаться ведению игры наподобие бильярда, постепенно совершенствуя при этом стратегию и точность ударов.
Начальные попытки реализации этой системы были предприняты поступившим ко мне в аспирантуру сыном Максимова - Павлом. К сожалению, эта совместная работа длилась недолго. Недостаток финансирования заставил В.Максимова представить самостоятельный проект в РФФИ по отделению физиологии и он вместе с сыном практически целиком переключился на него.
Теперь работа над системой продолжается без них. Она заставляет на новом уровне вернуться к идеям и подходам, используемым когда-то в “Геометрии-2”. Основное отличие теперь состоит как в переходе на значительно более развитый язык, использующий, в частности, представления о линейных метрических пространствах, так и в том, что приходится практически полностью переделывать схему процесса формирования понятий, привязывая ее к конструкции ассоциативной памяти и укладывая в рамки единого рекурсивного процесса организации оптимального поведения.
При этом все чаще возникает ощущение, что в устройстве механизма мышления почти все понятно, и жаль, что нет Мики, с которым можно было бы все это обсудить. Впрочем, справедливости ради следует признать, что такое ощущение возникало иногда и раньше.