Инструментальные системы извлечения информации

50
Инструментальные системы извлечения информации из ЕЯ-текстов Обзор основных подходов Носков Алексей Кафедра Алгоритмических Языков МГУ им. М.В.Ломоносова, ВМК [email protected] 2 марта 2011

Upload: -

Post on 22-May-2015

333 views

Category:

Technology


0 download

DESCRIPTION

2 марта 2011Носков Алексей

TRANSCRIPT

Page 1: Инструментальные системы извлечения информации

Инструментальные системы извлеченияинформации из ЕЯ-текстов

Обзор основных подходов

Носков Алексей

Кафедра Алгоритмических ЯзыковМГУ им. М.В.Ломоносова, ВМК

[email protected]

2 марта 2011

Page 2: Инструментальные системы извлечения информации

Извлечение информации

Извлечение информации из текстов (Information Extraction)

I Выделение структурированной информации (свойствобъектов, отношений, событий) из неструктурированныхтекстов на естественном языке.

I Нет необходимости производить полный синтаксическийанализ текста (достаточно выделить только необходимыеструктуры)

I Нет необходимости использовать сложные структурыданных для представления текста

I Приложение настраивается на конкретную область(например, на политику или экономику)

Page 3: Инструментальные системы извлечения информации

Инструментальные системы извлечения информации

I Позволяют создавать приложения, осуществляющиеизвлечение информации

I Предоставляют готовые элементы для приложений:I Концепции (форматы данных, описания протоколов,

архитектурные решения)I Программный код (осуществляющий работу с форматами,

решающий лингвистические задачи, обеспечивающийвзаимодействие других элементов)

I Реализуют различные подходы с точки зренияпредставления данных и их обработки

Page 4: Инструментальные системы извлечения информации

Классификация инструментальных систем

Классификация систем по типу представления данных:

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

I Основанные на аннотациях - лингвистическая информацияхранится отдельно и ссылается на участки текста

I Основанные на абстракции - текст хранится как частьобщей структуры данных (в докладе не рассматриваются)

H. Cunningham, K. Humphreys, and R. Gaizauskas, “GATE - a TIPSTER-basedGeneral Architecture for Text Engineering,"IN PROCEEDINGS OF THE TIPSTERTEXT PROGRAM (PHASE III) 6 MONTH WORKSHOP. DARPA, 1997.

Page 5: Инструментальные системы извлечения информации

Содержание

Основанные на разметкеLT-NSLWraetlic

Основанные на аннотацияхGATEGATE 2Catalyst

Интеграция поверхностной и глубокой обработкиSProUTWhiteboardHeart of Gold

Другие подходыLearning Based JavaCAFE

Page 6: Инструментальные системы извлечения информации

Лингвистическая разметка

I Лингвистическая информация хранится в формеразметки непосредственно в документе

I Разметка обычно представляется в виде SGML или XMLI Каждая лингвистическая единица (слово, предложение,

группа) помечается с помощью тэга (<w>,<s>,<np>)I Вложенность тэгов отражает иерархическую структуру

лингвистических единиц

Page 7: Инструментальные системы извлечения информации

Пример разметки в XML

As far as I was enabled...

<s id="6293"><w c="w" pos="IN" id="624">As</w><w c="w" pos="RB" id="625">far</w><pp id="21236">

<w c="w" pos="IN" id="626" head="yes">as</w><np number="singular" person="1" id="627">

<w c="w" pos="PRP" head="yes" id="628">I</w></np>

</pp><vbar voice="passive" time="past" id="629" args="+6302">

<w c="w" pos="VBD" stem="be" head="yes" id="630">was</w><w c="w" pos="VBN" stem="enable" id="631">enabled</w>

</vbar>

Page 8: Инструментальные системы извлечения информации

LT-NSL

Разработана в 1996 году

I Компоненты (стеммеры, графематические анализаторы)реализуются в виде отдельных процессов ОС

I Компоненты взаимодействуют через стандартные ввод ивывод (соединяются через UNIX-каналы)

I В памяти не хранится весь текст - только необходимая дляобработки часть

D. McKelvie, C. Brew, and H. Thompson, “Using SGML as a Basis for Data-IntensiveNLP"IN PROCEEDINGS OF THE FIFTH CONFERENCE ON APPLIED NATURALLANGUAGE PROCESSING (ANLP-97, 1997)

