Обеспечениевзаимодействия с ЭВМ на естественном языке (ЕЯ) является важнейшей задачейисследований по искусственному интеллекту (ИИ). Базы данных, пакеты прикладныхпрограмм и экспертные системы, основанные на ИИ, требуют оснащения их гибкиминтерфейсом для многочисленных пользователей, не желающих общаться скомпьютером на искусственном языке. В то время как многие фундаментальныепроблемы в области обработки ЕЯ (Natural Language Processing, NLP) еще не решены, прикладные системы могутоснащаться интерфейсом, понимающем ЕЯ при определенных ограничениях.
Существуют двавида и, следовательно, две концепции обработки естественного языка:
дляотдельных предложений;
для веденияинтерактивного диалога.
Природа обработки естественного языка
Обработкаестественного языка - это формулирование и исследование компьютерно-эффективныхмеханизмов для обеспечения коммуникации с ЭВМ на ЕЯ. Объектами исследованийявляются:
собственноестественные языки;
использованиеЕЯ как в коммуникации между людьми, так и в коммуникации человека с ЭВМ.
Задачаисследований - создание компьютерно-эффективных моделей коммуникации на ЕЯ.Именно такая постановка задачи отличает NLP от задач традиционной лингвистики идругих дисциплин, изучающих ЕЯ, и позволяет отнести ее к области ИИ. Проблемой NLP занимаются две дисциплины: лингвистика икогнитивная психология.
Традиционнолингвисты занимались созданием формальных, общих, структурных моделей ЕЯ, ипоэтому отдавали предпочтение тем из них, которые позволяли извлекать как можнобольше языковых закономерностей и делать обобщения. Практически никакоговнимания не уделялось вопросу о пригодности моделей с точки зрения компьютернойэффективности их применения. Таким образом, оказалось, что лингвистическиемодели, характеризуя собственно язык, не рассматривали механизмы его порожденияи распознавания. Хорошим примером тому служит порождающая грамматика Хомского,которая оказалась абсолютно непригодной на практике в качестве основы длякомпьютерного распознавания ЕЯ.
Задачей жекогнитивной психологии является моделирование не структуры языка, а егоиспользования. Специалисты в этой области также не придавали большого значениявопросу о компьютерной эффективности.
Различаютсяобщая и прикладная NLP.Задачей общей NLPявляется разработка моделей использования языка человеком, являющихся при этомкомпьютерно-эффективными. Основой для этого является общее понимание текстов,как это подразумевается в работах Чарняка, Шенка, Карбонелла и др. Несомненно,общая NLP требует огромныхзнаний о реальном мире, и большая часть работ сосредоточена на представлениитаких знаний и их применении при распознавании поступающего сообщения на ЕЯ. Насегодняшний день ИИ еще не достиг того уровня развития, когда для решенияподобных задач в большом объеме использовались бы знания о реальном мире, исуществующие системы можно называть лишь экспериментальными, поскольку ониработают с ограниченным количеством тщательно отобранных шаблонов на ЕЯ.
Прикладная NLP занимается обычно не моделированием, анепосредственно возможностью коммуникации человека с ЭВМ на ЕЯ. В этом случаене так важно, как введенная фраза будет понята с точки зрения знаний о реальноммире, а важно извлечение информации о том, чем и как ЭВМ может быть полезнойпользователю (примером может служить интерфейс экспертных систем). Кромепонимания ЕЯ, в таких системах важно также и распознавание ошибок и ихкоррекция.
Основнаяпроблема обработки естественного языка
Основнойпроблемой NLPявляется языковая неоднозначность. Существуют разные виды неоднозначности:
Синтаксическая(структурная) неоднозначность: во фразе Time flies like an arrow для ЭВМ неясно, идет ли речь овремени, которое летит, или о насекомых, т.е. является ли слово flies глаголом или существительным.
Смысловаянеоднозначность: во фразе The man went to the bank to get some money and jumped in слово bank может означать как банк, так и берег.
Падежнаянеоднозначность: предлог in впредложениях He ran the mile in four minutes/He ran the mile in the Olympics обозначает либо время, либо место, т.е. представлены совершенноразличные отношения.
Референциальнаянеоднозначность: для системы, не обладающей знаниями о реальном мире, будетзатруднительно определить, с каким словом - table или cake -соотносится местоимение it во фразе I took the cake from the table and ate it.
Литерация (Literalness): в диалоге Can you open the door? — I feel cold ни просьба, ни ответ выражены нестандартным способом. В другихобстоятельствах на вопрос может быть получен прямой ответ yes/no, но вданном случае в вопросе имплицитно выражена просьба открыть дверь.
Центральнаяпроблема как для общей, так и для прикладной NLP - разрешение такого рода неоднозначностей- решается с помощью перевода внешнего представления на ЕЯ в некую внутреннююструктуру. Для общей NLP такое превращение требует набора знаний о реальном мире. Так, дляанализа фразы Jack took the bread from the supermarket shelf, paid for it, and left и для корректного ответа на такиевопросы, как What did Jack pay for?,What did Jack leave? и Did Jack have the bread with him when he left? необходимы знания о супермаркетах,процессах покупки и продажи и некоторые другие.
Прикладныесистемы NLP имеют преимуществоперед общими, т.к. работают в узких предметных областях. К примеру, системе,используемой продавцами в магазинах по продаже компьютеров, не нужно”раздумывать” над неоднозначностью слова terminals в вопросе How many terminals are there in the order?.
Тем не менее,создание систем, имеющих возможность общения на ЕЯ в широких областях,возможно, хотя пока результаты далеки от удовлетворительных.
Технологиианализа естественного языка
Под технологиейанализа ЕЯ подразумевается перевод некоторого выражения на ЕЯ во внутреннеепредставление. Фактически все системы анализа ЕЯ могут быть распределены наследующие категории: подбор шаблона (Pattern Matching), синтаксический анализ, семантическиеграмматики, анализ с помощью падежных фреймов, “жди и смотри” (Wait And See), словарный экспертный (Word Expert), коннекционистский, “скользящий” (Skimming) анализ. Ниже пойдет речь о некоторыхнаиболее распространенных методах, описанных в статье.
Подбор шаблона.Сущность данного подхода состоит в интерпретации ввода в целом, а не винтерпретации смысла и структуры его отдельных составляющих на более низкомуровне. При использовании этого метода происходит сравнение уже имеющихся всистеме шаблонов-образцов с текстом, поступившим на вход. Обычно шаблоныпредставлены в виде простого списка соответствий между классами высказываний иинтерпретациями. Иногда они дополнены семантическими элементами или другимикомпонентами более высокого уровня. По такому принципу работает система Элиза,имитирующая диалог с психотерапевтом. В действительности система ничего непонимает, а лишь поддерживает диалог, сравнивая реплики пациента с шаблонами иприсвоенными им соответствующими ответными репликами, такими, как:
X всегда Y: | Вы можете привести какой-нибудь пример? |
Когда? | |
Действительно, всегда? | |
X Вы Y меня: | Почему Вы думаете, что я Y Вас? |
Вам нравится думать, что я Y Вас, не правда ли? | |
Представьте, что я Y Вас. Что Вы об этом думаете? |
В результатеЭлиза способна вести такой диалог:
Пац.: | Люди всегда пристально смотрят на меня. | подбор по 1-му шаблону с учетом всегда |
Эл.: | Вы можете привести какой-нибудь пример? | первый ответ по 1-му шаблону |
Пац.: | Например, сейчас ты смотришь на меня. | подбор по 2-му шаблону, Y=смотреть |
Эл.: | Почему Вы думаете, что я смотрю на Вас? | первый ответ по 2-му шаблону |
Пац.: | Потому что ты ненавидишь меня. | подбор по 2-му шаблону, Y=ненавидеть |
Эл.: | Вам нравится думать, что я ненавижу Вас, не правда ли? и т.д. | второй ответ по 2-му шаблону |
Синтаксическийанализ. Прииспользовании синтаксического анализа происходит интерпретация отдельных частейвысказывания, а не всего высказывания в целом. Обычно сначала производитсяполный синтаксический анализ, а затем строится внутренне представлениевведенного текста, либо производится интерпретация.
Деревьяанализа и свободно-контекстные грамматики. Большинство способов синтаксическогоанализа реализовано в виде деревьев. Одна из простейших разновидностей -свободно-контекстная грамматика, состоящая из правил типа S=NP+VP или VP=V+NP и полагающая, что левая часть правила может быть замененана правую без учета контекста. Свободно-контекстная грамматика широкоиспользуется в машинных языках, и с ее помощью созданы высокоэффективные методыанализа. Недостаток этого метода - отсутствие запрета на грамматическинеправильные фразы, где, например, подлежащее не согласовано со сказуемым вчисле. Для решения этой проблемы необходимо наличие двух отдельных, параллельноработающих грамматик: одной - для единственного, другой - для множественногочисла. Кроме того, необходима своя грамматика для пассивных предложений и т.д.Семантически неправильное предложение может породить огромное количествовариантов разбора, из которых один будет превращен в семантическую запись. Всёэто делает количество правил огромным и, в свою очередь, свободно-контекстныеграмматики непригодными для NLP.
Трансформационнаяграмматика.Трансформационная грамматика была создана с учетом упомянутых выше недостаткови более рационального использования правил ЕЯ, но оказалась непригодной для NLP. Трансформационная грамматика создаваласьХомским как порождающая, что, следовательно, делало очень затруднительнымобратное действие, т.е. анализ.
Расширеннаясеть переходов.Расширенная сеть переходов была разработана Бобровым (Bobrow), Фрейзером (Fraser) и во многом Вудсом (Woods) как продолжение идей синтаксическогоанализа и свободно-контекстных грамматик в частности. Она представляет собойузлы и направленные стрелки, “расширенные” (т.е. дополненные) рядом тестов(правил), на основании которых выбирается путь для дальнейшего анализа.Промежуточные результаты записываются в ячейки (регистры). Ниже приводится примертакой сети, позволяющей анализировать простые предложения всех типов (включаяпассив), состоящие из подлежащего, сказуемого и прямого дополнения, таких, как The rabbit nibbles the carrot (Кролик грызет морковь). Обозначения устрелок означают номер теста, а также либо признаки, аналогичные применяемым всвободно-контекстных грамматиках (NP), либо конкретные слова (by). Тесты написаны на языке LISP и представляют собой правила типа еслиусловие=истина, то присвоить анализируемому слову признак Х и записать его всоответствующую ячейку.
Разберемалгоритм работы сети на вышеприведенном примере. Анализ начинается слева, т. е.с первого слова в предложении. Словосочетание the rabbit проходит тест, который выясняет, что ононе является вспомогательным глаголом (Aux, стрелка 1), но является именной группой (NP, стрелка 2). Поэтому the rabbit кладется в ячейку Subj, и предложение получает признак TypeDeclarative, т.е. повествовательное, и системапереходит ко второму узлу. Здесь дополнительный тест не требуется, поскольку онотсутствует в списке тестов, записанных на LISP. Следовательно, слово, стоящее после the rabbit - т. е. nibbles - глагол-сказуемое (обозначение V на стрелке), и nibbles записывается в ячейку с именем V. Перечеркнутый узел означает, что в неманализ предложения может в принципе закончиться. Но в нашем примере имеется ещеи дополнение the carrot,так что анализ продолжается по стрелке 6 (выбор между стрелками 5 и 6осуществляется снова с помощью специального теста), и словосочетание the carrot кладется в ячейку с именем Obj. На этом анализ заканчивается (последнийузел был бы использован в случае анализа такого пассивного предложения, как The carrot was nibbled by the rabbit). Таким образом, в результате заполненырегистры (ячейки) Subj,Type, V и Obj, используя которые, можно получитькакое-либо представление (например, дерево).
Расширеннаясеть переходов имеет свои недостатки:
немодульность;
сложностьпри модификации, вызывающая непредвиденные побочные эффекты;
хрупкость(когда единственная неграмматичность в предложении делает невозможнымдальнейший правильный анализ);
неэффективностьпри переборе с возвратами, т.к. ошибки на промежуточных стадиях анализа несохраняются;
неэффективностьс точки зрения смысла, когда с помощью полученного синтаксическогопредставления оказывается невозможным создать правильное семантическоепредставление.
Семантическиеграмматики. АнализЕЯ, основанный на использовании семантических грамматик, очень похож насинтаксический, с той разницей, что вместо синтаксических категорийиспользуются семантические. Естественно, семантические грамматики работают вузких предметных областях. Примером служит система Ladder, встроенная в базу данных американскихсудов. Ее грамматика содержит записи типа:
S ® the of
® what is|[can you] tell me
® the | class ship
Такая грамматика позволяет анализировать такие запросы, как Can you tell me the class of the Enterprise?(Enterprise - название корабля). В данной системе анализатор составляет наоснове запроса пользователя запрос на языке базы данных.
Недостаткисемантических грамматик состоят в том, что, во-первых, необходима разработка отдельнойграмматики для каждой предметной области, а во-вторых, они очень быстроувеличиваются в размерах. Способы исправления этих недостатков - использованиесинтаксического анализа перед семантическим, применение семантических грамматиктолько в рамках реляционных баз данных с абстрагированием от общеязыковыхпроблем и комбинация нескольких методов (включая собственно семантическуюграмматику).
Анализс помощью падежных фреймов. С созданием падежных фреймов связан большой скачок в развитии NLP. Они приобрели популярность после работыФиллмора “Дело о падеже”. На сегодняшний день падежные фреймы - один изнаиболее часто используемых методов NLP, т.к. он является наиболее компьютерно-эффективным прианализе как снизу вверх (от составляющих к целому), так и сверху вниз (отцелого к составляющим).
Падежный фреймсостоит из заголовка и набора ролей (падежей), связанных определенным образом сзаголовком. Фрейм для компьютерного анализа отличается от обычного фрейма тем,что отношения между заголовком и ролями определяется семантически, а несинтаксически, т.к. в принципе одному и то же слово может приписываться разныероли, например, существительное может быть как инструментом действия, так и егообъектом.
Общая структурафрейма такова:
[Заголовочныйглагол
[падежный фрейм
агент:
объект:
инструмент:
реципиент:
направление:
место:
бенефициант:
коагент:
]]
Например, дляфразы Иван дал мяч Кате падежный фрейм выглядит так:
[Давать
[падежный фрейм
агент: Иван
объект: мяч
реципиент:Катя]
[грам
время: прош
залог: акт]
]
Существуютобязательные, необязательные и запрещенные падежи. Так, для глагола разбитьобязательным будет падеж объект - без него высказывание будет незаконченным.Место и коагент будут в данном примере необязательными падежами, а направлениеи реципиент - запрещенными.
Часто в NLP бывает полезным использоватьсемантическое представление в как можно более канонической форме. Наиболееизвестным способом такой репрезентации являются метод концептуальныхзависимостей, разработанный Шенком для глаголов действия. Он заключается в том,что каждое действие представлено в виде одного или более простейших действий.
Например, дляпредложений Иван дал мяч Кате (1) и Катя взяла мяч у Ивана (2), различающихсясинтаксически, но оба обозначающих акт передачи, могут быть построены следующиерепрезентации с использованием простейшего действия Atrans, применяющегося вграмматике концептуальных зависимостей:
(1) | (2) |
[Atrans | [Atrans |
отн: обладание | отн: обладание |
агент: Иван | агент: Катя |
объект: мяч | объект: мяч |
источник: Иван | источник: Иван |
реципиент: Катя] | реципиент: Катя] |
С помощьютакого представления легко выявляются сходства и различия фраз.
Для облегченияанализа также используется деление роли на лексический маркер и заполнитель.Так, для роли объект может быть установлен маркер прямое дополнение, для ролиисточник - маркер вида =из|от|...
В общем анализ текстас помощью падежных фреймов состоит из следующих шагов:
Используясуществующие фреймы, подобрать подходящий для заголовка. Если такого нет, текстне может быть проанализирован.
Вернуть всистему подходящий фрейм с соответствующим заголовком-глаголом.
Попытатьсяпровести анализ по всем обязательным падежам. Если один или более обязательныхзаполнителей падежей не найдены, вернуть в систему код ошибки. Такой случайможет означать наличие эллипсиса, неверный выбор фрейма, неверно введенный текстили недостаток грамматики. Следующие шаги используются уже для анализа иисправления таких ситуаций.
Провестианализ по всем необязательным падежам.
Если послеэтого во введенном тексте остались непроанализированные элементы, выдатьсообщение об ошибке, связанной с неправильным вводом, недостаточностью данногоанализа или необходимостью провести другой, более гибкий анализ.
Преимуществаиспользования падежных фреймов таковы:
совмещениедвух стратегий анализа (сверху вниз и снизу вверх);
комбинированиесинтаксиса и семантики;
удобство прииспользовании модульных программ.
Устойчивость анализа
Определеннуютрудность при анализе представляет вариативность одного и того же запроса.Например, на вход системы, управляющей зачислением и перераспределениемучащихся на курсах разных специальностей, может поступить запрос типаПереведите Петрова, если это возможно, с математики на, скажем, экономику.
Наиболее легкотакие трудности преодолеваются при использовании падежных фреймов. Правило,сформулированное Карбонеллом и Хейзом, гласит: “Следует пропускать неизвестныевведенные элементы до тех пор, пока не будет найден падежный маркер;пропущенные элементы следует анализировать с учетом незаполненных падежей,используя только семантику”.
Диалог
Наряду спроблемой распознавания текста существует и проблема поддержания интерактивногодиалога. При этом возникают дополнительные особенности, характерные для диалогов,а именно:
анафора(т.е. использование местоимений вместо их анафорических антецедентов -самостоятельных частей речи);
эллипсис;
экстраграмматическиепредложения (пропуск артиклей, опечатки, употребления междометий и т.п.);
металингвистическиепредложения (т.е. попытка исправления введенного ранее).
Кроме того,пользователи систем с естественно-языковым интерфейсом стараются выражаться какможно короче, что в ряде случаев также затрудняет анализ.
Использованиепадежных фреймов, а именно слияние текущего фрейма с предыдущим, обеспечиваетвосстановление эллипсиса.
Заключение
Таким образом,процесс разработки систем, обеспечивающих понимание ЕЯ, требует созданиемеханизмов, отличных от традиционных способов представлений ЕЯ, а системы сестественно-языковыми интерфейсами применяются только в узких предметныхобластях.
Список литературы
Encyclopaedia of Artificial Intelligence. EntryNatural Language Understanding, pp. 660-677
Для подготовкиданной работы были использованы материалы с сайта http://www.ed.vseved.ru/