Взаимодействие с ЭВМ на естественном языке

Обеспечение взаимодействия с ЭВМ на естественном языке (ЕЯ) является важнейшей
задачей исследований по искусственному интеллекту (ИИ). Базы данных, пакеты
прикладных программ и экспертные системы, основанные на ИИ, требуют оснащения их
гибким интерфейсом для многочисленных пользователей, не желающих общаться с
компьютером на искусственном языке. В то время как многие фундаментальные
проблемы в области обработки ЕЯ (Natural Language Processing, NLP) еще не
решены, прикладные системы могут оснащаться интерфейсом, понимающем ЕЯ при
определенных ограничениях. для отдельных
предложений; Обработка естественного языка - это формулирование и
исследование компьютерно-эффективных механизмов для обеспечения коммуникации с
ЭВМ на ЕЯ. Объектами исследований являются: использование ЕЯ как в коммуникации между людьми, так и в коммуникации
человека с ЭВМ. Задача исследований - создание компьютерно-эффективных
моделей коммуникации на ЕЯ. Именно такая постановка задачи отличает NLP от задач
традиционной лингвистики и других дисциплин, изучающих ЕЯ, и позволяет отнести
ее к области ИИ. Проблемой NLP занимаются две дисциплины: лингвистика и
когнитивная психология. Традиционно лингвисты занимались созданием
формальных, общих, структурных моделей ЕЯ, и поэтому отдавали предпочтение тем
из них, которые позволяли извлекать как можно больше языковых закономерностей и
делать обобщения. Практически никакого внимания не уделялось вопросу о
пригодности моделей с точки зрения компьютерной эффективности их применения.
Таким образом, оказалось, что лингвистические модели, характеризуя собственно
язык, не рассматривали механизмы его порождения и распознавания. Хорошим
примером тому служит порождающая грамматика Хомского, которая оказалась
абсолютно непригодной на практике в качестве основы для компьютерного
распознавания ЕЯ. Задачей же когнитивной психологии является моделирование не
структуры языка, а его использования. Специалисты в этой области также не
придавали большого значения вопросу о компьютерной эффективности. Различаются
общая и прикладная NLP. Задачей общей NLP является разработка моделей
использования языка человеком, являющихся при этом компьютерно-эффективными.
Основой для этого является общее понимание текстов, как это подразумевается в
работах Чарняка, Шенка, Карбонелла и др. Несомненно, общая NLP требует огромных
знаний о реальном мире, и большая часть работ сосредоточена на представлении
таких знаний и их применении при распознавании поступающего сообщения на ЕЯ. На
сегодняшний день ИИ еще не достиг того уровня развития, когда для решения
подобных задач в большом объеме использовались бы знания о реальном мире, и
существующие системы можно называть лишь экспериментальными, поскольку они
работают с ограниченным количеством тщательно отобранных шаблонов на
ЕЯ. Прикладная NLP занимается обычно не моделированием, а непосредственно
возможностью коммуникации человека с ЭВМ на ЕЯ. В этом случае не так важно, как
введенная фраза будет понята с точки зрения знаний о реальном мире, а важно
извлечение информации о том, чем и как ЭВМ может быть полезной пользователю
(примером может служить интерфейс экспертных систем). Кроме понимания ЕЯ, в
таких системах важно также и распознавание ошибок и их
коррекция. Основной проблемой NLP является языковая неоднозначность.
Существуют разные виды неоднозначности: для ЭВМ неясно, идет
ли речь о времени, которое летит, или о насекомых, т.е. является ли слово
The man went to the bank to get some money and jumped in Падежная
неоднозначность: предлог обозначает либо время, либо место,
т.е. представлены совершенно различные отношения. Референциальная
неоднозначность: для системы, не обладающей знаниями о реальном мире, будет
затруднительно определить, с каким словом - I took the cake from the table and
ate it ни просьба, ни ответ выражены нестандартным способом. В других
обстоятельствах на вопрос может быть получен прямой ответ Центральная проблема как для общей, так и для прикладной NLP -
разрешение такого рода неоднозначностей - решается с помощью перевода внешнего
представления на ЕЯ в некую внутреннюю структуру. Для общей NLP такое
превращение требует набора знаний о реальном мире. Так, для анализа фразы
и
для корректного ответа на такие вопросы, как необходимы знания о супермаркетах, процессах покупки и продажи и
некоторые другие. Прикладные системы NLP имеют преимущество перед общими,
т.к. работают в узких предметных областях. К примеру, системе, используемой
продавцами в магазинах по продаже компьютеров, не нужно "раздумывать" над
неоднозначностью слова не менее, создание систем, имеющих возможность
общения на ЕЯ в широких областях, возможно, хотя пока результаты далеки от
удовлетворительных. технологией анализа ЕЯ подразумевается перевод некоторого
выражения на ЕЯ во внутреннее представление. Фактически все системы анализа ЕЯ
могут быть распределены на следующие категории: подбор шаблона (Pattern
Matching), синтаксический анализ, семантические грамматики, анализ с помощью
падежных фреймов, "жди и смотри" (Wait And See), словарный экспертный (Word
Expert), коннекционистский, "скользящий" (Skimming) анализ. Ниже пойдет речь о
некоторых наиболее распространенных методах, описанных в статье. Сущность данного подхода состоит в интерпретации ввода в целом, а
не в интерпретации смысла и структуры его отдельных составляющих на более низком
уровне. При использовании этого метода происходит сравнение уже имеющихся в
системе шаблонов-образцов с текстом, поступившим на вход. Обычно шаблоны
представлены в виде простого списка соответствий между классами высказываний и
интерпретациями. Иногда они дополнены семантическими элементами или другими
компонентами более высокого уровня. По такому принципу работает система
, имитирующая диалог с психотерапевтом. В действительности система
ничего не понимает, а лишь поддерживает диалог, сравнивая реплики пациента с
шаблонами и присвоенными им соответствующими ответными репликами, такими,
как: Вы можете привести какой-
нибудь пример? пристально
смотрят на меня. первый ответ по 1-му шаблону смотришь первый ответ по 2-му
шаблону ненавидишь При
использовании синтаксического анализа происходит интерпретация отдельных частей
высказывания, а не всего высказывания в целом. Обычно сначала производится
полный синтаксический анализ, а затем строится внутренне представление
введенного текста, либо производится интерпретация. Большинство способов синтаксического
анализа реализовано в виде деревьев. Одна из простейших разновидностей -
свободно-контекстная грамматика, состоящая из правил типа и полагающая, что левая часть правила может быть заменена на
правую без учета контекста. Свободно-контекстная грамматика широко используется
в машинных языках, и с ее помощью созданы высокоэффективные методы анализа.
Недостаток этого метода - отсутствие запрета на грамматически неправильные
фразы, где, например, подлежащее не согласовано со сказуемым в числе. Для
решения этой проблемы необходимо наличие двух отдельных, параллельно работающих
грамматик: одной - для единственного, другой - для множественного числа. Кроме
того, необходима своя грамматика для пассивных предложений и т.д. Семантически
неправильное предложение может породить огромное количество вариантов разбора,
из которых один будет превращен в семантическую запись. Всё это делает
количество правил огромным и, в свою очередь, свободно-контекстные грамматики
непригодными для NLP. Трансформационная грамматика была создана с учетом упомянутых выше
недостатков и более рационального использования правил ЕЯ, но оказалась
непригодной для NLP. Трансформационная грамматика создавалась Хомским как
порождающая, что, следовательно, делало очень затруднительным обратное действие,
т.е. анализ. Расширенная сеть
переходов была разработана Бобровым (Bobrow), Фрейзером (Fraser) и во многом
Вудсом (Woods) как продолжение идей синтаксического анализа и свободно-
контекстных грамматик в частности. Она представляет собой узлы и направленные
стрелки, "расширенные" (т.е. дополненные) рядом тестов (правил), на основании
которых выбирается путь для дальнейшего анализа. Промежуточные результаты
записываются в ячейки (регистры). Ниже приводится пример такой сети, позволяющей
анализировать простые предложения всех типов (включая пассив), состоящие из
подлежащего, сказуемого и прямого дополнения, таких, как . Обозначения у стрелок означают номер
теста, а также либо признаки, аналогичные применяемым в свободно-контекстных
грамматиках ( если условие=истина, то присвоить
анализируемому слову признак Х и записать его в соответствующую
ячейку. Разберем алгоритм
работы сети на вышеприведенном примере. Анализ начинается слева, т. е. с первого
слова в предложении. Словосочетание , стрелка 1),
но является именной группой ( TypeDeclarative , и система переходит ко
второму узлу. Здесь дополнительный тест не требуется, поскольку он отсутствует в
списке тестов, записанных на LISP. Следовательно, слово, стоящее после записывается в ячейку с именем .
Перечеркнутый узел означает, что в нем анализ предложения может в принципе
закончиться. Но в нашем примере имеется еще и дополнение , так
что анализ продолжается по стрелке 6 (выбор между стрелками 5 и 6 осуществляется
снова с помощью специального теста), и словосочетание . На этом анализ заканчивается (последний узел был
бы использован в случае анализа такого пассивного предложения, как Type Расширенная сеть
переходов имеет свои недостатки: хрупкость (когда
единственная неграмматичность в предложении делает невозможным дальнейший
правильный анализ); неэффективность с
точки зрения смысла, когда с помощью полученного синтаксического представления
оказывается невозможным создать правильное семантическое
представление. Анализ ЕЯ, основанный на
использовании семантических грамматик, очень похож на синтаксический, с той
разницей, что вместо синтаксических категорий используются семантические.
Естественно, семантические грамматики работают в узких предметных областях.
Примером служит система ? <present> the
<attribute> of <ship>
грамматика позволяет анализировать такие запросы, как - название корабля). В данной
системе анализатор составляет на основе запроса пользователя запрос на языке
базы данных. Недостатки семантических грамматик состоят в том, что, во-
первых, необходима разработка отдельной грамматики для каждой предметной
области, а во-вторых, они очень быстро увеличиваются в размерах. Способы
исправления этих недостатков - использование синтаксического анализа перед
семантическим, применение семантических грамматик только в рамках реляционных
баз данных с абстрагированием от общеязыковых проблем и комбинация нескольких
методов (включая собственно семантическую грамматику). С созданием падежных фреймов связан большой скачок в
развитии NLP. Они приобрели популярность после работы Филлмора "Дело о падеже".
На сегодняшний день падежные фреймы - один из наиболее часто используемых
методов NLP, т.к. он является наиболее компьютерно-эффективным при анализе как
снизу вверх (от составляющих к целому), так и сверху вниз (от целого к
составляющим). Падежный фрейм состоит из заголовка и набора ролей (падежей),
связанных определенным образом с заголовком. Фрейм для компьютерного анализа
отличается от обычного фрейма тем, что отношения между заголовком и ролями
определяется семантически, а не синтаксически, т.к. в принципе одному и то же
слово может приписываться разные роли, например, существительное может быть как
инструментом действия, так и его объектом.
<активный агент, совершающий действие> <инструмент,
используемый при совершении действия> <цель
(обычно физического) действия> <сущность, в интересах которой
совершается действие> Иван дал мяч Кате реципиент: Существуют обязательные, необязательные
и запрещенные падежи. Так, для глагола коагент в NLP бывает полезным
использовать семантическое представление в как можно более канонической форме.
Наиболее известным способом такой репрезентации являются метод , разработанный Шенком для глаголов действия. Он заключается в
том, что каждое действие представлено в виде одного или более простейших
действий. различающихся синтаксически, но оба обозначающих акт
передачи, могут быть построены следующие репрезентации с использованием
простейшего действия [Atrans агент:
мяч Для облегчения анализа также
используется деление роли на лексический маркер и заполнитель. Так, для роли
<маркер-из>=изот Используя существующие фреймы, подобрать подходящий для
заголовка. Если такого нет, текст не может быть проанализирован. Попытаться провести анализ по всем обязательным падежам. Если
один или более обязательных заполнителей падежей не найдены, вернуть в систему
код ошибки. Такой случай может означать наличие эллипсиса, неверный выбор
фрейма, неверно введенный текст или недостаток грамматики. Следующие шаги
используются уже для анализа и исправления таких ситуаций. Если после этого во введенном
тексте остались непроанализированные элементы, выдать сообщение об ошибке,
связанной с неправильным вводом, недостаточностью данного анализа или
необходимостью провести другой, более гибкий анализ. совмещение двух стратегий
анализа (сверху вниз и снизу вверх); Определенную
трудность при анализе представляет вариативность одного и того же запроса.
Например, на вход системы, управляющей зачислением и перераспределением учащихся
на курсах разных специальностей, может поступить запрос типа Наиболее
легко такие трудности преодолеваются при использовании падежных фреймов.
Правило, сформулированное Карбонеллом и Хейзом, гласит: "Следует пропускать
неизвестные введенные элементы до тех пор, пока не будет найден падежный маркер;
пропущенные элементы следует анализировать с учетом незаполненных падежей,
используя только семантику". Наряду с
проблемой распознавания текста существует и проблема поддержания интерактивного
диалога. При этом возникают дополнительные особенности, характерные для
диалогов, а именно: анафора (т.е. использование местоимений вместо их
анафорических антецедентов - самостоятельных частей
речи); экстраграмматические предложения (пропуск
артиклей, опечатки, употребления междометий и т.п.); того,
пользователи систем с естественно-языковым интерфейсом стараются выражаться как
можно короче, что в ряде случаев также затрудняет анализ. Использование
падежных фреймов, а именно слияние текущего фрейма с предыдущим, обеспечивает
восстановление эллипсиса. образом,
процесс разработки систем, обеспечивающих понимание ЕЯ, требует создание
механизмов, отличных от традиционных способов представлений ЕЯ, а системы с
естественно-языковыми интерфейсами применяются только в узких предметных
областях.