СОВРЕМЕННЫЕ ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ/ 1.
Компьютерная инженерия
Аспирант Карпова А.В.
Сибирский
государственный университет путей сообщения (СГУПС), Россия
Анализ текстов
инструкций на естественном языке с целью извлечения ситуационной модели
Аннотация.
Основной
задачей данной статьи является формализация методологии построения динамической
ситуационной модели, извлекаемой из текста корпоративных инструкций на
естественном языке в терминах логики предикатов первого порядка. В работе
проанализированы концепции глубинной падежной грамматики для целей
ситуационного моделирования и освещены проблемы автоматического грамматического
и семантического анализа текста.
Ключевые слова: анализ естественного языка, корпоративная инструкция, семантический анализ,
семантические роли, ситуационное исчисление, логика предикатов первого порядка.
Ситуационное
управление – одно из актуальных научных направлений искусственного интеллекта.
Цель статьи – формализация методологии перевода инструкций на естественном
языке в машинно-ориентированный формат, в целях построения модели ситуационного
управления. В качестве языка ситуационного управления в данной статье
рассматривается логика предикатов первого порядка.
Предметной
областью данного исследования является область маневрирования на железной
дороге, объектом – Инструкция по движению поездов и маневровой работе на
железных дорогах Российской Федерации [1].
К
числу недостатков корпоративных инструкций относится сложность их восприятия
человеком, что связано со значительным объемом информации и ее
неструктурированностью. Очевидно, что человеко-ориентированная форма
представления знаний о бизнес-процессах на естественном языке не подходит для
целей автоматизации, и требуется перевод в более формальные структуры.
В качестве
концептуальной основы ситуационного моделирования корпорации может быть
использована классическая теория бизнес-процессов А.В.Шеера. Согласно теории А.В.Шеера, бизнес-роли (активные
сущности) взаимодействуют друг с другом через бизнес-объекты (пассивные
сущности), каждая из которых закреплена за одной или несколькими бизнес-ролями.
На бизнес-роли могут накладываться бизнес-ограничения. Бизнес-процессы, иными
словами, технологические процессы, представляют собой последовательную передачу
зон ответственности от одной роли к другой в зависимости от конкретной ситуации
[2].
Таким
образом, Инструкция по движению поездов и маневровой работе на железных дорогах
Российской Федерации, представляет собой описание бизнес-ролей, бизнес-правил
и бизнес-ограничения железнодорожной
отрасли в терминах ситуационного исчисления. Действительно, практически каждое
предложение инструкции содержит: 1) описание некоторой начальной ситуации; 2)
ролей, которые участвуют в данной ситуации; 3) действий, которые необходимо
совершить в данной ситуации; 4) некоторую очередную ситуацию, возникающую в
результате выполнения действий; 5) набор причинно-следственных связей между
ситуациями. В результате анализа корпоративной инструкции получаем пространство
ситуаций, связанных между собой причинно-следственными отношениями.
Рассмотрим в качестве примера предложение из инструкции:
При передвижении по станционным путям одиночных локомотивов
и дрезин перевод стрелок, переданных на местное управление, может производиться
одним из работников локомотивной бригады или водителем дрезины.
Бизнес- роли: 1)
водитель дрезины 2) работник локомотивной бригады;
Бизнес- объекты 1) пути
2) локомотив 3) дрезина 4) стрелка;
Бизнес-ограничение: 1)
одиночный локомотив или дрезина 2) стрелка, переданная на местное управление;
Бизнес-процесс:
Разрешить перевод стрелок;
На основании вышеизложенного, можно сформулировать
бизнес-правило:
Бизнес-правило: Если ситуация №1={передвижение
по путям одиночных локомотивов и дрезин} И
ситуация №2={стрелки переданы на местное управление}, то
разрешить бизнес-процесс={перевод стрелок}
Как было
сказано выше, основная цель исследования – формализация методологии создания
транслятора для перевода инструкций на естественном языке в машинный формат
ситуационного исчисления на языке логики предикатов. Основной задачей, которую
необходимо решить на данном этапе, является семантический, или, смысловой
анализ предложений текста.
Как
известно, семантический анализ текста осуществляется на основании результатов
грамматического анализа. Поскольку задачи компьютерной лингвистики выходят за
рамки данного исследования, то в целях грамматического анализа текстов был
использован инструмент компьютерной лингвистики – утилита автоматической
обработки текстов (АОТ), разработанная коллективом лингвистов, автоматизирующая
грамматический разбор предложений [3]. Результатом работы синтаксического
анализатора является структурированная информация о членах предложения.
Рассмотрим в качестве примера предложение из инструкции:
При передвижении по станционным путям одиночных локомотивов
и дрезин перевод стрелок, переданных на местное управление, может производиться
одним из работников локомотивной бригады или водителем дрезины.
Результат работы
синтаксического анализатора AOT показан на рис. 1.

