Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ИС_метода

.pdf
Скачиваний:
25
Добавлен:
29.05.2015
Размер:
1.63 Mб
Скачать

Рис. 3.5. Схема компоненты взаимодействия

В настоящее время не существует полной общепринятой модели диалога. Диалог рассматривается как процесс непротиворечивого взаимодействия участников, в котором они преследуют свои цели с помощью обмена сообщениями на установленном языке общения [12].

Диалог возможен благодаря согласованности целей участников. При этом цели известны участникам заранее и дополняют друг друга, например диалог-покупка (покупатель/продавец) и т.д. Именно пара целей определяет тип диалога, т.е. множество диалогов, преследующих данные цели, вне зависимости от конкретных участников общения и решаемой ими задачи.

Информация о типе диалога может быть охарактеризована следующими компонентами: множеством параметров, описаниями параметров и макроструктурой диалога.

Множество параметров несет информацию о том, в каких пределах может варьироваться данный тип диалога. Обычно достаточно охарактеризовать любой диалог тремя параметрами: двумя параметрами, определяющими участников(ихроли), ипредметом (темой) диалога.

Описания параметров содержат множество утверждений о параметрах. В первую очередь эти утверждения определяют цели и состояния участников, которые должны соблюдаться в ходе ведения диалога

61

данного типа. Описания характеризуют те аспекты диалога, которые остаются неизменными на протяжении всего диалога данного типа. Аспекты диалога, изменяемые систематическим образом, представляются в виде общей структуры (макроструктуры) диалога. Макроструктура задается в виде множества подцелей участников, частично упорядоченных во времени.

Элементарную единицу диалога называют шагом диалога. Последовательность нескольких шагов диалога называют диалоговой последовательностью. Шаг диалога состоит из действия первого участника (инициатора действия) и следующей за ним реакции второго участника. Действие всегда составляет первую часть шага, а реакция – вторую. Термин “реакция” является более предпочтительным, чем термин “ответ”, так как реакция по форме может быть не ответом (в смысле ответа на вопрос), а, например, вопросом. Действие состоит из подготовки и осуществления сообщения инициатором. Реакция состоит из подготовки и осуществления сообщения вторым участником.

При рассмотрении последовательности шагов диалога для определения того, от кого исходит действие, а от кого – реакция, необходимо учитывать смысл. Участники могут перехватывать инициативу, т.е. вместо реакции в ответ на действие первого участника второй участник может совершить действие. Например, вместо ответа на поставленный вопрос задается встречный вопрос. Перехват инициативы необходим при возникновении непонимания, несогласия или недоверия к действиям собеседника.

Шаг диалога характеризуется следующими параметрами:

инициатор и тип инициирования;

способ и форма влияния действия на реакцию;

способ спецификации шага (подзадачи).

Инициатором шага диалога может быть пользователь или система. При этом действия пользователя всегда обозначают выбор или явную формулировку определенной задачи. Действия системы обычно подразделяются на запрос и предложение. В случае действия-запроса система предлагает пользователю определить (ввести) задачу. В случае действия-предложения система предлагает пользователю выбрать из некоторого ограниченного множества задач интересующую его задачу.

Влияние действия на реакцию обычно представляют в виде следующих форм: команды (задание действия), “меню” (предложение для выбора реакции) и анкеты (предложения для выбора значений некоторых сущностей).

По способу влияния действия на реакцию выделяют:

62

свободный (неограниченный) выбор, т.е. действие не накладывает ограничений на вид реакции;

ограниченный выбор, т.е. действие ограничивает разнообразие реакций. Ограничения на возможные реакции могут быть заданы либо путем указания множества выбора (как в “меню”), либо заданием жесткого формата, который должен быть соблюден в реакции.

По способу спецификации шага можно говорить об автоматической (однозначной) спецификации задачи, обсуждаемой на данном шаге, и о возможной, но не обязательно однозначной спецификации задачи. Например, “меню” и синтаксически правильная “команда” вызывают однозначную спецификацию задачи системой, а высказывания на ограниченном естественном языке не гарантируют однозначной спецификации.

