Научная статья на тему 'Разработка автоматизированных методов преобразования предложений естественного языка в бескванторные формулы логики предикатов'

Разработка автоматизированных методов преобразования предложений естественного языка в бескванторные формулы логики предикатов Текст научной статьи по специальности «Языкознание и литературоведение»

CC BY
364
71
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИЗВЛЕЧЕНИЕ ЗНАНИЙ / ПРЕДСТАВЛЕНИЕ ЗНАНИЙ / ИНТЕГРАЦИЯ ЗНАНИЙ / АНАЛИЗ ТЕКСТОВ ЕСТЕСТВЕННОГО ЯЗЫКА / ТЕОРИЯ "СМЫСЛ ТЕКСТ" / ОНТОЛОГИЯ / АТОМАРНАЯ ДИАГРАММА / KNOWLEDGE EXTRACTION / REPRESENTATION OF KNOWLEDGE / KNOWLEDGE INTEGRATION / ANALYSIS OF NATURAL LANGUAGE TEXTS / ATOMIC DIAGRAM / ONTOLOGY / THEORY "MEANING TEXT"

Аннотация научной статьи по языкознанию и литературоведению, автор научной работы — Ненашева Евгения Олеговна, Пальчунов Дмитрий Евгеньевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по языкознанию и литературоведению , автор научной работы — Ненашева Евгения Олеговна, Пальчунов Дмитрий Евгеньевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

SEMI-AUTOMATED METHODS OF TRANSFORMING SENTENCES FROM NATURAL LANGUAGE INTO QUANTIFIER-FREE FORMULAS OF PREDICATE LOGIC

The article is devoted to the development of semi-automated methods for extracting and formal representation of knowledge from natural language texts. To solve this problem, we developed methods for converting natural language sentences into quantifier-free formulas of predicate logic. The knowledge extracted from texts is formalized. It is presented in the form of sets of atomic sentences forming fragments of atomic diagrams of algebraic systems. We developed methods for representing semantics of sentences of a natural language using binary predicates and integrating knowledge contained in several sentences of the text. Also we developed methods for eliminating missing knowledge by filling the empty places of predicates.

Текст научной работы на тему «Разработка автоматизированных методов преобразования предложений естественного языка в бескванторные формулы логики предикатов»

УДК 004.89

DOI 10.25205/1818-7900-2017-15-3-49-63

Е. О. Ненашева \ Д. Е. Пальчунов 1 2

1 Новосибирский государственный университет ул. Пирогова, 1, Новосибирск, 630090, Россия

2 Институт математики им. С. Л. Соболева СО РАН пр. Академика Коптюга, 4, Новосибирск, 630090, Россия

nenasheva.zhenya@gmail.com, palch@math.nsc.ru

РАЗРАБОТКА АВТОМАТИЗИРОВАННЫХ МЕТОДОВ ПРЕОБРАЗОВАНИЯ ПРЕДЛОЖЕНИЙ ЕСТЕСТВЕННОГО ЯЗЫКА В БЕСКВАНТОРНЫЕ ФОРМУЛЫ ЛОГИКИ ПРЕДИКАТОВ

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

Ключевые слова: извлечение знаний, представление знаний, интеграция знаний, анализ текстов естественного языка, атомарная диаграмма, онтология, теория «Смысл о Текст».

Введение

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

Над проблемой представления семантики текста работали многие специалисты. Одно из наиболее серьезных продвижений в этой области - это теория «Смысл о Текст», разработанная И. А. Мельчуком [1; 2]. Главным ее компонентом является толково-комбинаторный словарь. В этом словаре учитывается возможность слов вступать в синтаксические и семантические связи с другими словами предложения. Такое свойство слова называется валентностью. Также И. А. Мельчук предложил рассматривать глаголы как многоместные предикаты: они связывают воедино другие слова предложения, рассматриваемые как аргументы предиката-глагола.

Теория «Смысл о Текст» была применена в [3] для извлечения знаний, содержащихся в предложениях естественного языка. Был предложен теоретико-модельный подход к извле-

Ненашева Е. О., Пальчунов Д. Е. Разработка автоматизированных методов преобразования предложений естественного языка в бескванторные формулы логики предикатов // Вестн. НГУ. Серия: Информационные технологии. 2017. Т. 15, № 3. С. 49-63.

