Авт. обработка текстов на естественном языке и комп. лингвистика. Большакова (2014) (1185448), страница 48
Текст из файла (страница 48)
Каждый фрагментпредставляется в виде набора отрезков, каждый из которых состоит из пары чисел,указывающих позиции его начала и конца в документе. Хотя большинство аннотацийпривязываются только к одному отрезку текста, поддержка набора отрезковпозволяет ссылаться на разрывные фрагменты текста.Архитектура TIPSTER не позволяет аннотациям менять текст (например,вставлять символы), поскольку это требует представления позиций в тексте,позволяющих вставки.Каждая аннотация имеет тип (например, ЋлексемаЛ, ЋпредложениеЛ и т.п.) инабор аттрибутов. Аттрибуты могут содержать как простые значения (например,часть речи), так и более сложные, например, ссылки на другие аннотации.В рамках архитектуры TIPSTER предполагается, что приложение осуществляетдоступ к аннотациям очень часто.
Для того, чтобы упростить такой доступ введенопонятие набора аннотаций (AnnotationSet), который позволяет искать аннотации попозиции или типы, последовательно перебирать их, добавлять, удалять и т.п. Каждыйдокумент содержит набор аннотаций, представляющий все аннотации этогодокумента.Основные процедуры обработки текстов реализуются в приложениях в видекомпонентов, которые генерируют новую разметку в форме аннотаций. Компонентпринимает на обработку документ (с некоторой разметкой, сгенерированнойпредыдущими компонентами или без нее) и добавляет новые аннотации в разметку.Идеи, заложенные в TIPSTER были успешно использованы во многих ЕЯсистемах, некоторые из которых будут рассмотрены ниже:GATEОдной из наиболее известных систем для автоматической обработки текстов наестественном языке, основанных на идеях проекта TIPSTER, является GATE [12](General Architecture for Text Engineering).
GATE предоставляет для приложенийобщую модель представления, хранения и обмена данными между компонентами156приложения, а также графические инструменты для управления данными, ихвизуализации и анализа.Первая версия GATE была представлена в 1996 году и предназначалась длярешения следующих задач:Обмен информацией между компонентами в максимально общей теоретиконейтральной форме;Интеграция компонентов, написанных на различных языках программированияна различных платформах;Тестирование и доработка лингвистических компонентов и систем,построенных из них через единообразный графический интерфейс.GATE использует модель данных, разработанную в рамках проекта TIPSTER,однако, позволяет осуществлять преобразование из аннотаций в XML-разметку иобратно, что позволяет интегрировать приложения со стандартными инструментамипо обработке XML-документов.Система состоит из трех слоев:GDM (Gate Document Manager) - хранилище текстов и сопутствующейлингвистической информации, предоставляющее компонентам единообразныйинтерфейс для доступа и манипуляций с данными.CREOLE (Collection of REusable Objects for Language Engineering) - наборпереиспользуемых лингвистических компонентов для различных задач анализатекстов.
Компоненты используют GDM для доступа к данным. Некоторые изэтих компонентов были специально разработаны для использования в GATE,другие являлись обертками вокруг уже существующих.GGI (Gate Graphical Interface) - графический интерфейс, который позволяетиспользовать ресурсы GDM и CREOLE для интерактивного создания итестирования компонентов и приложений. Интерфейс позволяет создание,просмотр и редактирование коллекций документов, которые управляютсяGDM, а также отображение результатов работы компонентов в формеаннотаций.Использование GATE в различных проектах по обработке текстов наестественном языке и извлечению информации показало [20] преимущества ееиспользований, выраженные в том, что GATE:Способствует переиспользованию лингвистических компонентов, чтоуменьшает усилия, необходимые для интеграции и разработки приложений;Способствует объединению усилий в лингвистических исследований за счетпредставления общей базы для разработки компонентов и приложений;Облегчает сравнение алгоритмов и их реализаций в виде компонентов;Объединяет лучшие элементы подхода TIPSTER с возможностью экспортааннотаций в XML (а также импорта из него);Предоставляет удобный графический интерфейс.Так же были выявлены некоторые недостатки GATE, в частности:Не поддерживаются компоненты, представляющих источники данных;Не поддерживается генерация текста;Реализация базы данных неэффективна;Графический интерфейс иногда сложен и неочевиден;Модель обработки не масштабируется на большое число компонентов;Невозможно добавить новые компоненты для виузализации данных;157Для интеграции различных компонентов необходима совместимость их схеманнотаций.EllogonEllogon [22] (http://www.ellogon.org/) – многоязыковая платформа для созданияприложений обработки текстов на естественном языке, использующая идеи изпроектов TIPSTER и GATE.
Платформа была разработана в 2002 году как имеющаянизкое потребление ресурсов и поддерживающая обработку текстов на различныхязыках (за счет использования Unicode). Ellogon предоставляет инфраструктуру для:Управления, хранения и обмена текстами вместе с лингвистическойинформацией;Создания, управления и интеграции лингвистических компонентов;Поддержки взаимодействия между различными компонентами;Визуализации текстовой и лингвистической информации.Ellogon состоит из трех подсистем: ядра, графического интерфейса иподключаемых компонентов. Ядро реализует всю базовую функциональность поуправлению текстовой и лингвистической информацией, используемой в другихчастях системы.
Подключаемые компоненты выполняют конкретные задачилингвистической обработки. Ядро Ellogon написано на C++ из соображенийэффективности, однако имеет программный интерфейс для других языков, таких какTcl и Java.В соответствии с архитектурой TIPSTER, лингвистическая информацияпредставляется в форме аннотаций, причем одна аннотация может быть связана снесколькими непрерывными промежутками в тексте.Каждый компонент в Ellogon имеет набор предусловий и постусловий. Предусловияописывают лингвистическую информацию, которая должна быть представлена вдокументе для того, чтобы компонент мог осуществить его обработку, а постусловияописывают то, какая информация добавляется компонентом в текст в процессеобработки. Эта информация используется для определения порядка обработкидокумента.
Также, каждый компонент определяет набор параметров, которыеопределяют его поведение и могут быть отредактированы пользователем вграфическом интерфейсе и набор визуализаторов позволяющих представлятьобрабатываемую информацию в графическом интерфейсе.Для быстрой разработки компонентов Ellogon предоставляет специальныесредства в графическом интерфейсе, позволяющие генерировать заготовки для новыхкомпонентов, перезагружать компоненты после их редактирования и т.п.
Компонентымогут быть реализованы как на C++ и работать напрямую с ядром так и на другихязыках с использованием программного интерфейса для дополнительных языков.Ключевыми возможностями Ellogon являются:Полная поддержка Unicode и различных языков в ядре и графическоминтерфейсе;Портируемость на большинство платформ;Совместимость с другими ЕЯ-системами, такими как GATE за счетпредоставления специальных оберток для их программного интерфейса;Сжатие данных в памяти, позволяющее значительно уменьшить использованиепамяти приложением;Возможностьработывкачествевеб-сервера,предоставляющегофункциональность приложения через протокол HTTP.158Система Ellogon доступна для свободного использования и может бытьзагружена с сайта системы.GATE 2Для исправления недостатков первой версии GATE, был произведен полныйредизайн системы и в 2001 году разработана новая версия GATE [6], (http://gate.ac.uk/)реализованная на языке Java.
Переход на Java позволил использовать представлениетекста в Unicode, что обеспечило поддержку обработки текстов на различных языках.Одним из важнейших отличий стала поддержка компонентов трех типов:Языковые ресурсы, которые хранят и предоставляют сервисы для доступа кразличным типам лингвистических ресурсов, таким как документы, корпуса ионтологии; Хотя предоставляемые по умолчанию ресурсы предназначены длядоступа к текстовой информации, система не содержит ограничений наиспользование ресурсов другого типа, что позволяет реализовать ресурсы дляобработки информации других типов;Обрабатывающие ресурсы — лингвистические компоненты, которыеосуществляют различные лингвистические задачи, такие как выделение лексем,морфологический анализ, и т.п;Визуальные ресурсы — графические компоненты, предоставляющиевозможности визуализации и редактирования обрабатываемой информации илиредактирования процесса выполнения приложения.Каждый компонент GATE 2 имеет набор свойств, которые управляют егофункционированием, например, для большинства обрабатывающих компонентоводним из таких свойств является ссылка на обрабатываемый языковой ресурс.Выполнение приложения состоит в последовательном применении всехобрабатывающих компонентов к соответствующим им языковым ресурсам.Модель данных из проекта TIPSTER была модифицирована в целяхсовместимости с форматом Atlas.Также, в GATE 2 был введен специальный язык JAPE [11], позволяющийописывать процесс обработки разметки в компонентах в форме набора правил,основанных на регулярных выражениях.