Метод и алгоритмы извлечения фактов в информационно-аналитических системах

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 -Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5

УДК 681.326

Работа выполнена при финансовой поддержке Министерства образования и науки РФ в рамках ФЦП «Исследования и разработки по приоритетным направлениям развития научно-технологического комплекса России на 2007 - 2013 гг.», государственный контракт № 07.514.11.4115.

А. Л. Бутов, А. Т. Миргалеев

МЕТОД И АЛГОРИТМЫ ИЗВЛЕЧЕНИЯ ФАКТОВ В ИНФОРМАЦИОННО-АНАЛИТИЧЕСКИХ СИСТЕМАХ

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

В работе рассматривается класс информационно-аналитических систем (ИАС), реализующих обработку текстовой информации, представленной на естественном языке (ЕЯ). Исследуются вопросы анализа русскоязычных текстов. В работах [1, 2] показано, что функционирование рассматриваемых ИАС основано на аннотировании большого объема документов и формировании итогового отчетного документа, содержащего сформированные аннотации.

Модель данных и знаний ИАС

Kb =

Здесь:

Tes - тезаурус,

Rubr - множество правил рубрикации;

Areas - множество описаний зон ответственности;

Sources - множество источников данных;

Objects - множество описаний объектов;

Rb - модель базы правил для оценки ситуаций для каждого элемента множества зон ответственности Areas •

fact - множество фактов, описываемых в базе знаний ИАС

Аннотирование в ИАС основано на извлечении фактов из текстов, представленных на ЕЯ.

Модель факта

(

1)

fact -<subj,pred,obj >,

(

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 -Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5

2)

где fact - факт;

subj - слот, содержащий наименование субъекта факта, инициирующего какое-либо действие;

pred - слот, содержащий предикат, выражающий семантическое отношение между субъектом и объектом;

obJ - слот, содержащий наименование объекта факта, описывающий результат указанного в subJ действия, или значение какого-либо параметра, описывающего рассматриваемый факт fact.

Практическая реализация разработанной модели данных и знаний ИАС требует разработки метода извлечения фактов из текстов на ЕЯ. Анализ работ [4 - 7] показал, что существующие методы извлечения фактов базируются на извлечении из ЕЯ текстовых данных сущностей (например, наименований компаний, названий городов, фамилий и имен, временных значений, денежных значений и т.п.), а затем поиске взаимосвязей между ними (например, местоположение организаций, дата и время событий и т.п.).

Классы методов

1. Методы, основанные на правилах, заданных экспертами.

2. Методы, основанные на автоматическом формировании (обучении) правил извлечения по коллекции предварительно размеченных документов.

Показано, что существующие методы не удовлетворяют требованиям, предъявляемым к ИАС рассматриваемого класса по следующим причинам:

а) не позволяют строить выдержки и аннотации из рассматриваемых ЕЯ текстовых документов при построении отчетного документа;

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

В этой связи потребовалась разработка нового метода извлечения фактов из ЕЯ информации.

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

На рис. 1 представлен метод извлечения фактов из текстовых документов, представленных на ЕЯ (русском языке).

12

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 -

Рис. 1. Метод извлечения фактов из ЕЯ текстов, представленных на русском языке

Этап 1 предполагает разбиение текста на абзацы и предложения для последующего анализа.

Этап 2 осуществляет разбиение каждого предложения документа на простые элементы: пробелы; слова; цифры; кавычки; скобки; знаки препинания.

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

Ключевым элементом этапа 3 разработанного метода извлечения фактов являются правила поиска сущностей.

Предложено описывать каждое правило в виде функции определенного

вида.

Функции для практической реализации разработанного метода

1. SearchSimpleRuleElement - определение соответствия входного элемента правилу отбора сущностей.

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

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 -Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5

3. SearchGroupRuleElement - перебор во множестве элементов входных данных, при этом одновременно все элементы должны соответствовать правилу отбора сущностей.