ISSN 1818-7900. Вестник НГУ. Серия: Информационные технологии. 2017. Том 15, № 3 © Е. О. Ненашева, Д. Е. Пальчунов, 2017

чению знаний из текстов естественного языка, основанный на представлении извлеченных знаний в виде атомарных предложений логики предикатов. Разработанные методы реализованы в программе Logic Text [4]. Она осуществляет построение атомарных диаграмм моделей по предложениям русского языка с использованием словарей валентностей глаголов и номинализаций. Одной из задач данной работы является дальнейшее развитие подхода, предложенного в [3].

Целями данного исследования являются:

1) формальное представление знаний, содержащихся в тексте, в виде двухместных предикатов;

2) разработка методов заполнения «пустых» валентностей предикатов-глаголов для выявления недостающих в тексте знаний и пополнения этих знаний;

3) интеграция знаний, содержащихся в разных предложениях текста.

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

Порождение фрагментов атомарных диаграмм

по текстам естественного языка

Теория «Смысл о Текст»

Кратко изложим те аспекты подхода И. А. Мельчука [1; 2], которые нам потребуются в данной работе. Некоторые необходимые детали теории «Смысл о Текст» были приведены в [3]. Свойство глаголов вступать в связи с другими словами И. А. Мельчук назвал валентностью. Термин «валентность глагола» выбран по аналогии с химическим термином «валентность» - способность атомов вступать в связи с определенным числом других атомов и образовывать с ними молекулы. Таким образом, И. А. Мельчук предложил рассматривать глаголы как многоместные предикаты.

Для удобства и лучшего понимания мы проиллюстрируем данный подход на примере предложения Вася купил вчера в магазине хлеб за 20 рублей.

Возьмем в этом предложении глагол купить и представим его как пятиместный предикат, а именно:

Купить (кто: Вася, что: хлеб, когда: вчера, где: в магазине, за сколько: за 20рублей).

Далее можно записать этот предикат в обычном виде в логике предикатов:

Купить (Вася, хлеб, вчера, магазин, 20 рублей).

В этом выражении слова Вася, хлеб, вчера, магазин, 20 рублей мы рассматриваем как константы; предикат от констант является атомарным предложением логики предикатов.

Важно отметить, что аргументы предиката «купить» будут иметь разный тип. Типы аргументов этого предиката с указанием их мест представлены на рис. 1.

кто что когда, где за. сколько

Рис. 1. Типы аргументов предиката «купить»

При этом у разных глаголов типы аргументов будут разные. Например, глагол «ехать» имеет другие типы аргументов (рис. 2). Более того, один и тот же предикат-глагол «купить» в разных предложениях также может иметь разный набор типов аргументов.

кго откуда, куда когда, на. чем с кем

Рис. 2. Типы аргументов предиката «ехать»

Список возможных типов аргументов предиката может быть достаточно большим. Для примера приведем лишь некоторые возможные типы: кто, что, когда, как долго, с каких пор, до каких пор, как, где, куда, откуда, за сколько, на чем, с кем, на что, от чего, к чему, против чего, во что, перед чем, в чем.

Эти типы аргументов непосредственно связаны с вопросами, которые можно задать от глагола:

купил кто? что? когда? где? за сколько? Поэтому для удобства данные типы аргументов мы будем обозначать типами вопросов:

qwl,..., qwn.

Построение фрагментов атомарных диаграмм по текстам естественного языка при помощи программы LogicText

Сначала введем некоторые определения и обозначения. Сведения по теории моделей можно найти в [5]. В данной работе рассматриваются модели вида

А = (А;с) = (А; Р,...,Рп, с,,...,с,)

сигнатуры

с = ( р^.-Рп , сд,

где А - основное множество (универсум) модели; р,...,Рп - символы предикатов; с,,...,с, -символы констант. Следует отметить, что сигнатура рассматриваемых моделей не содержит функциональных символов.

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

Ф = (с1 =с2) ф = 4 с1 =с2),

ф = Р (С,^ сп ) или ф=".Р ( С,^ сп ) ,

где Р,с,,...,сп ес.

В данной статье мы рассматриваем только позитивные атомарные предложения без равенства, т. е. атомарные предложения вида

Ф = Р (сп).