3.5. Подсистема анализа и синтеза сообщений

Задача подсистемы анализа и синтеза состоит в обработке отдельных сообщений системы и пользователя. Сообщения системы можно разделить на следующие основные типы [12]:

запросы к пользователю о значении некоторых атрибутов решаемой задачи (инициатор – система);

сообщение пользователю результатов решений (инициатор – сис-

тема);

объяснение пользователю действий или знаний системы (инициатор – пользователь);

генерация новых знаний, введенных в систему с целью показать, как эти знания поняты системой (инициатор – пользователь).

Сообщения пользователя, анализируемые системой, можно разделить на следующие типы:

ответ пользователя на запрос о значении некоторого атрибута (инициатор – система);

оценка пользователем результата решения, предложенного системой (инициатор – система);

запрос пользователя на объяснение действий или знания системы (инициатор – пользователь);

факт, содержащий новое знание, обычно новое правило (инициатор – пользователь).

Обработка сообщений пользователя сводится к анализу входных сообщений, а обработка сообщений системы – к синтезу выходных сообщений. Сложность методов анализа и синтеза зависит как от языка общения, так и от языка, используемого для представления знаний.

63

Так, например, на этапе консультации язык общения может быть строго формализован фиксированным набором запросов системы и множеством возможных ответов пользователя. В этих условиях задача синтеза сводится к генерации подготовленных заранее вопросов, а задача анализа – к обработке слов и словосочетаний, требующих для флективных языков морфологического анализа.

На этапах объяснения и приобретения знаний язык общения более сложен. Здесь уже невозможно предвидеть разнообразие способов выражения на естественном языке запросов или фактов (правил), вводимых пользователем. На этих этапах требуется анализировать не отдельные словосочетания, а предложения. Таким образом, задача анализа сводится к разбиению предложений на словосочетания и последующей обработке словосочетаний, т.е., кроме использования морфологии, требуется привлечение синтаксиса и семантики. Однако в большинстве ЭС удается обойтись простейшей семантической обработкой. Простота семантического анализа обусловлена ограниченностью области экспертизы существующих ЭС.

Задача синтеза на этапах приобретения знаний и объяснения в существующих системах сводится к использованию шаблонов и (или) заранее подготовленных сообщений. Необходимо отметить, что в случае взаимодействия с пользователями на флективных языках (например на русском языке, в отличие от английского языка) при применении шаблонов неизбежно используютсяэлементыморфологического синтеза.

Подсистема анализа и синтеза сообщений анализирует входные сообщения пользователя и синтезирует выходные сообщения, адресованные пользователю [12]. Тип сообщений пользователя или системы определяется диалоговой подсистемой. Общая схема подсистемы анализа и синтеза приведена на рис. 3.6.

Данная подсистема имеет элементы избыточности, что позволяет ей использоваться в различных ЭС.

Предлагаемая базовая подсистема осуществляет анализ входного сообщения с помощью программ морфологического, синтаксического, семантического анализа. Многоэтапность анализа вызвана сложностью естественного языка (ЕЯ) и в первую очередь такими его особенностями, как:

разветвленная синонимия и омонимия ЕЯ;

контекстная зависимость высказываний и слов ЕЯ и т.п.

64

 

 

Анализсообщений

 

 

 

 

 

 

 

Морфологический

 

Синтаксический

 

Семантический

анализ

 

анализ

 

анализ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Основы

 

 

 

 

 

 

 

Синтаксическая

 

 

 

 

 

 

Внутреннее

 

 

 

 

 

 

 

 

Входное

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сообщение

 

 

 

 

 

МИ

 

 

 

 

 

 

 

 

 

структура

 

 

 

 

 

 

представление

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сообщения

 

 

 

 

входныхсообщений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Словарь

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица

 

 

 

 

Морфоло-

 

 

Синтак-

 

 

 

Семанти-

 

 

 

 

 

 

 

 

 

 