Каждая функция получает на входе некоторое выражение (правило отбора сущностей) и исходные данные. На выходе - возвращает логическое значение соответствия или несоответствия данных выражению (правилу отбора сущностей).

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

Алгоритм поиска сущности в ЕЯ текстовом документе в соответствии с правилами re представлен на рис. 2. На вход алгоритма поступает группа входных элементов sems - последовательность элементов, полученная на этапе 2 метода аннотирования текстов. Группа - это структура данных, содержащая порядковые индексы начала и конца последовательности входных элементов. Список групп results - это структура данных типа «список», каждый элемент которого содержит верхнюю и нижнюю границы найденного соответствия.

14

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3

Рис. 2. Алгоритм поиска сущности

В процессе исследования были выявлены основные сущности (и разработаны соответствующие им правила re), которые позволяют реализовать этап 4.

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 -Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5

Этап 4 - извлечение отношений между сущностями.

Основные сущности языка в обрабатываемых в ИАС текстах

1. Предикат (predicate) - множество элементов, состоящих из глагола (причастие, деепричастие) или краткого прилагательного и дополняющих слов (наречий). На рис. 3 представлен пример программной реализации (на языке c#) одного из правил поиска сущности-предиката.

2. Дата/время (date/time) - множество элементов, которые все вместе обозначают дату и (или) время.

3. Числовое значение (number) - множество элементов, представляющее численное значение.

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

5. Предложная группа (prepositionalgroup) - множество элементов, состоящее из предлога и объекта (объектов).

16

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 -Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5

private Rule GetPredicateRuleVerbsQ {

return new Rule("Предикат из HE и нескольких глаголов", new BaseElement5.RuleElement[]

{

new SwitchRuleElement(new BaseElements.RuleEleinent[]

{

new GroupRuleElement(new EaseElements.RuleElement[]

{

GetNotElementQ,

GetftdverbsO,

GetVerbsRuleQ

b 1),

new GroupRuleElement(new EaseElements.RuleElement[]

{

GetNotElementQ,

GetVerbsRuleQ

}, N 1)

}, Required.Required)

})i

}

private WordRuleElement GetNotElement

{

return new WordRuleElement("He", null, 0, 1),

}

private GroupRuleElement GetAdverbsQ {

return new GroupRuleElement(new BaseElements.RuleElement[]

{

new SwitchRuleElement(new []

{

GetAdverb(),

GetPronominalAdverb

}, Required.Required)

}, 0, 2);

}

private GroupRuleElement GetVerbsRuleQ {

return new GroupRuleElement(new BaseElements.RuleElement[]

{

new WordRuleElement

h 1, 1)J

}

Рис. 3. Пример программной реализации на языке c# одного из правил

поиска сущности-предиката

В процессе исследования было выявлено множество специфичных отношений, описывающих различные стереотипные ситуации. Указанные отношения зависят от объекта и предмета исследования, по которым строится описание ситуации в ИАС и являются специфическими. В частности, наиболее значимыми объектами являются объекты из множества <°bjects в выражении (1). Следует отметить, что каждая стереотипная ситуация является частным случаем одного из следующих более общих (неспецифичных) отношений.

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 -Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5

1) Объект - Предикат - Объект (ObjectPredicateObject) - множество элементов, обозначающее взаимодействие между несколькими объектами;

2) Объект - Предикат - Свойство (ObjectPredicateProperty) - множество элементов, обозначающее свойство объекта.

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

Алгоритм поиска сущности итеративно вызывает функцию поиска возможной позиции сущности в электронном текстовом документе. Алгоритм соответствующей функции представлен на рис. 4. При этом переменная semindex - это индекс текущего обрабатываемого элемента входной последовательности, переменная startindex - это нижняя граница предполагаемого соответствия.

18

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3

Рис. 4. Алгоритм поиска возможной позиции сущности в ЕЯ текстовом

документе

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 -Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5 Алгоритм обработки правила re, обеспечивающий рекурсивный вызов

обработчиков элементов для сложных правил отбора сущностей представлен

на рис. 5.

Рис. 5. Обработка правила

При этом:

а) функция SearchSimpleRuleElement, алгоритм которой представлен на рис. 6, обрабатывает простые условия соответствия, налагаемые на один элемент входной последовательности;

