Глава 2 Оптимизация когнитивной функции языка
§ 1. Компьютерная лингвистика
1.1. Компьютерная лингвистика как прикладная лингвистическая дисциплина
Под термином «компьютерная лингвистика» (computational linguistics) обычно понимается широкая область использования компьютерных инструментов — программ, компьютерных технологий организации и обработки данных — для моделирования функционирования языка в тех или иных условиях, ситуациях, проблемных областях, а также сфера применения компьютерных моделей языка не только в лингвистике, но и в смежных с ней дисциплинах. Собственно, только в последнем случае речь идет о прикладной лингвистике в строгом смысле, поскольку компьютерное моделирование языка может рассматриваться и как сфера приложения теории программирования (computer science) в области лингвистики. Тем не менее общая практика такова, что сфера компьютерной лингвистики охватывает практически все, что связано с использованием компьютеров в языкознании: «Термин "компьютерная лингвистика" задает общую ориентацию на использование компьютеров для решения разнообразных научных и практических задач, связанных с языком, никак не ограничивая способы решения этих задач» [Городецкий 1989, с. 10].
В данном параграфе особое внимание уделяется компьютерным моделям отдельных фрагментов языковой системы, поскольку они позволяют расширить возможности использования языка как средства познания. Внимание к языку как средству познания объясняет возрастание роли концептуального аппарата теории знаний, возникшей в искусственном интеллекте и окончательно сформировавшейся в когнитивной науке (cognitive science), в теоретической и прикладной лингвистике.
Институциональный аспект компьютерной лингвистики. Как особое научное направление компьютерная лингвистика1) оформилась в 60-е гг. Поток публикаций в этой области очень велик. Кроме тематических
1)Русский термин «компьютерная лингвистика» является калькой с соответствующего английского термина computational linguistics. Поскольку прилагательное computational по-русски может переводиться как «вычислительный», в литературе встречается также термин «вычислительная лингвистика», однако по-русски он приобретает более узкое значение, почти приближающееся к «квантитативной лингвистике». В [Городецкий 1989, с. 10] отмечается: «Термин (...) "вычислительная лингвистика" может пониматься более узко, ибо даже при широкой трактовке понятия "вычисление" за его пределами как бы остаются такие стороны решения лингвистических задач, как, например, представление знаний, организация банков языковых данных (..). Тем самым можно считать, что термин "компьютерная лингвистика" (по своей внутренней форме) шире, чем "вычислительная лингвистика"»..
сборников, в США ежеквартально выходит журнал «Компьютерная лингвистика». Большую организационную и научную работу проводит Ассоциация по компьютерной лингвистике, которая имеет региональные структуры по всему миру (в частности, европейское отделение). Каждые два года проходят международные конференции по компьютерной лингвистике — КОЛИНГ. Соответствующая проблематика широко представлена также на международных конференциях по искусственному интеллекту разных уровней.
1.2. Когнитивный инструментарий компьютерной лингвистики
Компьютерная лингвистика как особая прикладная дисциплина выделяется прежде всего по инструменту — то есть по использованию компьютерных средств обработки языковых данных. Поскольку компьютерные программы, моделирующие те или иные аспекты функционирования языка, могут использовать самые разные средства программирования, то об общем метаязыке говорить вроде бы не приходится. Однако это не так. Существуют общие принципы компьютерного моделирования мышления, которые так или иначе реализуются в любой компьютерной модели. В основе этого языка лежит теория знаний, разработанная в искусственном интеллекте и образующая важный раздел когнитивной науки.
Основной тезис теории знаний гласит, что мышление — это процесс обработки и порождения знаний. «Знания» или «знание» считается неопределяемой категорией. В качестве «процессора», обрабатывающего знания, выступает когнитивная система человека. В эпистемологии и когнитивной науке различают два основных вида знаний — декларативные («знание что») и процедурные («знание как»2)). Декларативные знания представляются обычно в виде совокупности пропозиций, утверждений о чем-либо. Типичным примером декларативных знаний можно считать толкования слов в обычных толковых словарях. Например, чашка] — 'небольшой сосуд для питья округлой формы, обычно с ручкой, из фарфора, фаянса и т. п.' [MAC]. Декларативные знания поддаются процедуре верификации в терминах «истина—ложь». Процедурные знания представляются как последовательность (список) операций, действий, которые следует выполнить. Это некоторая общая инструкция о действиях в некоторой ситуации. Характерный пример процедурных знаний — инструкции по пользованию бытовыми приборами. Ср. текст инструкции о настойке видеосигнала для видеомагнитофона:
1) Выберите видеоканал. 2) Включите выключатель «Проверочный канал». 3) Установите переключатель «Система» в «I» положение. 4) Отрегулируйте ТВ канал таким образом, чтобы настроечная сетка была четко видна.
2)Разграничение между «знанием что» и «знанием как» восходит к Райлу [Ryle 1949)
В отличие от декларативных знаний, процедурные знания невозможно верифицировать как истинные или ложные. Их можно оценивать только по успешности—неуспешности алгоритма.
Большинство понятий когнитивного инструментария компьютерной лингвистики омонимично: они одновременно обозначают некоторые реальные сущности когнитивной системы человека и способы представления этих сущностей на некоторых метаязыках. Иными словами, элементы метаязыка имеют онтологический и инструментальный аспект. Онтологически разделение декларативных и процедурных знаний соответствует различным типам знаний когнитивной системы человека. Так, знания о конкретных предметах, объектах действительности преимущественно декларативны, а функциональные способности человека к хождению, бегу, вождению машины реализуются в когнитивной системе как процедурные знания. Т. Виноград в связи с этим отмечает: «Очевидно, что многое из того, что мы знаем, лучше представляется процедурно; такое знание интерпретировать чисто декларативно трудно. Если мы хотим, чтобы робот действовал в относительной простой среде (такой, например, как игровые кубики), то мы сделаем это наиболее естественно, описав его манипуляции как программы» [Winograd 1975, р. 189]. Инструментально знание (как онтологически процедурное, так и декларативное) можно представить как совокупность дескрипций, описаний и как алгоритм, инструкцию. Иными словами, онтологически декларативное знание об объекте действительности «стол» можно представить процедурно как совокупность инструкций, алгоритмов по его созданию, сборке (= креативный аспект процедурного знания) или как алгоритм его типичного использования (= функциональный аспект процедурного знания). В первом случае это может быть руководство для начинающего столяра, а во втором — описание возможностей офисного стола. Верно и обратное: онтологически процедурное знание можно представить декларативно.
Требует отдельного обсуждения, всякое ли онтологически декларативное знание представимо как процедурное, а всякое онтологически процедурное — как декларативное. Исследователи сходятся в том, что всякое декларативное знание в принципе можно представить процедурно, хотя это может оказаться для когнитивной системы очень неэкономным. Обратное вряд ли справедливо. Дело в том, что декларативное знание существенно более эксплицитно, оно легче осознается человеком, чем процедурное. В противоположность декларативному знанию, процедурное знание преимущественно имплицитно. Так, языковая способность, будучи процедурным знанием, скрыта от человека, не осознается им. Попытка эксплицировать механизмы функционирования языка приводит к дисфункции. Специалистам в области лексической семантики известно, например, что длительная семантическая интроспекция, необходимая для изучения плана содержания слова, приводит к тому, что исследователь частично теряет способность к различению правильных и неправильных употреблений анализируемого слова. Можно привести и другиепримеры. Известно, что с точки зрения механики тело человека является сложнейшей системой двух взаимодействующих маятников. Представьте себе человека, который внимательно анализирует каждое свое движение в процессе ходьбы — далеко ли он уйдет? В одном из фантастических рассказов описывается вполне правдоподобная трагикомическая ситуация: герой рассказа, обладавший способностью летать, полностью теряет ее после того, как группа высоколобых научных консультантов начинает изучать, как он это делает. Иными словами, экспликация имплицитного процедурного знания часто приводит к его разрушению. Тем самым возникает вопрос о возможности декларативного представления любого процедурного знания.
В теории знаний для изучения и представления знания используются различные структуры знаний — фреймы, сценарии, планы. Согласно М. Минскому, «фрейм — это структура данных, предназначенная для представления стереотипной ситуации» [Минский 1978, с. 254]. Более развернуто можно сказать, что фрейм является концептуальной структурой для декларативного представления знаний о типизированной тематически единой ситуации, содержащей слоты, связанные между собой определенными семантическими отношениями. В целях наглядности фрейм часто представляют в виде таблицы, строки которой образуют слоты. Каждый слот имеет свое имя и содержание (см. табл. 1).
Таблица 1
Фрагмент фрейма «стол» в табличном представлении
Имя слота
|
Содержание слота
|
количество ножек
|
четыре, возможно больше, минимум три
|
материал
|
дерево, пластмасса, стекло
|
поверхность
|
прямоугольник, овал, круг, квадрат
|
наличие тумб
|
факультативно
|
функции
|
обеденный, журнальный, рабочий и пр.
|
и т.д.
|
|
В зависимости от конкретной задачи структуризация фрейма может быть существенно более сложной; фрейм может включать вложенные подфреймы и отсылки к другим фреймам.
Вместо таблицы часто используется предикатная форма представления. В этом случае фрейм имеет форму предиката или функции с аргументами. Существуют и другие способы представления фрейма. Например, он может представляться в виде кортежа следующего вида:
{(имя фрейма) (имя слота)) (значение слота,), ..., (имя слотап) (значение слотал)}.
Обычно такой вид имеют фреймы в языках представлениях знаний. Так, в базе данных по кадрам фреймы представляются как последовательность свойств служащего:
{(СОТРУДНИК) (ФАМИЛИЯ) (Петров), (ДОЛЖНОСТЬ)
(истопник), (ВОЗРАСТ) (32)...}.
Как и другие когнитивные категории компьютерной лингвистики, понятие фрейма омонимично. Онтологически — это часть когнитивной системы человека, и в этом смысле фрейм можно сопоставить с такими понятиями как гештальт, прототип, стереотип, схема. В когнитивной психологии эти категории рассматриваются именно с онтологической точки зрения. Так, Д. Норман различает два основных способа бытования и организации знаний в когнитивной системе человека — семантические сети и схемы. «Схемы, — пишет он, — представляют собой организованные пакеты знания, собранные для репрезентации отдельных самостоятельных единиц знания. Моя схема для Сэма может содержать информацию, описывающую его физические особенности, его активность и индивидуальные черты. Эта схема соотносится с другими схемами, которые описывают иные его стороны» [Норман 1998, с. 359]. Если же брать инструментальную сторону категории фрейма, то это структура для декларативного представления знаний. В имеющихся системах ИИ фреймы могут образовывать сложные структуры знаний; системы фреймов допускают иерархию — один фрейм может быть частью другого фрейма.
По содержанию понятие фрейма очень близко категории толкования. Действительно, слот — аналог валентности, заполнение слота — аналог актанта. Основное отличие между ними заключается в том, что толкование содержит только лингвистически релевантную информацию о плане содержания слова, а фрейм, во-первых, не обязательно привязан к слову, и, во-вторых, включает всю релевантную для данной проблемной ситуации информацию, в том числе и экстралингвистическую (знания о мире)3).
Сценарий представляет собой концептуальную структуру для процедурного представления знаний о стереотипной ситуации или стереотипном поведении. Элементами сценария являются шаги алгоритма или инструкции. Обычно говорят о «сценарии посещения ресторана», «сценарии покупки» и т.п. Характерный пример приводится в [Норман 1998, с. 361]: «Посмотрим, каким может быть в общих чертах сценарий поведения в ресторане. Вы входите в ресторан и находите свободный столик — иногда сами, а иногда ждете, чтобы вам его указали. Садитесь и ждете.
3) Интересно, что Ч. Филлмор, обсуждая различия между категориями сцены, фрейма, схемы, шаблона, сценария, прототипа и т.п., связывает с фреймом лингвистически обусловленные характеристики структуры знаний: «Мы можем употреблять термин фрейм, когда имеем в виду специфическое лексико-грамматическое обеспечение, которым располагает данный язык для наименования и описания категорий и отношений, обнаруженных в схемах» [Филлмор 1983, с. 110].
Через некоторое время подходит официант и подает вам меню (а в Соединенных Штатах также стакан воды). Официант уходит, потом возвращается, чтобы принять заказ. Немного погодя он приносит кушанья, и вы едите. Затем официант вручает вам счет, и вы платите или ему самому, или в кассу. Оставляете чаевые, даже если еда вам не понравилась». Из приведенного описания посещения ресторана видно, что сценарные знания тесно связаны с определенной культурой. Норман сам отмечает специфическую особенность американских ресторанов, в которых официант вместе с меню приносит клиенту стакан воды. Для российской традиции нетривиальным оказывается и оплата счета в кассу, а не официанту. Процедурные знания в большей степени связаны с культурной традицией, чем декларативные. Это, по-видимому, объясняется тем, что процедурное знание, как правило, описывает поведение, которое более социологизировано, чем представление об абстрактных категориях типа движения, времени, пространства и пр. Последние более универсальны, чем способы принятия пищи, освященные традицией ритуалы выбора спутника/спутницы жизни, представления о карьере и успехе. Впрочем, многие декларативные знания прямо зависят от обучения и опыта взаимодействия с окружающим миром.
Изначально фрейм также использовался для процедурного представления (ср. термин «процедурный фрейм»), однако сейчас в этом смысле чаще употребляется термин «сценарий». Сценарий можно представить не только в виде алгоритма, но и в виде сети, вершинам которой соответствуют некоторые ситуации, а дугам — связи между ситуациями. Наряду с понятием сценария, некоторые исследователи привлекают для компьютерного моделирования интеллекта категорию скрипта. По Р. Шенку, скрипт — это некоторая общепринятая, общеизвестная последовательность причинных связей [Schank 1981]. Например, понимание диалога
На улице льет как из ведра.
Все равно придется выходить в магазин: в доме есть нечего — вчера
гости все подмели.
основывается на неэксплицированных семантических связях типа 'если идет дождь, на улицу выходить нежелательно, поскольку можно заболеть'. Эти связи формируют скрипт, который и используется носителями языка для понимания речевого и неречевого поведения друг друга.
В результате применения сценария к конкретной проблемной ситуации формируется план
4). План используется для процедурного представления знаний о возможных действиях, ведущих к достижению определенной цели. План соотносит цель с последовательностью действий.
4)Термин «план» используется в когнитивных науках и искусственном интеллекте в самых разнообразных значениях. Например, под планом может пониматься мысленная репрезентация некоторого действия, которое выполняется в отношении некоторого объекта [Солсо 1996]. В других случаях план связывается с мотивами и намерениями участников [Schank 1981]. Здесь обсуждается только одно из наиболее распространенных пониманий.
В общем случае план включает последовательность процедур, переводящих начальное состояние системы в конечное и ведущих к достижению определенной подцели и цели. В системах ИИ план возникает в результате планирования или планирующей деятельности соответствующего модуля — модуля планирования. В основе процесса планирования может лежать адаптация данных одного или нескольких сценариев, активизированных тестирующими процедурами, для разрешения проблемной ситуации. Выполнение плана производится экзекутивным модулем, управляющим когнитивными процедурами и физическими действиями системы. В элементарном случае план в интеллектуальной системе представляет собой простую последовательность операций; в более сложных версиях план связывается с конкретным субъектом, его ресурсами, возможностями, целями, с подробной информацией о проблемной ситуации и т. д. Возникновение плана происходит в процессе коммуникации между моделью мира, часть которой образуют сценарии, планирующим модулем и экзекутивным модулем.
В отличие от сценария, план связан с конкретной ситуацией, конкретным исполнителем и преследует достижение определенной цели. Выбор плана регулируется ресурсами исполнителя. Выполнимость плана — обязательное условие его порождения в когнитивной системе, а к сценарию характеристика выполнимости неприложима.
Еще одно важное понятие — модель мира. Под моделью мира обычно понимается совокупность определенным образом организованных знаний о мире, свойственных когнитивной системе или ее компьютерной модели. В несколько более общем виде о модели мира говорят как о части когнитивной системы, хранящей знания об устройстве мира, его закономерностях и пр. В другом понимании модель мира связывается с результатами понимания текста или — более широко — дискурса. В процессе понимания дискурса строится его ментальная модель, которая является результатом взаимодействия плана содержания текста и знаний о мире, свойственных данному субъекту [Джонсон-Лэрд 1988, с. 237 и далее]. Первое и второе понимание часто объединяются. Это типично для исследователей-лингвистов, работающих в рамках когнитивной лингвистики и когнитивной науки. Ср. характерное высказывание Ч. Филлмора: «{...) мы можем использовать термин модель, когда разумеем точку зрения конкретного человека на мир или то представление о мире, которое строит интерпретатор в процессе интерпретации текста» [Филлмор 1983, с. 110]. В системах ИИ модель мира является особым блоком, в который в зависимости от выбранной архитектуры могут входить общие знания о мире (в виде простых пропозиций типа «зимой холодно» или в виде правил продукций «если на улице идет дождь, то надо надеть плащ или взять зонтик»), некоторые специфические факты («Самая высокая вершина в мире — Эверест»), а также ценности и их иерархии, иногда выделяемые в особый «аксиологический блок». В процессе анализа проблемной ситуации из поступивших данных и имеющейся в модели мира информации строится модель актуальной ситуации, которая используется в моделировании различных когнитивных процессов: принятия решений, аргументации, практического рассуждения, понимания естественноязыковых текстов и диалога на естественном языке. В модели диалога происходит многоэтапная рефлексия моделей мира участников ситуации общения. В различных формализмах модель мира может иметь различную структуру: предикатную, сетевую, фреймовую и др.
Тесно связано с категорией фрейма понятие сцены. Категория сцены преимущественно используется в литературе как обозначение концептуальной структуры для декларативного представления актуализованных в речевом акте и выделенных языковыми средствами (лексемами, синтаксическими конструкциями, грамматическими категориями и пр.) ситуаций и их частей5). Будучи связана с языковыми формами, сцена часто актуализуется определенным словом или выражением. В грамматиках сюжетов (см. ниже) сцена предстает как часть эпизода или повествования. Характерные примеры сцен — совокупность кубиков, с которыми работает система ИИ, место действия в рассказе и участники действия и т.д. В искусственном интеллекте сцены используются в системах распознавания образов, а также в программах, ориентированных на исследование (анализ, описание) проблемных ситуаций. Понятие сцены получило широкое распространение в теоретической лингвистике, а также логике, в частности в ситуационной семантике, в которой значение лексической единицы непосредственно связывается со сценой.
|