Компьютерная лингвистика для всех - Мифы, Алгоритмы, Язык
Шрифт:
АССОЦИАТИВНЫЙ РАЗУМ
Рассмотрим задачу на ассоциативное мышление с одним неизвестным. "Не трать свое время на х. У него были хорошие х, а мне не повезло. Он взял со стола х и попросил еще одну. Я не должен был играть с ним в x, так как он жульничает". Немного подумав, любой найдет ответ: х - это карты. Каждый человек решает подобные задачи по многу раз на день. Что при этом происходит? Мозг ведет поиск в некотором смысловом пространстве человека. Ключевые слова каждого уточнения определяют некоторую макрогипотезу, уточняемую последующими утвертдениями. Такие психологические эксперименты описал А. Г. Ивахненко (75). Может ли компьютер решать подобные задачи? Ответ положителен, если при этом удается достаточно полно отразить смысловое пространство человека в памяти ЭВМ. Аналогичные процессы происходят в мозгу человека, если он что-то вспоминает. Возбуждаются некоторые ассоциативные приметы забытого, ситуация, при которой произошло запоминание, цель забытого объекта, его качественные характеристики, ощущения, связанные с забытым. В итоге вдруг возникает забытое слово или образ. В повести "Сандро из Чегема" Ф. Искандер описал процесс вспоминания разбойника.
" -
– кричал мальчишеский голос, волнуя дядю Сандро какой-то странной тревогой. Время от времени мальчик кидал камни, и они, хрястнув по густому сплетенью, глухо, с промежутками падали на землю. И когда камень мальчика попал в невидимую козу, дяде Сандро показалось, что он за миг до этого угадал, что именно этот камень в нее попадет. Когда коза,
=====================================================
(74) Голль И. Манифест сюрреализма // Там же.- С. 322.
(75) Ивахненко А. Г. Системы эвристической самоорганизации в технической кибернетике.- К,: Технiка, 1971.- С. 59 - 64.
=====================================================
крякнув, выбежала из-за кустов и вслед за ней появился подросток и, увидев легковые машины, смущенно замер, дядя Сандро, холодея от волнения, все припомнил. Да, да, почти так это и было. Мальчик перегонял коз в котловину Сабида. И тогда вот так же коза застряла в кустах. И он так же кидал камни и кричал. Вот так же, как сейчас, когда он попал в нее камнем, она крякнула и выскочила из кустов, а следом за ней выскочил мальчик и замер от неожиданности. В нескольких шагах от него по тропе проходил человек. Он гнал перед собой навьюченных лошадей. Услышав треск кустов, человек дернулся и посмотрел на голубоглазого отрока с такой злостью, с какой на него никогда никто не смотрел" (76).
Где-то в мозге человека запечатлеваются образы и ощущения, возникающие на его жизненном пути. Образы соединяются между собой общими ассоциативными связями, отражающими тот или иной аспект близости образов. Процессы ассоциативного мышления сводятся к проблемам поиска в этом пространстве и его пополнения новыми образами. Поэты говорят о сближении дальних образов, технические специалисты - о траекториях в смысловом пространстве, психологи - о годологическом пространстве (от греческого hodos - путь) личности, в котором отражаются цели и переходы между целями. Топологическую психологию начал развивать в начале нашего века немецкий психолог К. Левин. Поведение человека при таком подходе представляется как движение по промежуточным целям для достижения результата. Следует особо отметить, что мозг не просто отыскивает пути в пространстве образов, но находит оптимальные по тем или иным параметрам решения. Мозг успешно решает оптимизационную задачу. Все наблюдали, как упорно, несмотря на предупреждающие надписи "По газонам не ходить", люди протаптывают тропинки, делают в заборах дырки, проявляют завидную изобретательность, чтобы найти кратчайший путь. Подобные задачи оптимизации хорошо известны в математике. Предположим, на карте местности требуется определить наиболее удобный маршрут, соединяющий два населенных пункта. Известна степень энергетических и других затрат на путь между любыми двумя соседними пунктами (веса). Затраты вдоль всего пути состоят из суммы затрат на каждый отрезок, соединяющий пару соседних пунктов (рис. 8). Это хорошо
=====================================================
(76) " Искандер Ф. Сандро из Чегема // Знамя.- 1988.- Э 9.- С. 72.
=====================================================
* Рис. 8. Маршрут АСЕК имеет минимальную стои мость пути от А до К, равную 6
известная задача об отыскании кратчайшего расстояния для одного источника. Известно несколько десятков вариантов ее алгоритмического решения. В более общем случае речь идет о нахождении такого пути между двумя пунктями некоторой сети, на котором минимизируется заданная целевая функция, определяемая вдоль пути. Выбор функции диктуется прикладной областью. Веса локальных отрезков могут быть многопараметрическими и даже динамически изменяемыми. Метод решения такой задачи носит название динамического программирования (подобный способ используется при управлении ракетой-перехватчиком, автоматической проводкой судов, оптимизациеи экономических и технологических процессов). Каким-то образом мозг умеет с большой эффективностью справляться с этой задачей. Существует параллельный локальный метод для решения подобных задач. При этом в каждом пункте сети независимо выполняются прстые оптимизирующие операции, затрагивающие только его непосредственных соседей, Но в результате повторения таких тактов работы всей сети находится глобальный оптимальный маршрут (77).
=====================================================
(77) См.: Анисимов Л, В. Локальный алгоритм для задачи о кратчайшем пути из одиого источника // Кибернетика.- 1986.- Э 3.- С, 57 - 60.
=====================================================
В зависимости от количества тактов происходит постепенное улучшение решений. Если сеть представить топологическим соединением нейронов мозга, каждая локальная операция в таком алгоритме сводится к простому сравнению и уменьшению некоторых потенциалов в нейронном узле. Такие функции легко выполняются нейроструктурами. Интересно, что сам оптимальный путь от начального узла к целевому находится в обратном порядке, волна возбуждения движется от результирующего узла к начальному, выбор кяждого следующего узла выполняется по методу наименьшего градиента. Если принять, что мозг реализует именно указанный локальный алгоритм нахождения оптимального пути, становится понятным эффект "обратного течения времени во сне": волна идет от результирующего возбужденного резким сигналом узла к начальному состоянию, соответствующему пробуждению. Сам возникающий сон представляет собой цепочку возбужденных образов, отражающих такой маршрут. Научение представляет собой нахождение оптимального пути в пространсгве целей. При частом применении нейронный эквивалент этого маршрута постоянно поддерживается в активном состоянии. Возможно забывание. По всей видимости, мозг хранит все образы, с которыми человек сталкивается в течение жизни. Но даже мозг с его колоссальными возможностями не смог бы поддерживать в активном состоянии все целевые маршруты, необходимые для обеспечения активной деятельности человека. Проще научиться хорошо решать одну задачу динамического программирования и постоянно применять ее. Мозг умеет сопоставлять друг с другом простые образы и слова, соответствующие им. Образы и слова вызывдют определенные эмоциональные ощущения, и наоборот, ощущения вызывают соответствующие им образы и слова. Поэтому ассоциативные волны могут распространяться в направлении, ограниченном заданным фиксированным ощущением. Таким способом получаются решения, которые часто называют интуитивными. В свою очередь врачи-психотерапевты и представители культа, утешая и убеждая, могут правильным подбором слов добиться плавного изменения эмоционального состояня человека. Как видим, мышление сводится к динамическому управлению ассоциативными потоками. Логические выводы частный случай ассоциативных связей. Поэтому логическое научное мышление не исчерпывает всех возможностей мозга. Предположим, создана компьютерная экспертная система, умеющая решать задачи динамической оптимальной маршрутизации и поиска в сети ассоциативных признаков. Робот, снабженный подобной экспертной системой, действовал бы примерно так.
Ситуация 1. Прогулка по тропическому саду с хозяином. Робот видит змею.
– Осторожно, хозяин. Опасность. В 20 метрах впереди за деревом вижу змею.
– Почему она опасна?
– Не знаю. Но в моей оперативной ассоциативной базе знаний она попадает в черное поле, обозначенное понятием "опасность". Запрашиваю дополнительную процедуру из внешней памяти.
– Действуй. Генерируются образы. Змея. Контакт с человеком. Змея кусает. Человек лежит. Человек мертв. Смерть. Смерть - одна из характеристик опасности. Вывод: избегайте ситуации, описанной этим маршрутом. Не допускайте контакта со змеями.
– Молодец. Лучше в самом деле пойдем домой.
Ситуация 2. Робот исследует неизвестную планету. Ему необходимо вернуться в базовый лагерь к определенному часу. Робот размышляет. Прямой путь не годится - он проходит через таинственяое место, где погибла предыдущая экспедиция. Здесь очень велика координата, соответствующая опасности. Слева от этого места проживает племя глюков. Координата опасности возрастает, но все же она меньше, чем в предыдущем случае. Справа путь безопасен, но требует больше времени. Не успею в срок. Приоритет отдается времени. Поэтому обхожу слева. Глюки уничтсжили мост через реку, Вызываю целевой образ "преодоление водной преграды". Решение: материал, который легче жидкости, образующей преграду; пробуй соседние деревья; собрать плот; преодоление преграды на плоту. Веду просчет времени. Должен успеть. Приступаю к выполнению плана работ. Форсирую водную преграду. Я на другом берегу. Конец процедуры "преодоление водной преграды". Включаю скорость и по прямой мчусь в лагерь.
В этом случае для решения главной задачи роботу пришлось вызывать процедуры решения подзадач и несколько раз применять метод динамического программирования. Кроме того, использовался сложный многокомпонентный критерий оптимальности, включающий минимизацию времени и вероятность опасности. В первой ситуации робот вызвал сеть образов, связанных с понятием "змея", и произвел включение ее в общую сеть. Сеть "опасность" и новая сеть "змея" пересеклись на общем понятии "смерть". Робот просчитал возможный маршрут от "змеи" до "смерти", тем самым показав опасный вариант развития событий. Робот должен уметь, кроме решения задач динамического программирования, использовать рекурсию по управлению - решение подзадач тем же самым общим методом, а также иерархическое (рекурсивное по данным) представление знаний. Не будем здесь подробно останавливаться на способах представления знаний в системах искусственного интеллекта. Отметим только, что подобная зкспертная система (более точно - универсальная оболочка системы, позволяющая разнообразное наполнение в зависимости от предметной области) нашла неожиданное приложение, относящееся к процессу сочинения стихотворений.
МАЛЕНЬКИЕ ПЬЕСЫ ДЛЯ ЭЛЕКТРИЧЕСКОЙ МАШИНЫ
Наше путешествие привело в еще одну загадочную страну. На одном из поворотов открылся удивительный ландшафт: слова, вечные, изменяющиеся, неуловимые, образуют хороводы, шепчут забытые имена, перекликаются друг с другом и зовут, зовут в туманную даль, где даже неистовая Вселенная тихо застывает, подчиняясь волшебным ритмам и магии слов. В призрачных тающих замках грустные колдуны правят этой страной, угадывая в зеркалах и звездах отражения мира. В последнее время в эту страну все чаще и чаще забредают любопытные злектронные существа. Остановившись, как бы в изумлении они долго прислушиваются к течению слов, присматриваются к действиям колдунов и повторяют, повторяют их веч- ные напевы. А некоторые из них вдруг сами решаются на колдовство. Программисты давно пытались составить программы, сочиняющие стихи. В первых опытах заранее составлялся словарь слов и фраз, которыми можно пользоваться, и форма, которой должны соответствовать слова и фразы. Выбор слов и фраз при заполнении формы управляется тем или иным законом - чаще всего используют датчики псевдослучайных чисел. Получаются стихи, иногда напоминающие авангардистские поиски. Но при более или менее длительной эксплуатации неизбежно проявляется ограниченность такого подхода. Начинаются повторы, становится заметен плагиат формы. По такому рецепту, например, работает программа Роеtrу generation (генератор стихов), которую создала Р. Уэст из Калифорнии. Многие решили, что раз компьютер - помощник человека, то пусть он только помогает сочинять стихи. В этом случае машина генерирует "сырую" основу стихотворения, которую затем доводит и шлифует человек. Такой подход развивают Р. Ширли - английский кристаллограф, пишущий стихи, и американец Т. А. Истон. В таких случаях трудно отличить машинное творение от человеческого. Безусловно, компьютер может облегчить поиск рифм и выбор фраз, но качество стихотворения во многом определяется творчеством человека. Вот образцы такой поэзии.