Page 9: Инструментальные системы извлечения информации

LT-NSL: Представление информации

Представление на основе SGML

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

I Приложение может игнорировать узлы, не затрагиваемыеконкретным видом анализа

I SGML способствует формальному описанию используемойнотации

I Для SGML имеются утилиты для проверки соответствиядокументов формальному описанию

I Для представления пересекающейся разметки (например,различных интерпретаций слова) используются ссылки

I Документы преобразуются в упрощенную форму для болееэффективного разбора в компонентах

Page 10: Инструментальные системы извлечения информации

Wraetlic

Разработана в 2006 году, Java

I Данные представляются в форме XML-разметкиI Для преобразований разметки (например, между

компонентами, использующими различные форматы)используется XSLT

I Для представления пересекающейся разметкииспользуются внешние XML-узлы и ссылки

I Реализован специальный модуль для разрешения ссылокI Компоненты могут быть совмещены в одном процессе и

обмениваться уже разобранным XML, находящимся впамяти

E. Alfonseca, A. Moreno-s, J. M. Guirao, and M. Ruiz-casado, “The wraetlic NLPsuite,"2006.

Page 11: Инструментальные системы извлечения информации

Плюсы и минусы использования разметки

Плюсы

I Простота представления информацииI Наличие средств для просмотра и редактирования

разметки

Минусы

I Трудность представления сложных и пересекающихсяструктур

Page 12: Инструментальные системы извлечения информации

Содержание

Основанные на разметкеLT-NSLWraetlic

Основанные на аннотацияхGATEGATE 2Catalyst

Интеграция поверхностной и глубокой обработкиSProUTWhiteboardHeart of Gold

Другие подходыLearning Based JavaCAFE

Page 13: Инструментальные системы извлечения информации

Аннотации

I Лингвистическая информация хранится отдельно от текстав форме аннотаций

I Аннотации ссылаются на фрагменты документаI Аннотации сождержат атрибуты, задающие

характеристики описываемых лингвистических единицI Аннотации могут быть получены по заданному фрагментуI Параллельные лингвистические единицы (различные

интерпретации одного слова) представляютсяпараллельными аннотациями (между одними и теми жепозициями)

I Множество аннотаций может быть представлено в видеациклического ориентированного графа

Page 14: Инструментальные системы извлечения информации

Пример множества аннотаций

As far as I was enabled...

0As //w

66

s

AA1far //w

66 2as //w

66

pp

JJ3I //w

66

np

HH4was //w

66

vbar

AA5enabled//

w66 6 ... n

Page 15: Инструментальные системы извлечения информации

Архитектура TIPSTER

I Документы состоят из текста и множества аннотацийI За хранение документов отвечает репозиторийI Компоненты запрашивают документы из репозиторияI Лингвистическая обработка представляет из себя

преобразование разметки документов

R. Grishman, “TIPSTER text phase II architecture design,"in Proceedings of aworkshop on held at Vienna, Virginia: May 6-8, 1996, pp. 249–305, 1996.

Page 16: Инструментальные системы извлечения информации

GATE

Разработана в 1996 году, C++

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

I Предоставляет максимально общуютеоретико-нейтральную форму для обмена информацией

I Позволяет интегрировать различные компоненты (наразличных языках, на различных платформах)

I Предоставляет библиотеки для разработки и тестированиякомпонентов

I Предоставляет среду для построения приложений вграфическом интерфейсе

H. Cunningham, K. Humphreys, and R. Gaizauskas, “GATE - a TIPSTER-basedGeneral Architecture for Text Engineering,"IN PROCEEDINGS OF THE TIPSTERTEXT PROGRAM (PHASE III) 6 MONTH WORKSHOP. DARPA, 1997.

Page 17: Инструментальные системы извлечения информации

GATE: Компоненты

I GDM (Gate Document Manager) - хранилище текстов илингвистической информации

I Предоставляет единообразный интерфейс для доступа иманипуляций с данными

I CREOLE (Collection of REusable Objects for LanguageEngineering) - набор переиспользуемых лингвистическихкомпонентов

I GGI (Gate Graphical Interface) - графический интерфейс,позволяющий интерактивное создания и тестированиекомпонентов и приложений