Атомарной диаграммой модели А мы называем множество предложений АБ (А ) = {фе £ (с) А А \= ф и предложение ф — атомарное

Подмножество Ас АБ (А) атомарной диаграммы АБ (А) модели А мы называем фрагментом атомарной диаграммы модели А. В данной статье мы рассматриваем только конечные фрагменты атомарных диаграмм.

Подход И. А. Мельчука был применен в [3] для извлечения и формализации знаний, содержащихся в предложениях естественного языка. В [3] был разработан теоретико-модель-

ный подход к извлечению знаний из текстов. Извлеченные знания представляются в виде наборов атомарных предложений логики предикатов, образующих вместе фрагмент атомарной диаграммы некоторой алгебраической системы. При этом глаголы, причастия и деепричастия представляются в виде «-местных предикатов в соответствии теорией «Смысл о Текст» [2]. Например, глагол купить представляется как предикат Купить (act, obj, что, у кого, когда, за сколько).

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

Разработанные методы были реализованы в программе Logic Text [4]. Она осуществляет построение атомарных диаграмм моделей по предложениям русского языка с использованием словарей номинализаций и валентностей глаголов (рис. 3).

Вирусы меняют[дгЛ оЫ. что. на ■шр] поведение программ, внедряют^?, оЫ. что. ктдд] себя[с£;] в их[оф] исполняемый\ас1 оЫ\ код

Бнедрять(Енедрягь_0, вирус, вирус, код) исполнять(нсполнять_1, код)

менятьСмештьО, вирус, поведение, на_что_. 1ягь_ )

их(программа)

се&я(зирус)

Рис. 3. Пример работы программы

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

Купить (купить_0, кто, что, у кого, когда, за сколько),

при этом «купить_0» рассматривается как дополнительная специальная константа-действие. Для целей данной работы такой способ представления не является достаточно удобным. Поэтому в данной статье мы разрабатываем несколько иной подход, основанный на рассмотрении разных глаголов как разных ситуаций (т. е. разных действий).

Преобразование текста естественного языка

во фрагменты атомарных диаграмм

Четырехуровневая модель представления знаний

Как сказано выше, в данной работе мы развиваем подход, основанный на теории «Смысл о Текст» [1; 2] и теоретико-модельных методах извлечения знаний из текстов естественного языка [3; 6]. Здесь и далее мы считаем, что у предикатов есть места, которые заполняются аргументами: константами и / или переменными. Каждый аргумент предиката ставится на строго определенное в соответствии со своим типом место. Таким образом, места предиката типизированы, т. е. имеют определенный тип. Например, мы не можем поставить аргумент яблоко на место, предназначенное для времени.

При извлечении, обработке и интеграции знаний мы используем предложенную ранее четырехуровневую модель представления знаний [7; 8], которая включает в себя:

1) онтологию;

2) общие (универсальные) знания о предметной области;

3) эмпирические знания - прецеденты предметной области;

4) оценочные и вероятностные знания о предметной области.

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

Задача представления знаний

в виде двухместных предикатов

Одной из задач данного исследования является формальное представление знаний в виде двухместных предикатов. Постановка этой задачи связана с тем, что для представления и обработки знаний мы используем технологии Семантической Паутины (Semantic Web) [9-12]. Одними из основных инструментов проекта Semantic Web являются RDF и OWL. Язык описания онтологий OWL основан на RDF, который использует представление знаний в виде триплетов: субъект - предикат - объект. Такие триплеты по существу являются двухместными предикатами, поэтому двухместные предикаты легко транслируются в RDF-триплеты. В отличие от двухместных «-местные предикаты не могут непосредственно транслироваться в RDF-триплеты. Представление знаний при помощи двухместных предикатов и их дальнейшее преобразование в RDF-триплеты позволяет нам использовать технологии Semantic Web и применять автоматические средства логического вывода (ризонеры) [13; 14] для выявления противоречий, обработки знаний и порождения новых знаний.

Преобразование текста естественного языка

во фрагменты атомарных диаграмм,

содержащих только двухместные предикаты

Для обработки текстов естественного языка и извлечения знаний мы на первом этапе обработки текста естественного языка преобразуем текст во фрагменты атомарных диаграмм моделей. Преобразование происходит при помощи программы Logic Text в автоматическом или автоматизированном режиме. Опишем это преобразование более детально. У каждого из полученных предикатов есть свой набор валентностей, включающий константу-действие. Например, предложение

Иван вчера купил у Васи мотоцикл за 10 тысяч рублей будет преобразовано в предикат