Структура

 

 

Структура

 

 

аффиксов

 

 

 

 

гическая

 

 

сическая

 

 

 

 

 

ческая

 

 

 

 

 

 

 

 

 

 

 

данных

 

 

правил

 

 

 

 

 

 

 

 

 

 

 

зона

 

 

 

зона

 

 

 

 

 

зона

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Модельпредметной

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Модельязыка

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

области

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Выходное

 

 

 

 

 

 

 

Шаблонвыходногосообщенияс

 

 

 

 

 

 

 

 

Внутреннеепредставление

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сообщение

 

 

 

 

 

 

 

 

 

 

параметрамиМИ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

выходногосообщения

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Морфологический

 

 

 

 

 

 

 

 

 

 

 

Семантико-синтаксический

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

синтез

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

синтез

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Синтезсообщений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Диалоговая по дсистема

Рис.3.6. Схема подсистемы анализа и синтеза

При выполнении морфологического и синтаксического анализов (МА и СИА) используется хранимая в словаре подсистемы информация о языке общения. Словарь содержит морфологическую и синтактикосемантическую информацию об индивидуальных особенностях слов русского языка, не содержащуюся в грамматике языка. Результатом работы МА является выделение основ (корней) слов, отождествление этих основ со словарем и приписывание им морфологической информации (МИ). Под МИ подразумеваются части речи, род, число, падеж, время и т.п. Результатом работы этапа СИА является построение для входного сообщения соответствующей ему обобщенной синтаксической структуры, отражающей взаимосвязи слов в сообщении. На выходе семантиче-

65

ского анализа (СЕА) формируется внутреннее представление входного сообщения, отражающее знания системы о предметной области.

В ЭС применяется упрощенный синтез выходных сообщений. В большинстве приложений используется метод шаблонов, содержащий элементы семантики и синтаксиса. Шаблоны ставятся в соответствие основным конструкциям внутреннего представления. Шаблон представляет собой текст на естественном языке с некоторыми пробелами. В процессе синтеза сообщений осуществляется подстановка на места пробелов необходимых слов в соответствующей форме (падеже, числе, роде).

3.6. Морфологический анализ входных сообщений

Под морфологическим анализом (МА) понимается обработка словоформ вне связи с контекстом. Словоформой будем называть отрезок текста между двумя соседними пробелами (при этом знаки препинания считаются отдельными словоформами) [12]. Функцией морфологического анализа является идентификация словоформы и приписывание словоформе характеризующего ее комплекса морфологической информации (КМИ). КМИ состоит в общем случае из совокупности строк морфологической информации.

Существуют два основных метода реализации МА: декларативный и процедурный. В декларативном методе реализации МА в словаре системы хранятся все возможные словоформы каждого слова с приписанной им морфологической информацией. По сути дела, в декларативном МА нет собственно морфологического анализа, а хранится его результат. Поэтому декларативный МА работает быстрее, чем процедурный. Задача декларативного МА состоит только в поиске словоформы в словаре и переписывании из словаря КМИ, соответствующего данной словоформе. В связи с тем что количество различных словоформ у одного слова довольно велико (у существительного – до 12, у прилагательного – до 36, а у глагола, с учетом отглагольных форм, – до 100), декларативный МА имеет, по сравнению с процедурным, следующие недостатки:

значительно возрастает трудоемкость подготовки морфологической зоны словаря, так как человек должен занести в словарь для каждого слова все его словоформы с соответствующими им строками морфологической информации;

увеличиваются затраты памяти, так как для каждого слова (лексемы) хранятся все его словоформы.

66

При процедурном МА в словаре системы хранятся основы слов. Процедурный МА выполняет следующие функции: выделяет в текущей словоформе основу, идентифицирует ее и приписывает данной словоформе соответствующий ей КМИ.

