ГЕДЕЛЬ, ЭШЕР, БАХ: эта бесконечная гирлянда
Шрифт:
А как насчет музыки? Может показаться, что эту область легко закодировать в грамматике типа УСП или какой-нибудь подобной программе. Продолжив это наивное рассуждение, можно сказать, что значение языка опирается на связь с окружающим миром, в то время как музыка — чисто формальна. В звуках музыки нет связи с окружающим миром; это чистый синтаксис — нота следует за нотой, аккорд за аккордом, такт за тактом…
Но постойте — в этом анализе что-то не так. Почему одни произведения гораздо глубже и красивее других? Это происходит потому, что форма в музыке выразительна, и действует на некие подсознательные области нашего разума. Звуки музыки не связаны с рабами или городами-государствами, но они порождают в нас множество эмоций. В этом смысле музыкальное значение все-таки зависит от неуловимых связей между символами и вещами реального мира — в данном случае, «вещами» являются некие скрытые
Здесь я должен кое-что пояснить: в принципе, все грамматики типа УСП обладают мощью любого программирующего формализма; так что, если музыкальное значение вообще может быть как-то уловлено (мне кажется, что это возможно), то это может быть сделано в грамматике УСП. Но мне кажется, что эта грамматика будет определять не только музыкальные структуры, но и общую структуру мозга слушателя. Она будет «грамматикой мысли», а не только лишь грамматикой музыки.
Программа какого типа нужна, чтобы заставить людей признать, что она действительно что-то «понимает»? Что понадобилось бы для того, чтобы ваша интуиция не говорила бы вам, что за программой «ничего нет»?
В 1968-1970 годах Терри Виноград (он же д-р Тире-Рвинога) писал докторскую диссертацию в Массачусетском институте технологии, работая над проблемами языка и понимания. В то время в МИТе многие специалисты по ИИ работали с так называемым «миром блоков» — относительно простой областью, в которой легко было представить задачи компьютерного зрения и языка. Эта область включала стол и разноцветные блоки, похожие на игрушечные кубики — квадратные, удлиненные, треугольные, и т. д. (Иной тип «блочного мира» представлен на картине Магритта «Мысленная арифметика» (рис. 117); я нахожу это название особенно подходящим к данному контексту.) Проблемы зрения в блочном мире МИТа весьма сложны: каким образом сканирование телекамерой сцены с множеством кубиков позволяет компьютеру решить, какие типы блоков там находятся, и каково их взаимное расположение? Некоторые блоки могут лежать на других, некоторые — стоять впереди других; блоки могут отбрасывать тени и т. д.
Однако Виноград не работал над этими аспектами зрения. Он начал с предположения, что блочный мир хорошо представлен в памяти компьютера. После этого ему оставалось решить задачу о том, как заставить компьютер:
(1) понимать по-английски вопросы о ситуации;
(2) отвечать по-английски на вопросы о ситуации;
(3) понимать команды по-английски о манипуляции блоков;
(4) разбивать каждую команду на серию операций, которые он может выполнить;
(5) понимать, что он делает и с какой целью;
(6) описывать свои действия и их цель по-английски.
Может показаться, что хорошо было бы разбить общую программу на серию модулярных подпрограмм, где каждой части проблемы соответствовал бы некий модуль, и затем, после того, как каждый модуль был бы разработан отдельно, соединить их вместе. Однако Виноград нашел, что стратегия разработки независимых модулей представляла значительные трудности.
Его радикальный подход бросил вызов теории о том, что интеллект может быть подразделен на независимые и полунезависимые части. Созданная Виноградом программа ШРДЛУ (названная так в честь старого кода «ЕТАОЙН ШРДЛУ», используемого операторами линотипических машин для отметки опечаток в газетных столбцах) не разбивала задачу на отдельные концептуальные части. Операции деления предложений, производства внутренних представлений, рассуждений о мире, представленном внутри нее самой, нахождение ответов на вопросы и т. д. были тесно переплетены во внутреннем представлении процедурных знаний программы. Некоторые критики утверждали, что программа Винограда так запутана, что не представляет вообще никакой «теории» о языке и не способствует нашему пониманию процессов мышления. По моему мнению, ничто не может быть так далеко от истины как подобная критика. Шедевр, подобный ШРДЛУ, может не быть изоморфным тому, что делаем мы — безусловно, мы не должны думать, что эта программа достигла «уровня символов» — но как сам акт создания ШРДЛУ, так и размышления об этой программе позволяют узнать очень многое о работе интеллекта.
Рис. 117. Рене Магритт. «Мысленная арифметика» (1931).
В действительности, ШРДЛУ все же состоит из отдельных процедур, каждая из которых содержит некие знания о мире; но эти процедуры настолько зависят
друг от друга, что их невозможно четко разграничить. Программа похожа на крепко затянутый узел, который очень трудно распутать; но тот факт, что его не удается развязать, не означает того, что его невозможно понять. Может существовать элегантное геометрическое описание всего узла, даже если физически он запутан. Здесь уместно вспомнить метафору из «Приношения МУ» и сравнить эту проблему со взглядом на фруктовый сад под «естественным» углом.Виноград очень хорошо описал ШРДЛУ. Ниже я привожу отрывок из его статьи в книге Шанка и Колби:
Одна из основных идей, лежащих в основе этой модели, заключается в том, что всякое использование языка можно рассматривать как активацию неких процедур в слушателе. Мы можем думать о любом высказывании как о программе, которая является косвенной причиной выполнения неких операций в когнитивной системе слушателя. Это «составление программ» неявно, поскольку мы имеем дело с разумным интерпретатором, реакция которого может весьма отличаться от той, которую хотел вызвать говорящий. Точная форма «программы», воспринимаемой слушателем, определяется его знанием о мире, его отношением к говорящему и так далее. В нашей программе мы имели дело с простой версией этого процесса интерпретации, происходящего внутри робота. Каждое высказывание, интерпретированное роботом, превращалось в набор команд ПЛАННЕРа. Программа, созданная таким образом, затем использовалась для достижения желаемого эффекта. [75]
75
Terry Winograd, «A Procedural Model of Language Understanding» в сборнике R. Schank and К. Colby, eds «Computer Models of Thought and Language», стр. 170.
Упомянутый выше язык ПЛАННЕР — это один из языков ИИ; его основной чертой является то, что в него встроены некоторые операции, необходимые для упрощения задач, — например, рекурсивный процесс создания дерева подзадач, подподзадач и так далее. Это значит, что программисту уже не приходится объяснять подобные процессы снова и снова — они автоматически следуют из так называемых постановок задач. Человек, читающий составленную на ПЛАННЕРе программу, не заметит явных ссылок на эти операции; на компьютерном жаргоне говорится, что они прозрачны для пользователя. Если одна из ветвей дерева не сможет выполнить своей задачи, то ПЛАННЕР вернется назад и попробует другую дорогу, «Возврат» — ключевое слово в ПЛАННЕРе.
Программа Винограда успешно воспользовалась этими чертами ПЛАННЕРа — или, точнее, МИКРОПЛАННЕРа, частичной реализации замыслов для ПЛАННЕРа. Однако за последние несколько лет специалисты в области ИИ решили, что автоматический возврат, используемый в ПЛАННЕРе, имеет свои определенные недостатки и маловероятно, что он сможет привести к цели; так что они сосредоточили свои усилия на других областях ИИ.
Давайте посмотрим на дальнейшие комментарии Винограда о ШРДЛУ:
Определение значения каждого слова — эта программа, вызываемая в нужный момент анализа; она может производить произвольные вычисления, включающие данное высказывание и физическую ситуацию в данный момент. [76]
76
Там же, стр. 175.
Среди примеров, которые приводит Виноград, встречается следующий:
Различными возможностями значения слова «the» являются процедуры, которые проверяют разнообразные факты, касающиеся контекста, и затем определяют нужные действия, такие как «искать в базе данных описание единственного предмета, совпадающего с этим описанием» или «подтвердить, что описываемый предмет является единственным для говорящего». В программу включены различные типы эвристики для определения того, какие части контекста важны. [77]
77
Там же, стр. 175.
(Как читатель, вероятно, догадался, программа ШРДЛУ была англоязычна; задачи, которые ей приходилось решать, были специфичны для английского языка. В Диалоге «ШРДЛУ» мы постарались передать на русском как можно точнее не только содержание беседы с программой, но и ее форму, со всеми двусмысленностями и шероховатостями речи; однако комментарий Винограда о проблеме использования определенного артикля «the» был оставлен без изменения за отсутствием точного русского эквивалента. — Прим. перев.)