Купить (купить_0, Иван, мотоцикл, Вася, вчера, 10 тысяч рублей). КупитьО является константой-действием.

Приведенные предложения. Как отмечено выше, одной из главных задач нашего исследования является разработка методов преобразования «-местных предикатов в двухместные. Заметим, что для разных целей могут использоваться различные способы такого преобразования. Так, в рамках проекта Semantic Web, «-местный предикат преобразуется в набор

из n двухместных предикатов [15]. Мы же преобразуем n-местный предикат в набор из n + 1-го двухместного предиката.

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

Приведенным называется такое предложение русского языка, что:

1) в нем присутствует только одна грамматическая основа (подлежащее и сказуемое);

2) в нем присутствуют только существительные, числительные, наречия, предлоги, один глагол и не более одного прилагательного;

3) прилагательное Y допускается только в предложениях вида X является Y. Например, словосочетание трусливый заяц должно быть преобразовано в простое предложение заяц является трусливым.

Чтобы сделать предложение приведенным, необходимо:

1) сложносочиненные предложения и предложения с однородными членами разбить на несколько простых предложений;

2) причастия и деепричастия заменить на соответствующие глаголы;

3) местоимения заменить на соответствующие существительные или прилагательные;

4) словосочетания с прилагательным заменить на дополнительные простые предложения.

Для большей ясности изложения, рассмотрим на примере преобразование предложения

русского языка в набор приведенных предложений.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Возьмем предложение

В комнате сидит маленький мальчик, читающий книгу. (1)

После первичной обработки данного предложения программой LogicText, оно примет вид

В комнате сидит [act, кто, где, на чем] маленький [кто] мальчик, читающий [кто, что] книгу.

Мы получим следующий набор атомарных предложений:

Сидеть (сидетьО, мальчик, комната, на чем),

Маленький (мальчик),

Читать (читать_1, мальчик, книга).

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

Являться (х,P). В результате набор атомарных предложений из нашего примера примет следующий вид:

Сидеть (сидеть_0, мальчик, комната, на чем), Являться (мальчик, маленький), Читать (читать_1, мальчик, книга).

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

Результаты обоих режимов, а именно наборы атомарных предложений, в итоге должны совпадать.

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

В комнате сидит мальчик. Мальчик читает книгу. Мальчик является маленьким.

Набор атомарных диаграмм для этих предложений будет таким:

Сидеть (сидетьО, мальчик, комната, на чем),

Являться (мальчик, маленький), (2)

Читать (читать_1, мальчик, книга).

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

Имеет место следующее утверждение.

Замечание. Предложение русского языка целиком преобразуется в атомарное предложение вида Р(,...,сп), где Р - предикат-действие, а с1,...,сп - константы, тогда и только тогда, когда оно является приведенным.

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

Преобразование п-местных предикатов

в двухместные

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

Поэтому константы-действия, описанные ранее, мы в автоматизированном режиме заменяем на константы-ситуации . С каждым глаголом сопоставляется своя ситуация. Например, в рассмотренном выше предложении предикат от глагола купить принимает вид

Купить (Л1, Иван, мотоцикл, Вася, вчера, 10 тысяч рублей),

где Л1 - соответствующая константа-ситуация.

Как сказано выше, места предикатов имеют определенные типы. К каждому такому месту можно задать вопрос, при этом соответствующий аргумент предиката является ответом на этот вопрос. После преобразования текста каждое слово предложения становится аргументом некоторого двухместного предиката. Для каждого глагола как места, так и соответствующие вопросы к ним прописаны в используемом нами словаре валентностей [3]. В случае необходимости места предиката и соответствующие им вопросы извлекаются автоматически. К самому предикату можно задать вопрос «что делать?» (рис. 4).