Рисунок 1. Результат работы синтаксического анализатора
В общем,
семантический анализ произвольного текста достаточно сложен для автоматизации,
однако в нашем исследовании задача упрощается в связи с тем, что определена
конкретная предметная область маневрирования на железной дороге, которая
содержит конечное число концептуальных объектов моделирования. Кроме того,
тексты официально-делового стиля, к которым относятся корпоративные инструкции,
должен быть кратким и понятным в целях исключения различных вариантов
прочтения, что упрощает автоматизированный семантический анализ текста.
Суть
программного семантического анализа заключается в регистрировании групп
существительных, которые окружают главный глагол и в последующем определении их
семантической функции в предложении. Эти функции называются глубинными
семантическими падежами, они определяют отношение между глаголом и именной
группой. Информация о значении глагола и список семантических функций, окружающих
глагол, может достаточно точно описать семантику предложения [9].
Таким
образом, объектом исследования на данном этапе является глубинный семантический
падеж, а предметом – использование глубинных падежей в целях семантического
анализа предложения.
В
учебной литературе приводится
следующее определении категории падежа: категория падежа – грамматическая
категория имени, которая выражает его синтаксические отношения к другим словам
высказывания или к высказыванию в целом, а также всякая отдельная граммема этой
категории (конкретный падеж). Термином «падеж» обозначают соответствующие
смысловые отношения – так называемые семантические роли аргументов. Изучением падежей
занимались не только ученые-лингвисты, но специалисты по искусственному
интеллекту, в том числе Ч.Филлмор, Д.А.Поспелов, Р.Шенк и др. [4,5,10].
В работах
данных авторов исследуются аспекты семантических падежей естественного языка и
выделяются различные принципы классификации концептуальных отношений между
объектами окружающего мира.
Так, в
работах Д.А. Поспелова рассматриваются бинарные отношения между объектами
модели, автор разделяет их на статические и динамические. В работах Р.Шенка
классификация осуществляется по «типовым базовым действиям». Ч.Филлмором и его
последователями выдвинута идея ролевой грамматики, состоящая в использовании
семантических (или глубинных) падежей для связи между членами предложения. Согласно теории семантических ролей,
выдвинутой Филлмором, с помощью глубинных падежей возможно корректно выразить
внутреннюю структуру предложения [10].
В работах,
посвященных исследованию теории семантических ролей, предлагается различное
количество семантических ролей в целях адекватного семантического анализа
предложения. Например, в работах Р.Шенка предлагается ограничиться пятью
падежами, в работах Ч.Филлмора предлагается использовать семь падежей, а
Н.Н.Леонтьева расширяет список до 50-ти [10]. Классических ролей Ч.Филлмора и
Р.Шенка для нашего исследования оказалось недостаточно, в силу этого список
ролей был расширен. Таким образом, в нашем исследовании использовались
следующие роли: Агенс (тот, кто действует), Пациенс (тот, на которого
направлено воздействие), Реципиент (тот, кто получает), Экспериенцир (тот, на
чье состояние оказывается воздействие), Инструментатив (с помощью чего
осуществляется воздействие), Локатив (где оказывается воздействие), Каузатив (в
каком случае оказывается воздействие).
Таким
образом, основными задачами данного этапа является:
1.
Формирование
набора базовых объектов предметной области;
2.
Формирование
набора концептуальных отношений между объектами в данной предметной области;
3.
Формирование
списка синонимов предметной области;
4.
Реализация
анализатора принадлежности каждого члена предложения к определенной
семантической роли (в связи с тем, что семантические падежи и падежи групп
существительных не всегда совпадают).
Для решения
первых трех задач использовалась система SEO-анализа текста,
представленная свободно распространяемой утилитой «SEO-анализ текстов» для
выявления объектов и отношений предметной области, имеющих в тексте наибольший
вес, другими словами, выявляются концепты и отношения, наиболее часто
встречающиеся в тексте [6].
Один из
вариантов решения четвертой задачи предлагает Д.Марселлус. Д.Марселлусом предложена методика
программного анализа семантических падежей на базе контекстно-свободной
грамматики [9].
Таким
образом, падежные отношения являются инструментом для формализации системы
представления знаний и будут в дальнейшем использованы в моделях представления
знаний.
Рассмотрим в качестве примера предложение из инструкции:
При передвижении по станционным путям одиночных локомотивов
и дрезин перевод стрелок, переданных на местное управление, может производиться
одним из работников локомотивной бригады или водителем дрезины.
Концептуальное отношение «Производить»:
·
относится к группе
концептуальных отношений «Физические действия»;
·
лексико-семантический
шаблон: Производить ([Агенс-кто?] [Пациенс-что?] [Реципиент-кому?] [Локатив-где?]
[Инструмент-чем?] [Каузатив-при каких условиях?] [Экспериенцер-чье состояние меняется?])
Заполненный
лексико-семантический шаблон концептуального отношения «производить» показан на
рис. 2.