Page 18: Инструментальные системы извлечения информации

GATE: Плюсы и минусы

Плюсы

I Переиспользование лингвистических компонентовI Уменьшение усилий для интеграцииI Общая база для разработки компонентов и приложенийI Сравнение алгоритмов и их реализаций – компонентовI Удобный графический интерфейс

Минусы

I Нет компонентов-источников данныхI Не поддерживается генерация текстаI Нельзя расширять визуализациюI Необходима совместимость схем аннотаций компонентов

D. Maynard et al., “A Survey of Uses of GATE."

Page 19: Инструментальные системы извлечения информации

GATE 2+

Разработана в 2001 году, JavaАктивно развивается по настоящий момент

I Полная поддержка UnicodeI Возможность описания компонентов, предоставляющих

данныеI Возможность описания визуальных компонентовI Язык JAPE для обработки разметки

K. Bontcheva, et.al. “GATE: A Unicode-based infrastructure supporting multilingualinformation extraction,"IN PROCEEDINGS OF WORKSHOP ON INFORMATIONEXTRACTION FOR SLAVONIC AND OTHER CENTRAL AND EASTERNEUROPEAN LANGUAGES (IESL’03), BOROVETS, 2003.

Page 20: Инструментальные системы извлечения информации

GATE 2: Компоненты

I Языковые ресурсыI Доступ к документам, корпусам и онтологиямI Возможен доступ к нетекстовым данным

I Обрабатывающие ресурсыI Различные этапы обработки - выделение лексем,

морфологический анализ, и т.п

I Визуальные ресурсыI Визуализация и редактирование информации или процесса

обработки

Page 21: Инструментальные системы извлечения информации

GATE 2: JAPE

Язык преобразования разметки

I Описание процесса преобразований с помощью регулярныхправил

I Левая часть правила - регулярное выражение наданнотациями

I Правая часть правила - действия по редактированиюразметки

I Добавление аннотацийI Удаление аннотацийI Модификация аттрибутов аннотацийI Произвольный Java-код

H. Cunningham, H. Cunningham, D. Maynard, D. Maynard, V. Tablan, and V.Tablan, “JAPE: a Java Annotation Patterns Engine,"1999.

Page 22: Инструментальные системы извлечения информации

GATE 2: JAPE: Примеры правил

Rule: PersonJobTitle( {Lookup.majorType == jobtitle} ):jobtitle( {TempPerson} ):person-->

:jobtitle.JobTitle = {rule = "PersonJobTitle"},:person.Person = {kind = "personName",

rule = "PersonJobTitle"}

Rule: YearContext1( {Token.string == "in"} | {Token.string == "by"} )( {Token.kind == "number" } ):year-->

:year.Timex = {kind = "date", rule = "YearContext1"}

Page 23: Инструментальные системы извлечения информации

Catalyst

Архитектура, разработанная в 2002 году

I Использует модель аннотаций TIPSTER вместе с модельюпотоков данных

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

плохо масштабируются

P. Anand et al., “Qanda and the Catalyst Architecture,"2002.

Page 24: Инструментальные системы извлечения информации

Catalyst: Компонентная организация

I Центральный репозиторий отсутствуетI Компоненты соединяется каналами, по которым

передаются аннотацииI Аннотации в каналах упорядочены в соответствии с их

позициями в документеI Компонент объявляет типы принимаемых и порождаемых

им аннотацийI Эта информация используется для передачи только

необходимых аннотаций

Page 25: Инструментальные системы извлечения информации

Catalyst: Архитектура

Page 26: Инструментальные системы извлечения информации

Catalyst: Пример приложения

Page 27: Инструментальные системы извлечения информации

Catalyst: Плюсы и минусы

Плюсы

I Выявление ошибок на этапе сборкиI Минимизация кол-ва передаваемых аннотацийI Возможность поточной обработки данныхI Возможность распределенной работы

Минусы

I Усложнение функционирования системыI Усложнение процесса разработки приложения

Page 28: Инструментальные системы извлечения информации

Плюсы и минусы использования аннотаций

Плюсы

I Простота представления информацииI Естественное представления пересекающихся структурI Простота обработки в терминах преобразования аннотацийI Возможность преобразования в разметку

Минусы

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