Таким образом, после обработки двухместные предикаты принимают вид Р (Л{, с), где Р - это вопрос к слову; Л{ - обозначение константы-ситуации, которая соответствует данному утверждению; с - константа.

Ai

Кто?

Что делать? Когда.? Где? Во сколько?

Субъект б н.п. Глагол

Дата Месго Время

Кто (А{. субъект в и.п.) Чго делать (А;: глагол) Когда (А; = дата) Где (Аг I место) Во сколько (А;, время)

Отождествление ситуаций

Заметим, что в приведенном выше примере (1) и в трех атомарных предложениях (2) константа «мальчик» означает один и тот же объект. Однако такое отождествление далеко не всегда является верным. Поэтому возникает вопрос: в каких случаях одна константа обозначает в разных предложениях один объект (субъект, свойство), а в каких - разные? Иначе говоря, возможны случаи, когда некоторое количество аргументов у двух предикатов совпадает, но ситуации являются разными. Поэтому, изначально мы будем считать, что каждое действие является отдельной ситуацией, при этом в дальнейшем может выясниться, что некоторые ситуации на самом деле совпадают, следовательно, речь в них идет об одном и том же действии. За счет этого мы далее сможем объединять фрагменты атомарных диаграмм, не получая противоречия (как логического, так и, что самое главное, содержательного). Отсутствие содержательного противоречия в данном случае означает, что утверждение не противоречит реальности.

Рассматриваемые атомарные диаграммы, вообще говоря, могут относиться к разным ситуациям. При этом мы не утверждаем, что если константы-ситуации различны, т. е. S1 Ф S2, то они действительно соответствуют разным ситуациям. Тот случай, когда разные фрагменты относятся к одной ситуации, мы обрабатываем далее с помощью отношений Id и Include.

Соответственно далее нам будет необходимо выявить связи между константами-ситуациями. Этот шаг является ключевым в понимании общего контекста. Производится он в автоматизированном режиме либо вручную. На данном, третьем, этапе выявляются тождественные ситуации, а также тождественные объекты.

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

Рис. 4. Пример разбора предложения

Теперь перед нами стоит задача объединить знания, связанные с тождественными ситуациями. Предположим, у нас есть тождественные ситуации a1,..., a6. Для каждой из ситуаций описаны фрагменты атомарных диаграмм.

Для разных целей можно рассматривать несколько вариантов объединения.

1. Все знания, соответствующие ситуациям a2,..., a6, приписываются к ситуации a1. При этом фрагменты атомарных диаграмм ситуаций a2,..., a6 остаются неизменными.

2. Все знания, соответствующие ситуациям a2,...,a6, приписываются к ситуации a1. Ситуации a2,..., a6 удаляются.

3. Все знания объединяются и приписываются к каждой из ситуаций a1,..., a6 (получаем 6 одинаковых фрагментов атомарных диаграмм с разными константами-ситуациями a1,..., a6 ).

4. Создается новая ситуация a7. К ней приписываются все знания, соответствующие ситуациям a1,...,a6. Фрагменты атомарных диаграмм ситуаций a1,...,a6 остаются неизменными.

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

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

Помимо связи тождественности Id (At, Aj ) целесообразно рассматривать и связь включения Include (Ai, Aj ). Такую связь мы используем тогда, когда действие является частью более

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

Формальное представление связей

между ситуациями Identity и Include

Аксиомы для связи Id

Ы (51, S2): ситуация 51 тождественна ситуации 52 Аксиомы отношения эквивалентности: М (, S),

(М (51, S2 М (S2,51)),

(((52) & Ы (52,53)) ^ Ы (51,53)).

Аксиома конгруэнции:

((Id (S1, S2)& P (51, х P (S2, x)).

Аксиомы для связи Include

Include (S1, S2): S1 с S2, S1 - частное, S2 - общее.

Аксиомы частичного порядка:

Include ( S, S ),

((Include (S1, S2) & Include (S2, S1)) — Id (S1, S2 )),

((Include (S1, S2) & Include (S2, S3)) -— Include (S1, S3)).

Аксиома наследования:

((Include (S1, S2) & P (S2, x)) — P (S1, x)).

Эти аксиомы добавляются в онтологию.

Таким образом, взаимосвязь ситуаций определяется с помощью связей Id и Include. На основе этого реализуется логический вывод, который осуществляется в автоматизированном режиме. Знания, содержащиеся в нескольких предложениях текста, могут объединяться. В соответствии с этим заполняются места многоместного предиката, которые до этого были «пустыми».

Описание разработанного алгоритма

Опишем пошаговый алгоритм извлечения и интеграции знаний из текстов на естественном языке. Он осуществляется в несколько этапов:

1) предварительная обработка текста программой LogicText;

2) преобразование n-местных предикатов в двухместные;

3) отождествление констант-ситуаций;

4) реализация логического вывода;

5) заполнение «пустых» валентностей предикатов.

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

Этап 1. Предварительная обработка текста с помощью программы LogicText

На этом этапе работы необходимо провести предварительную обработку текста. Предложения на русском языке анализируются и обрабатываются при помощи программы Logic Text, чтобы получить основу для дальнейшей работы:

1) морфологический и синтаксический разбор текста;