Рисунок 2. Заполненный лексико-семантический шаблон
Необходимым этапом
программного построения ситуационной модели мы считаем этап препроцессорной
обработки текста, заключающийся в последовательности эквивалентных друг другу
семантических преобразований предложений инструкции. Данный этап вводится для
того, чтобы привести предложения к некоторым шаблонным семантическим формам и
обеспечить возможность автоматического процесса построения ситуационной модели.
Приведем перечень
эквивалентных семантических преобразований
·
1 уровень. Преобразование
заключается в трансформации отглагольных существительных в глаголы. Наличие
отглагольных существительных характерно для корпоративных инструкций и
документов официально-делового стиля, и затрудняет автоматическое построение
ситуационной модели.
Например, «движение
поездов осуществляется», «отправление
поезда производится», «производить
перевод стрелок» могут быть заменены эквивалентным «поезда движутся», «поезд
отправляется», «стрелки переводятся».
·
2 уровень. Преобразование
заключается в трансформации предложений, содержащих безличные конструкции в
личные. Безличные конструкции усложняют синтаксис при автоматическом разборе и затрудняют построение ситуационной модели. Здесь может быть предложено
создание некоторой псевдосущности X, которая будет играть
роль активного Агенса при моделировании безличных предложений путем заполнения
лексико-семантических шаблонов.
Пример №1. Предложение «движение поездов
осуществляется», с учетом преобразования №1, семантически эквивалентно
шаблону Двигать([Агенс-X], [Пациенс-поезда]).
Пример №2. Предложение «разрешение на
отправление поезда передается» семантически
эквивалентно шаблону Передавать([Агенс-X], [Пациенс-Разрешение
на отправление поезда]).
·
3 уровень. Преобразование
предложений, содержащих модальные конструкции (должен, может, запрещается, разрешается). При наличии
безличных конструкций здесь может быть также предложено создание некоторой
псевдосущности XS высшего уровня должествования, которая
будет играть роль наивысшей разрешающей или запрещающей инстанции. Признак
модальности должен быть вынесен за пределы лексико-семантического шаблона в
целях использования модальной логики при построении ситуационной модели.
Например, семантический шаблон предложения «машинисту по радиосвязи должен быть передан
регистрируемый приказ», может
быть представлено семантическим шаблоном Должен[Передать([Агенс-XS], [Пациенс-регистрируемый приказ], [Реципиент-машинист], [Инструмент-по
радиосвязи])].
Предложение «дежурный по станции должен убедиться в
свободности первого блок-участка другими имеющимися в его распоряжении
средствами» может быть представлено семантическим шаблоном Должен[Убедиться([Агенс-Дежурный по
станции], [Пациенс-свободность
первого блок-участка], [Инструмент-другими
имеющимися в его распоряжении средствами])]
·
4 уровень. Преобразование заключается в трансформации
предложения, содержащего глубинный «инструментальный» Агенс, в семантически
эквивалентное, где Агенс выполняет активную функцию при центральном глаголе.
Например, в
предложении «перевод стрелок может
производиться одним из работников локомотивной бригады или водителем дрезины» актант
предложения «один из работников
локомотивной бригады или водитель дрезины» теоретически является
инструментом действия, но фактически является активным Агенсом. Таким образом,
семантически эквивалентое преобразование будет заключаться в следующем
представлении Может[Переводить([Агенс- один из работников локомотивной бригады или водитель
дрезины], [Пациенс-перевод
стрелок]].
На данном
этапе исследования начинаем анализировать аспект ситуационного моделирования,
т.к. семантический анализ текста неотделим от ситуационного: смысл текста
понимается обычно в контексте некоторой ситуации. Как отмечают Л.А.Святогор и
В.П.Гладун, «движение от смысла к тексту происходит через образование ситуаций»
[7].
Исследователи
по-разному подходят к определению понятия «ситуация». Например, в учебной
литературе понятию «ситуация» дается следующее определение: ситуация – это
подмножество множества всех состояний среды [10]. Л.А.Святогор и В.П. Гладун
приводят следующее дефиницию: ситуация – это «определенная, зафиксированная в
языке, картина мира» [7]. И.В.Трофимов описывает ситуацию как завершенную
последовательность действий за определенный период [8].
Как
отмечается в учебной литературе, для описания изменений ситуационной среды
используется формальная система логики предикатов первого порядка, называемая
ситуационным исчислением. Ситуационное исчисление – это формальная система,
базирующаяся на логике предикатов первого порядка, другими словами, логический
язык для описания динамики изменения среды. Предполагается, что все изменения в
среде начинаются с некоторого начального состояния, иначе говоря, с некоторой
начальной ситуации S0, и данная ситуация может измениться лишь в результате
выполнения некоторых действий. При этом предполагается, что других ситуаций,
помимо тех, которые могут быть достигнуты с помощью выполнения действий, не
существует.
Формирование
базовых понятий ситуационных моделей осуществляется на основе логики предикатов
первого порядка с использованием ее синтаксиса и семантики, дополненной
функторами для обозначения действий с использованием следующих видов:
a.
аксиомы
допустимых действий;
b.
аксиомы
перехода в следующие ситуации;
c.
аксиомы
начальной ситуации;
d.
аксиомы
ограничения.
Таким
образом, ситуационные последовательности могут быть представлены в виде набора предикатов,
функций и конечных множеств пространств состояний, действий и объектов среды.
Рассмотрим в качестве примера предложение из инструкции:
При передвижении по станционным путям одиночных локомотивов
и дрезин перевод стрелок, переданных на местное управление, может производиться
одним из работников локомотивной бригады или водителем дрезины.
Ситуационная модель выглядит следующим образом:
Аксиома начальной
ситуации S0:
ПередвижениеПоПутям(Локомотив,Пути) ˄
ПереданаНаМестноеУправление(Стрелка) ˄
¬ СтрелкаУжеПереведена
(Стрелка) ˄ Одиночный (Локомотив)
Аксиомы действий:
A1. ПередвижениеПоПутям(Локомотив,Пути) ˄
ПереданаНаМестноеУправление (Стрелка) ˄ ¬СтрелкаПереведена(Стрелка)˄Одиночный(Локомотив)
ОсуществитьПеревод(РОЛЬ_РаботникЛокомотивнойБригады,Стрелка)
A2. ПередвижениеПоПутям(Локомотив,Пути) ˄
ПереданаНаМестноеУправление (Стрелка) ˄ ¬СтрелкаПереведена(Стрелка)˄Одиночный(Локомотив)
ОсуществитьПеревод(РОЛЬ_ВодительДрезины,Стрелка)
Аксиома конечной
ситуации S1:
ПередвижениеПоПутям(Локомотив,Пути) ˄
ПереданаНаМестноеУправление(Стрелка) ˄ СтрелкаУжеПереведена (Стрелка) ˄ Одиночный (Локомотив)
Основные объекты модели:
Переменные:Стрелка,Локомотив,Дрезина,РОЛЬ_РаботникЛокомотивнойБригады,
РОЛЬ_ВодительДрезины
Предикаты:ПереданаНаМестноеУправление(Стрелка),
СтрелкаУжеПереведена(Стрелка), Одиночный (Локомотив),
ПередвижениеПоПутям(Локомотив,Пути)
Действия:
ОсуществитьПеревод(РОЛЬ,Стрелка)
В данной статье
представлена концепция поэтапного анализа текста на естественном языке с целью
извлечения модели ситуационного управления в терминах логики предикатов первого
порядка.
Главными задачами
будущего исследования являются:
·
программная
реализация препроцессорной обработки текстов в целях заполнения семантически
типизированных фреймовых структур;
·
создание
автоматизированного транслятора для перевода знаний из формата
лексико-семантических шаблонов в формат логики предикатов;
·
автоматизация
процесса извлечения аксиом из текста на естественном языке, в том числе
проверка полученной системы аксиом на полноту и непротиворечивость.
[1] Инструкция по движению поездов и маневровой работе на железных дорогах
Российской Федерации. [Электронный ресурс]. – Режим доступа: http://www.dzd-ussr.ru/doc/norm/idp.htm. – Дата обращения:
14.07.2014
[2] Шеер А.В. Моделирование бизнес-процессов. [Электронный ресурс]. –
Режим доступа: http://www.twirpx.com/file/341190/. – Дата обращения:
14.07.2014
[3] Ножов И.М. Морфологическая и синтаксическая обработка текста
(модели и программы). [Электронный ресурс]. – Режим доступа: http://www.aot.ru/docs/Nozhov/msot.pdf.
– Дата обращения: 14.07.2014
[4] Поспелов Д.А. Ситуационное управление: теория и практика. – М.:
Наука, 1986. – 288 с.
[5] Шенк Р. Обработка концептуальной информации. Пер. с англ. – М.:
Энергия, 1980. – 360 с.
[6] Биржа контента для сайтов [Электронный ресурс]. – Режим доступа: www.advego.ru.
–Дата обращения: 14.07.2014
[7] Святогор Л.А., Гладун В.П. Формальное определение ситуации для
семантического анализа текстов естественного языка //Problems of Computer
Intellectualization. – 2011. – №1. – С. 10–20.
[Электронный ресурс]. –
Режим доступа: http://ai-center.botik.ru/planning/
index.php?ptl=materials/03languages.htm. – Дата обращения: 14.07.2014
[9] Марселлус
Д. Программирование экспертных систем на ТУРБО
ПРОЛОГЕ. : Пер. с англ. / Д. Марселлус . – М. : Финансы и
статистика, 1994 . – 256 с.
[10] Кацнельсон
С.Д. Заметки о падежной теории Ч.Филлмора // Вопросы языкознания. – М.,
1988. – № 1. – С. 110 – 117.