I Трудность представления сложных структур, необходимыхдля глубокого анализа текста

Page 29: Инструментальные системы извлечения информации

Содержание

Основанные на разметкеLT-NSLWraetlic

Основанные на аннотацияхGATEGATE 2Catalyst

Интеграция поверхностной и глубокой обработкиSProUTWhiteboardHeart of Gold

Другие подходыLearning Based JavaCAFE

Page 30: Инструментальные системы извлечения информации

Интеграция поверхностной и глубокой обработки

I Часто поверхностного анализа (выделения необходимыхконструкций) не достаточно для качественного извлеченияинформации

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

I Интеграция глубокого и поверхностного анализапредставляет сложности в силу:

I Различного представления данныхI Различной скорости обработки

U. Schafer, “Integrating Deep and Shallow Natural Language Processing Components– Representations and Hybrid Architectures,"Faculty of Mathematics and ComputerScience, Saarland University, 2007.

Page 31: Инструментальные системы извлечения информации

SProUT

Разработана в 2002-2004 годах

I Объединеняет идеи использования унификационныхграмматик и конечных преобразователей

I Лингвистические единицы описываются структурамипризнаков

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

I Дополнение до контекстно-свободного формализма за счетвозможности вызова других правил преобразователя

I Расширение преобразователя за счет добавленияфункциональных операторов

W. Drozdzynski, H. Krieger, J. Piskorski, U. Schafer, and F. Xu, “Shallow Processingwith Unification and Typed Feature Structures — Foundations andApplications,"Kunstliche Intelligenz, vol. 1, pp. 17–23, 2004.

Page 32: Инструментальные системы извлечения информации

SProUT: Архитектура

Page 33: Инструментальные системы извлечения информации

SProUT: Структуры признаковСтруктура признаков - набор пар «признак-значение» f :

[q : a

]g : ch : d

I Здесь f, g, h - признаки,

[q : a

], с и d - соответствующие

значенияI Значением может быть другая структура признаков

Для структур признаков определено отношение частичногопорядка f :

[q : af : e

]g : ch : d

⊆ [f :[q : a

]h : d

]

Page 34: Инструментальные системы извлечения информации

SProUT: Унификация структур признаков

I Результат унификации структур признаков α и β –структура γ, содержащая информацию как из α, так и из β

I γ ⊆ α, γ ⊆ βI Структуры признаков могут содержать переменныеI При унификации переменные могут получать значения

Результатом унификации

f : 1[q : 2

]g : 1

h : 2

и[h : ei : u

]будет:

f : 1

[q : e

]g : 1

h : ei : u

Page 35: Инструментальные системы извлечения информации

SProUT: Пример правила

morph &

POS : Determiner

INFL :

CASE : c

NUMBER : n

GENDER : g

?

morph &

POS : Adjective

INFL :

CASE : c

NUMBER : n

GENDER : g

*

morph &

POS : Noun cat

INFL :

CASE : c

NUMBER : n

GENDER : g

→ phrase &

CAT : cat

AGR : agr&

CASE : c

NUMBER : n

GENDER : g

Page 36: Инструментальные системы извлечения информации

SProUT: Применение правил

I При сопоставлении элемента правила с лингвистическойединицей происходит унификация соответствующихструктур признаков

I При успешной унификации переменные в структурахправила получают значения и ограничиваютунифицируемость последующих элементов

I Так реализуется согласование

I После унификации всех входящих в правило элементовпорождается новая структура признаков

Page 37: Инструментальные системы извлечения информации

Whiteboard

Разработана в 2000-2002 годах

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

I Использование результатов поверхностного анализа какэвристической информации при глубоком анализе

I Представление данных на поверхностном уровне спомощью XML

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

B. Crysmann et al., “An Integrated Architecture for Shallow and DeepProcessing,"UNIVERSITY OF PENNSYLVANIA, pp. 441–448, 2002.

Page 38: Инструментальные системы извлечения информации

Whiteboard: Архитектура

Page 39: Инструментальные системы извлечения информации

Heart of Gold

Разработана в 2004-2005 как развитие Whiteboard

I Приложение посылают запросы об анализе документовцентральному координатору

I Центральный координатор распределяет задачи междукомпонентами и осуществляет слияние результатов

I Результат обработки каждого компонента -недоспецифицированная семантическая информация