2) задание сигнатуры фрагмента атомарной диаграммы модели, построенного по тексту (т. е. набора констант и многоместных предикатов);

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

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

На шаге построения сигнатуры фрагмента атомарной диаграммы модели по каждому из предложений создаются многоместные предикаты. В качестве предикатов выступают гла-

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

Этап 2. Семантический разбор предложений

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

Далее для каждого предиката вводится константа-ситуация Ai, где i - номер предиката. Осуществляется это автоматически.

Каждая ситуация At связана с некоторыми знаниями, которые берутся из различных источников - текстов естественного языка. На данном шаге каждая ситуация Ai автоматически связывается с источником соответствующих знаний, т. е. создается ссылка на конкретный текст естественного языка. Это позволит нам в дальнейшем учитывать и отслеживать связи имеющихся знаний с их источниками.

Заключительным шагом семантического разбора является автоматическое преобразование «-местных предикатов в двухместные. При преобразовании «-местного предиката в двухместный в автоматическом режиме происходит следующее.

1. Первым аргументом любого двухместного предиката становится соответствующая константа-ситуация Ai .

2. Название «-местного предиката P становится вторым аргументом двухместного предиката «что делать». Данный двухместный предикат принимает вид Что делать (At,P).

3. Вопрос, который можно задать к месту «-местного предиката, становится названием двухместного предиката. Соответствующий аргумент «-местного предиката становится вторым аргументом двухместного предиката. Например: у предиката от глагола купить было место где, соответствующий аргумент магазин, ситуация At. После преобразования получаем двухместный предикат Где (Ai, магазин).

Данные преобразования осуществляются для всех наборов атомарных предложений. После этого переходим к третьему этапу.

Этап 3. Отождествление констант-ситуаций

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

Для корректной работы программной системы данный этап осуществляется в автоматизированном режиме или вручную. Пользователь выбирает семантически эквивалентные ситуации согласно контексту. Выбор происходит на основе фрагментов атомарных диаграмм, построенных по тексту и полученных на предыдущем этапе. Выбранные ситуации помечаются для дальнейшего их автоматического объединения при помощи Id- или I«clude-связывания. Также на данном этапе пользователь может отождествить некоторые сущности.

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

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Полученные результаты необходимо сохранять для дальнейшей обработки ризонерами OWL [16], поиска противоречий и моделирования аргументации.

Этап 4. Реализация логического вывода

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

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

Купить (Ab кто, что, у кого, когда, за сколько).

Набор двухместных предикатов, соответствующих этому предложению, выглядит так:

Кто (A1, Иван), Что сделать (A1, купить), У кого (A1, Вася), Что (A1, мотоцикл).

Видно, что предложение, многоместный и двухместные предикаты связаны с одним и тем же действием - купить. Значит, мы можем сопоставить данные предикаты.

Далее, «пустые» валентности заполняются соответствующими знаниями из ситуаций. Иными словами, места многоместного предиката заполняются аргументами двухместных предикатов согласно их типам. Получаем:

Купить (A1, Иван, мотоцикл, Вася, когда, за сколько). (3)

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

Этап 5. Заполнение «пустых» валентностей предикатов

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

Когда Иван купил мотоцикл у Васи? За сколько Иван купил мотоцикл у Васи?

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

Другой способ - это получение общих знаний из Интернета [17]. Данный процесс происходит в несколько шагов.

1. Программой порождаются параметризованные запросы. Они соответствуют вопросам к «пустым» валентностям. Запросы могут быть отредактированы пользователем.

2. Параметризированные запросы отправляются в поисковую сеть Google. Происходит импорт выдачи - ранжированного набора сниппетов.

3. Из набора выдачи пользователь выбирает и отмечает документы, которые будут загружены для поиска ответов.

4. Выбранные документы загружаются в систему. В них программа выбирает фрагменты текста, соответствующие запросу из п. 1. Выбор происходит на основе поиска совпадающих слов. Результат может быть отредактирован пользователем.

5. Пользователь выбирает конкретные предложения, в которых содержатся знания для заполнения пустых валентностей. Выбранные предложения подвергаются дальнейшей обработке.