б) функция SearchSwitchRuleElement, алгоритм которой представлен на рис. 7, обрабатывает условия соответствия хотя бы одного элемента из заданных правилом элементу входной последовательности;

в) функция SearchGroupRuleElement, алгоритм которой представлен на ри. 8, обрабатывает условия соответствия одновременно нескольких элементов правила заданной входной последовательности.

Функции re, se и gr - это функции-элементы правила поиска сущности. Счетчик count предназначен для накопления числа совпадений обрабатываемой функции (рис. 6 - 8).

20

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3  Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5 Рис. 6. Алгоритм функции SearchSimpleRuleElement

22

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 -Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5 Рис. 7. Алгоритм функции SearchSwitchRuleElement

Рис. 8. Алгоритм функции SearchGroupRuleElement

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 -Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5

На этапе 4 выявляются отношения pred между сущностями типа:

Объект - Предикат - Объект, Объект - Предикат - Свойство.

Этап 5 - осуществляется отбор отношений pred с использованием следующих критериев (по уменьшению приоритета):

а) наличие важного ключевого предикативного слова (глагол, причастие, деепричастие, краткое прилагательное);

б) наличие важного ключевого слова-существительного;

в) наличие ключевой фразы, заданной пользователем.

При формировании аннотации размером 5 - 10% от оригинального текста используется комбинирование критериев. По достижении желаемого объема применение критериев для отбора отношений прекращается, а аннотация считается сформированной.

Этап 6 разработанного метода при наличии одинаковых фактов fact, полученных из различных источников информации - проверка наличия неопределенности в указанных фактах. При этом пользователем определяется какому из извлеченных фактов стоит доверять, следовательно, поместить в формируемый отчетный документ.

Этап 7 - полученное множество фактов fact группируется и представляется пользователю в виде отчетного документа.

Интерфейс разработанной ИАС представлен на рис. 9. В левой части окна интерфейса представлены сформированные с использованием разработанного метода аннотации ЕЯ текстовых документов, найденных и загруженных из источников информации в Интернете. В правой части - оригинал рассматриваемого документа.

24

Инновации в информационно-аналитических системах: сб. научи, трудов. Вып. 3 -

Рис. 9. Интерфейс ИАС

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

Инновации в информационно-аналитических системах: сб. научн. трудов. Вып. 3 -Курск: Науком, 2012. - 93 с., ил. ISBN 978-5-4297-0004-5 Библиографический список

1. Бутов А.Л., Миргалеев А.Т. Структурно-функциональная организация информационно-аналитической системы органов власти субъектов РФ, Информационно-измерительные и управляющие системы. 2011. № 4, Т. 9.

2. Бутов А.Л. Модель данных и знаний информационно-аналитических систем органов власти субъектов РФ, Телекоммуникации, № 8/2011, 8 с.

3. Бутов А.Л., Кониченко А.В., Миргалеев А.Т., Сизов А.С. Подсистема обработки данных и знаний информационно-аналитических систем органов власти, Телекоммуникации, № 12/2011, 7 с.

4. Sunita Sarawagi - Information Extraction - Foundations and Trends in Databases Vol. 1, No. 3 (2007). Р. 261-377.

5. Hamish Cunningham - Automatic Information Extraction, 2004, 22 p.

6. Fabian M. Suchanek - Information Extraction, 2011, suchanek.name/work/ teaching/IE2011a.pdf.

7. Fabian M. Suchanek - Natural Language Processing, 2011, http://suchanek.name/work/teaching/NLP2011senegal/NLP2011senegal.pdf.

26