I Каждый следующий компонент расширяет ее илиоповещает о невозможности расширения

I XML для представления данныхI XSLT для преобразования данных

U. Callmeier, A. Eisele, U. Schafer, and M. Siegel, “The DeepThought corearchitecture framework,"in Proceedings of LREC, vol. 4, pp. 1205–1208, 2004.

Page 40: Инструментальные системы извлечения информации

Heart of Gold: Архитектура

Page 41: Инструментальные системы извлечения информации

Плюсы и минусы интеграции поверхностной и глубокойобработки

Плюсы

I Увеличение качества анализаI Возмлжность использования более выразительных

формализмов

Минусы

I Усложнение системыI Снижение производительности

Page 42: Инструментальные системы извлечения информации

Содержание

Основанные на разметкеLT-NSLWraetlic

Основанные на аннотацияхGATEGATE 2Catalyst

Интеграция поверхностной и глубокой обработкиSProUTWhiteboardHeart of Gold

Другие подходыLearning Based JavaCAFE

Page 43: Инструментальные системы извлечения информации

Learning based Java

Проект 2007 года

I Процесс анализа текста представляется в виде композициистатистических моделей

I Модели определяют признаки данных и ограничения наних данных

I Система осуществляет поиск решения, оптимизирующеговесовую функцию от результатов моделей

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

N. Rizzolo and D. Roth, “Learning Based Java for Rapid Development of NLPSystems,"in Proceedings of the International Conference on Language Resources andEvaluation (LREC), 2010.

Page 44: Инструментальные системы извлечения информации

Learning Based Java: Пример модели

/** This feature generating classifier "senses" all the* words in the document that begin with an alphabet* letter. The result is a bag-of-words representation* of the document. */

discrete% BagOfWords(Post post) <- {for (int i = 0; i < post.bodySize(); ++i)

for (int j = 0; j < post.lineSize(i); ++j) {String word = post.getBodyWord(i, j);if (word.length() > 0 &&

word.substring(0, 1).matches("[A-Za-z]"))sense word;

}}/** The label of the document. */discrete NewsgroupLabel(Post post) <-

{ return post.getNewsgroup(); }http : //cogcomp.cs.illinois.edu/page/software_view/11

Page 45: Инструментальные системы извлечения информации

Learning Based Java: Пример приложения

/** Here, we train averaged Perceptron for many* rounds of the training data. **/

discrete NewsgroupClassifierAP(Post post) <-learn NewsgroupLabel

using BagOfWordsfrom new NewsgroupParser("data/20news.train.shuffled")

40 roundswith SparseNetworkLearner {

SparseAveragedPerceptron.Parameters p =new SparseAveragedPerceptron.Parameters();

p.learningRate = .1;p.thickness = 3;baseLTU = new SparseAveragedPerceptron(p);

}progressOutput 20000testFrom new NewsgroupParser("data/20news.test")

end

Page 46: Инструментальные системы извлечения информации

CAFE

Проект 2001 года

I Система состоит из компонентов, обрабатывающих данныепоследовательно

I Компоненты работают одновременноI Компоненты предоставляют результаты работы по мере их

полученияI На следующий уровень передается несколько наилучших

вариантов анализаI На предыдущий уровень передается информация об оценке

полученных вариантов анализа

S. C. Stoness, “Continuous Understanding: A First Look at CAFE,"2001.

Page 47: Инструментальные системы извлечения информации

CAFE: Архитектура

Page 48: Инструментальные системы извлечения информации

Сравнение подходов

Сравнение подходов

I Разметка отличается простотой и наличием готовыхинструментов, однако уступает использованиюаннотаций в гибкости

I Аннотации позволяют получить многие преимуществаразметки за счет возможности конвертирования аннотацийв разметку и обратно

I В связи с большой популярностью GATE многиепрактические системы используют аннотации

I Однако, и разметка и аннотации ограничены припредставлении сложных структур данных

I Интеграция поверхностной и глубокой обработки,возможно, является перспективным направлением

Page 49: Инструментальные системы извлечения информации

Интересные направления

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

анализI Предоставление системой возможностей для обучения

статистических моделейI Баланс между широкими возможностями и низким

порогом вхождения

Page 50: Инструментальные системы извлечения информации

Вопросы?