При получении новых знаний, алгоритм повторяется до тех пор, пока все новые знания не будут проанализированы.

Заключение

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

Список литературы

1. Мельчук И. А. Опыт теории лингвистических моделей «Смысл о Текст». 2-е изд. М., 1999.

2. Мельчук И. А. Об одной лингвистической модели типа «Смысл - Текст»: уровни представления языковых высказываний // Изв. АН СССР. Серия литературы и языка. 1976. Т. 33, вып. 5. С. 5-33.

3. Махасоева О. Г, Пальчунов Д. Е. Автоматизированные методы построения атомарной диаграммы модели по тексту естественного языка // Вестн. Новосиб. гос. ун-та. Серия: Информационные технологии. 2014. Т. 12, вып. 2. С. 64-73.

4. Махасоева О. Г., Пальчунов Д. Е. Программная система построения атомарной диаграммы модели по тексту естественного языка. Св-во о гос. рег. программы для ЭВМ № 2014619198 от 10.09.2014.

5. Кейслер Г. Теория моделей. М.: Мир, 1977. 615 с.

6. Пальчунов Д. Е. Моделирование мышления и формализация рефлексии I: Теоретико-модельная формализация онтологии и рефлексии // Философия науки. 2006. № 4 (31). С. 8694.

7. Найданов Ч. А, Пальчунов Д. Е, Сазонова П. А. Теоретико-модельные методы интеграции знаний, извлеченных из медицинских документов // Вестн. Новосиб. гос. ун-та. Серия: Информационные технологии. 2015. Т. 13, вып. 3. С. 29-41.

8. Naydanov Ch, Palchunov D, Sazonova P. Development of automated methods for the prevention of risks of critical conditions, based on the analysis of the knowledge extracted from the medical histories // Сиб. науч. мед. журн. 2016. Т. 36, вып. 1. С. 105-113.

9. Szeredi P., Lukácsy G., Benko T. The Semantic Web Explained: The Technology and Mathematics behind Web 3.0. Cambridge Uni. Press, 2014. 478 p.

10. Parreiras F. S. Semantic Web and Model-Driven Engineering. Wiley-IEEE Press, 2012. 264 p.

11. Allemang D, Hendler J. Semantic Web for the Working Ontologist. Morgan Kaufmann, 2008. 352 p.

12. Хорошевский В. Ф. Пространства знаний в сети Интернет и Semantic Web (Часть 1) // Искусственный интеллект и принятие решений. 2008. № 1. C. 80-97.

13. Meilicke C, Stuckenschmidt H. A Reasoning-Based Support Tool for Ontology Mapping Evaluation. Uni. of Mannheim Press, 2008.

14. Gutiererz F., Dou D, Fickas S., Griffiths G. Online Reasoning for Ontology-Based Error Detection in Text. Uni. of Oregon Press, 2014.

15. Noy N., Rector A. Defining N-ary Relations on the Semantic Web. W3C Working Group Note (12 April 2006). URL: https://www.w3.org/TR/swbp-n-aryRelations/

16. Корсун И. А, Пальчунов Д. Е. Теоретико-модельные методы извлечения знаний о смысле понятий из текстов естественного языка // Вестн. Новосиб. гос. ун-та. Серия: Информационные технологии. 2016. Т. 14, № 3. С. 34-48.

17. Пальчунов Д. Е. Решение задачи поиска информации на основе онтологий // Бизнес-информатика. 2008. № 1. С. 3-13.

Материал поступил в редколлегию 07.06.2017

E. O. Nenasheva \ D. E. Palchunov 1 2

1 Novosibirsk State University 1 Pirogov St., Novosibirsk, 630090, Russian Federation

2 Institute of Mathematics SB RAS 4 Academician Koptyug Ave., Novosibirsk, 630090, Russian Federation

nenasheva.zhenya@gmail.com, palch@math.nsc.ru

SEMI-AUTOMATED METHODS OF TRANSFORMING SENTENCES FROM NATURAL LANGUAGE INTO QUANTIFIER-FREE FORMULAS OF PREDICATE LOGIC