Рассмотрим один из возможных методов выполнения МА словоформ русского языка, так называемый “обратный” метод. При работе алгоритм процедурного МА использует информацию из морфологической зоны словаря и из таблиц аффиксов. Удобно разделить словарь на две части: словарь основ (СО) и словарь готовых словоформ (СГФ). Общая схема алгоритма состоит из следующих шагов [12]:

поиск словоформы в словаре СГФ;

выделение основы;

поиск в словаре основ;

обработка словосочетаний;

предсинтаксис.

Всловаре готовых форм (СГФ) целесообразно хранить неизменяемые слова и слова с нерегулярными формами изменения. Примерами таких слов являются предлоги, наречия, неизменяемые существительные (например, пальто), знаки препинания, цифры, некоторые формы глагола (идти – шел) и т.п. Для этих слов МА не требуется вообще.

Задача первого блока МА состоит в том, чтобы определить, не относится ли очередная словоформа входного сообщения к числу тех, которые хранятся в СГФ. Если словоформа найдена, то из СГФ переписывается вся соответствующая ей морфологическая информация и морфологический анализ данной словоформы заканчивается. В противном случае выполняется второй блок МА. Его работа сводится к последовательным проверкам возможностей вложения в анализируемую словоформу справа налево окончаний и суффиксов. При этом для ускорения проверок вкладываются (отсекаются) аффиксы с большим числом букв,

аинформация о вкладывающихся в них меньших аффиксах получается не поиском, а за счет отсылок.

Врезультате вложения всех возможных аффиксов словоформе сопоставляется одна или несколько гипотетических основ (ГО) и для каждой основы – КМИ. Гипотетические основы ищутся в словаре основ во время работы третьего блока МА. В случае нахождения ГО в словаре основ и совпадения части речи ГО с частью речи словарной основы данная ГО и ее КМИ признаются правильными. В противном случае ГО признается ошибочной и отбрасывается. При нахождении в словаре ГО вместе с морфологической зоной считываются и ее синтактикосемантические зоны.

67

Задача четвертого блока алгоритма состоит в выполнении операции “склеивания”, т.е. в преобразовании некоторых словоформ, отделенных друг от друга пробелами или другими словоформами, к одной основе. Данная операция выполняется для упрощения синтаксического и семантического анализов.

Завершает работу МА пятый блок алгоритма, называемый “предсинтаксис”. В задачу данного блока входит подготовка данных, упрощающая работу синтаксического анализа:

формируются номера уровней словоформ входного сообщения;

помечаются слова, возможно обусловленные предыдущими сло-

вами;

используются предварительные синтаксические фильтры, устраняющие избыточную морфологическую информацию.

Первая из перечисленных подзадач состоит в выделении уровня каждой словоформы. При этом словоформы основного предложения образуют нулевой уровень, а словоформы придаточных предложений и вложенных друг в друга оборотов (причастных, деепричастных) имеют более высокие уровни по числу вложенности. Выделение уровней позволяет на этапе синтаксического анализа ускорить обработку за счет устранения взаимосвязи слов между разными уровнями.

3.7. Синтаксический анализ входных сообщений

Задачей синтаксического анализа является построение синтаксической структуры входного предложения (осуществление разбора предложения) на основе морфологической информации о словоформах и синтаксических правил объединения слов и словосочетаний. Синтаксическая структура отражает синтаксические связи, существующие между словами в предложении. Ее получение начинается с построения всевозможных связей между словами, которые в последующем отсеиваются на основе локальных и глобальных «фильтров». Конкретный вид структуры определяется выбранной системой синтаксических отношений

(ССИО) [12].

Существует несколько способов описания синтаксической структуры, но два из них – система составляющих и дерево зависимостей – являются наиболее употребительными.

Остановимся подробнее на системе составляющих. Произвольная непустая последовательность словоформ называется цепочкой. Число словоформ в цепочке x называется длиной цепочки и обозначается

x . Если для каких-либо цепочек x, y, z1, z2 имеет место равенство x = z1 yz2 , то говорят, что цепочка y входит в цепочку x . Вхождения

68

словоформ в цепочку называются ее точками. Если l