The article is devoted to the development of semi-automated methods for extracting and formal representation of knowledge from natural language texts. To solve this problem, we developed methods for converting natural language sentences into quantifier-free formulas of predicate logic. The knowledge extracted from texts is formalized. It is presented in the form of sets of atomic sentences forming fragments of atomic diagrams of algebraic systems. We developed methods for representing semantics of sentences of a natural language using binary predicates and integrating knowledge contained in several sentences of the text. Also we developed methods for eliminating missing knowledge by filling the empty places of predicates.

Keywords: knowledge extraction, representation of knowledge, knowledge integration, analysis of natural language texts, atomic diagram, ontology, theory "Meaning о text".

References

1. Melchuk I. A. Experience of the theory of the linguistic models «Meaning о Text». Moscow, 1999. (In Russ.)

2. Melchuk I.A. About one linguistic model of the «Meaning о Text» type: levels of utterance representation. Series of Literature and Language, 1976, vol. 33, no. 5, p. 5-33. (In Russ.)

3. Makhasoeva O. G., Palchunov D. E. Semi-automatic methods of a construction of the atomic diagrams from natural language texts. Vestnik NSU. Series: Information Technologies, 2014, vol. 12, no. 2, p. 64-73. ISSN 1818-7900. (In Russ.)

4. Makhasoeva O. G., Palchunov D. E. Program system for the construction of the atomic diagram of a model from natural language texts. Certificate of the State Registration of the Computer Program No. 2014619198, registered 10.09.2014.

5. Keisler G. Model theory. Moscow, Mir, 1977, 615 p. (In Russ.)

6. Palchunov D. E. Modelirovanie myshleniya i formalizaciya refleksii. I: Teoretiko-model'naya formalizaciya ontologii i refleksii [Modeling of reasoning and formalization of reflection I: Model theoretical formalization of ontology and reflection]. Filosofiya nauki, 2006, no. 4 (31), p. 86-114. (In Russ.)

7. Naydanov Ch. A., Palchunov D. E., Sazonova P. A. Model-theoretic methods of integration of knowledge extracted from medical documents. Vestnik NSU. Series: Information Technologies, 2015, vol. 13, no. 3, p. 29-41. ISSN 1818-7900. (In Russ.)

8. Naydanov Ch. A., Palchunov D. E., Sazonova P. A. Development of automated methods for the prevention of risks of critical conditions, based on the analysis of the knowledge extracted from the medical histories. The Siberian Scientific Medical Journal, 2016, vol. 36, no. 1, p. 105-113. (In Russ.)

9. Szeredi P., Lukacsy G., Benko T. The Semantic Web Explained: The Technology and Mathematics behind Web 3.0. Cambridge Uni. Press, 2014, 478 p.

10. Parreiras F. S. Semantic Web and Model-Driven Engineering. Wiley-IEEE Press, 2012, 264 p.

11. Allemang D., Hendler J. Semantic Web for the Working Ontologist. Morgan Kaufmann, 2008, 352 p.

12. Khoroshevsky V. F. Knowledge Spaces in the Internet and Semantic Web (Part 1). Iskusstvennyj intellekt iprinjatie reshenij, 2008, no. 1, p. 80-97. (In Russ.)

13. Meilicke C., Stuckenschmidt H. A Reasoning-Based Support Tool for Ontology Mapping Evaluation. Uni. of Mannheim Press, 2008.

14. Gutiererz F., Dou D., Fickas S., Griffiths G. Online Reasoning for Ontology-Based Error Detection in Text. Uni. of Oregon Press, 2014.

15. Noy N., Rector A. Defining N-ary Relations on the Semantic Web. W3C Working Group Note (12 April 2006). URL: https://www.w3.org/TR/swbp-n-aryRelations/

16. Korsun I. A., Palchunov D. E. Model-Theoretic Methods of Extraction of Knowledge on the Meaning of Concepts from the Natural Language Texts. Vestnik NSU. Series: Information Technologies, 2016, vol. 14, no. 3, p. 34-48. ISSN 1818-7900. (In Russ.)

17. Palchunov D. E. The solution of the problem of information retrieval based on ontologies. Biznes-informatika, 2008, no. 1, p. 3-13. (In Russ.)

For citation:

Nenasheva E. O., Palchunov D. E. Semi-Automated Methods of Transforming Sentences from Natural Language into Quantifier-Free Formulas of Predicate Logic. Vestnik NSU. Series: Information Technologies, 2017, vol. 15, no. 3, p. 49-63. (In Russ.)

i Надоели баннеры? Вы всегда можете отключить рекламу.