и

 

m – точки

одной и той же цепочки x = z1lz2 = y1my2 и если при этом

 

z1

 

<

 

y1

 

, то

 

 

 

 

l < m и говорят, что

l расположена левее m, а m– правее

 

l

 

. Для лю-

бых двух точек l и

m цепочки x , таких, что l m, введем понятие

отрезка цепочки x , представляющего множество точек

t , удовлетво-

ряющих неравенствам l t m .

 

 

 

 

 

 

 

 

 

Пусть

x – произвольная непустая цепочка. Множество C отрез-

ков цепочки

x называется системой составляющих этой цепочки, если

оно удовлетворяет двум условиям:

 

 

 

 

 

 

 

 

 

множество C содержит отрезок, состоящий из всех точек це-

почки

x , и все одноточечные отрезки x ;

 

 

 

 

 

 

 

 

 

любые два отрезка из C либо не пересекаются, либо один из

них содержится в другом.

Элементы C называются составляющими. Одноточечные отрезки называются точечными (тривиальными) составляющими.

Для наглядного изображения системы составляющих каждая нетривиальная составляющая заключается в скобки, причем левые и правые скобки одной составляющей могут быть помечены одинаковой меткой для ее выделения. Например, для предложения "Мы увидели древние стены города" допустима система составляющих:

(Мы увидели (( древние стены) города)) 1 23 3 21 (Мы увидели (древние (стены города)))

1 2 3 321

Система составляющих указывает в предложении словосочетания разных уровней, не вводя при этом иерархии среди словосочетаний одного уровня.

Остановимся подробнее на способе описания синтаксической структуры с помощью деревьев зависимостей (деревьев синтаксического подчинения).

Пусть x – произвольная непустая цепочка и X – множество всех точек x . Дерево зависимостей цепочки x можно изобразить в виде последовательности образующих ее точек, расставленных на прямой линии. Для всякой пары точек l , m цепочки x , для которой существует зависимость между этими точками, на рисунке проводится дуга из l в m, причем таким образом, чтобы все дуги были по одну сторону от прямой. При этом точку l называют управляющей точкой ("хозяином"),

69

а m подчиненной точкой ("слугой"). На рис. 3.7 приведен вид дерева зависимостей цепочки agbocdef .

Рис. 3.7. Пример дерева зависимостей

Системы составляющих и деревья зависимостей характеризуют синтаксическую структуру предложения в разных аспектах. С помощью систем составляющих описываются в явном виде словосочетания, но игнорируется ориентация связей (т.е. не различаются "хозяин" и "слуга"); вторые дают возможность рассматривать направленные связи, но только между отдельными словами.

Иногда для представления синтаксической структуры предложения используют смешанное представление, называемое обобщенной синтаксической структурой (ОСС). ОСС выражает, как и дерево зависимостей, ориентацию связей, но, в отличие от дерева зависимостей, ОСС снабжена информацией о словосочетаниях, образованных группами членов предложения (группой подлежащего, группой сказуемого, группой дополнений, группой обстоятельств и т.п.). Эти группы называются именными группами (ИГ). Кроме того, ОСС изображает в общем случае не один вариант разбора предложения, а несколько омонимичных (с точки зрения СИА) вариантов. Указанное обстоятельство позволяет уменьшить как количество возвратов от семантического анализа к синтаксическому анализу, так и количество вариантов разбора, генерируемых на этапе СИА.

Рассмотрим основные принципы построения алгоритма синтаксического анализа.

Традиционным методом построения синтаксической структуры фразы русского языка является метод фильтров [12]. В данном методе построение дерева зависимостей начинается с построения наборов всевозможных связей (синтаксических отношений) между словами. В чистом виде метод фильтров для практической реализации неприменим, так как число всевозможных связей между словами весьма велико, а число всевозможных способов выбора из них конкретного дерева зависимостей огромно. На практике для получения эффективных алгоритмов необходимо применять методы, направляющие и ускоряющие выбор правильных вариантов анализа.

70