Авт. обработка текстов на естественном языке и комп. лингвистика. Большакова (2014) (1185448), страница 49
Текст из файла (страница 49)
Использование этого языка значительноупростило создание многих компонентов для обработки естественного языка.С использованием JAPE процесс обработки документа описывается в форменабора правил, каждое из которых состоит из двух частей, одна из которыхопределяет условия применения, а другая совершаемые действия.Левая часть правила задает так называемый шаблон, который используется длявыделения последовательности аннотаций.
Шаблон может содержать элементы,сопоставляемые с аннотациями, а также операторы регулярных выражений (?,*,+,|).При этом в шаблоне могут быть заданы ограничения на свойства аннотаций,входящих в выделяемую последовательность, например Token.kind == number.Правая часть Jape-правил описывает преобразования, применяемые к разметке вточке сопоставления левой части правила. Обычно такими преобразованиямиявляется добавление новых аннотаций, с заданием им тех или иных свойств.
Новыеаннотации добавляются к фрагментам текста, соответствующим меткам, указанным влевой части правила.Правила Jape применяются следующим образом: производится поиск в текстепоследовательности аннотаций, соответствующей левой части правила, затем меткам159ставятся в соответствие фрагменты текста, к которым в последствии добавляютсяаннотации правой части.Система GATE 2 доступна для свободного использования и может бытьзагружена с сайта системы.CatalystCatalyst [2] – это архитектура, выделенная из вопросно-ответной системы Qandaв 2002 году и предназначенная для решения задач обработки текстов на естественномязыке и извлечения информации.
Исходная система Qanda впоследствии послужилапрототипом для разработки других систем на базе архитектуры.Основными причинами для разработки архитектуры послужил тот факт, чтосуществующие системы плохо масштабировались при росте объемов обрабатываемойинформации и требований к скорости ее обработки.Для представления данных Catalyst использует модель, основанную нааннотациях TIPSTER.Важным отличием системы Catalyst от других, является использованиеконцепции потоков данных для интеграции компонентов. Каждый компонентсоединяется с другими каналами, по которым передаются аннотации, упорядоченныев соответствии с их позициями в документе (а для совпадающих позиций - по типаманнотаций).Каждый компонент объявляет какие типы аннотаций необходимы ему дляобработки и какие аннотации он генерирует на выходе.
Такая информация позволяетне передавать между компонентами аннотации, которые не будут использован изначительно уменьшить кол-во информации, передаваемой по каналам, что важно припостроении хорошо масштабируемых распределенных системы.Такой подход к интеграции компонентов имеет ряд преимуществ:Многие ошибки, связанные с неправильной организацией приложения могутбыть выявлены на этапе сборки;Отсутствуют накладные расходы на преобразование разметки в какой-либостандартный формат (например, на базе XML);Разработчики компонентов могут работать непосредственно с аннотациями, ане с разметкой в каком-либо формате;Система может работать как на одной машине, так и распределенно.Компоненты могут быть реплицированы для увеличения производительности;Код компонентов упрощается поскольку в них не требуется проверка данныхна корректность (она выполняется на этапе сборки приложения).Поскольку отладка и мониторинг распределенной системы может представлятьзначительные сложности Catalyst предоставляет возможности для распределенногологирования и мониторинга.
Использование распределенного логирования позволяетсобирать информацию со всех или указанных процессов в системе. Собраннаяинформация включает события начала и завершения обработки, пользовательскиесообщения, сообщения об ошибках и т.п. Логирование может быть включено призапуске системы или в процессе ее функционирования. Система мониторингапозволяет отслеживать конфигурацию и состояние приложения, включая потокипередаваемых данных в процессе его функционирования.
Предоставляетсяинформация об активных компонентах, потоках данных, количестве буферизованныхсообщений и т.п.160Работа с Catalyst состоит из написаний компонентов для фреймворка и сборкеприложений из компонентов. Catalyst разработан так, чтобы в первую очередьупростить вторую задачу - сборка приложения представляет из себя размещениекомпонентов и соединение их каналами.Компоненты для фреймворка могут быть разработаны непосредственно сиспользованием модели аннотаций или представлять из себя обертки вокруг ужесуществующих компонентов.§ 5.3.Системы интеграции поверхностной и глубокой обработкиSProUTСистема SProUT [13; 25] (Shallow Processing with Unification and Typed FeatureStructures) была разработана для задач поверхностной обработки текста в 2002-2004годах. Мотивацией для разработки системы послужила необходимость в системе,которая позволяла бы гибко интегрировать различных обрабатывающих компонентови в то же время представляла бы хорошее соотношение между производительностьюи выразительностью используемого формализма.Идеей системы было объединение формализмов конечных преобразователей,для которых существуют эффективные алгоритмы, и унификационных грамматик,позволяющих естественным образом выражать синтаксические и семантическиеограничения.
В качестве средства для такого объединения использовалась машина сконечным числом состояний, работающая над типизированными структурамипризнаков. Таким образом правила преобразований в правой части содержатрегулярное выражения над структурами признаков, а правая часть представляетвыходную структуру признаков. При этом ограничения на равенство признаковзаменяются их унифицируемостью.Описанный формализм был расширен путем добавления функциональныхоператоров и возможности вызова дополнительных правил в процессе сопоставления.Функциональные операторы позволяют расширять формализм путем подключенияновых функций, используемых для вычисления значений в результирующейструктуре. Использование вызова дополнительных правил позволяет вызывать влевой части правил сопоставление других правил (или, возможно, того же самогоправила) тем самым расширяя выразительность формализма до контекстносвободного ценой небольшого снижения эффективности сопоставления (посколькутакой вызов приводит к порождению нового процесса сопоставления).Ядро системы состоит из четырех основных компонентов - инструментария дляобработки конечных машин, компилятора регулярных выражений, интерпретатораформализма XTDL и пакета типизированных структур признаков.
С использованиемэтих компонентов разработаны переиспользуемые компоненты для обработкилингвистической информации. Компоненты легко интегрируются внутри системыпоскольку имеют унифицированное представление данных в виде типизированныхструктур признаков.161Компоненты осуществляют обработку последовательно, но возможна болеесложная конфигурация путем использования специально разработанного языкаописания процесса обработки.WhiteboardСистема Whiteboard [10; 25] была разработана в 2000-2002 годах и предполагалавозможность интеграции лингвистических компонентов для поверхностной иглубокой обработки текста.Такая интеграция компонентов для поверхностного и глубокого анализапроблематична в связи с различиями в их производительности и точности. Одно извозможных решений состоит в том, чтобы выполнять анализ параллельно, используярезультаты глубокого анализа при их наличии.
Однако, для больших наборов данныхтакой подход приводит к рассинхронизации работы компонентов. Авторы системыпредложили решение, основанное на анализе данных с использованием компонентовповерхностного анализа для определения участков, которые необходимо обработать спомощью компонентнов глубокого анализа. Кроме того, использование результатовповерхностного анализа на таких участках может быть использовано в качестведополнительной эвристики для компонентов глубокого анализа, увеличиваяпроизводительность их работы.Для представления лингвистической информации на поверхностном уровне всистеме используется XML-разметка. При этом более сложные структуры, которые немогут быть выражены в XML хранятся отдельно и доступны компонентам,выполняющим глубокую обработку.
Это позволяет, с одной стороны компонентамповерхностного анализа работать с хорошо известным представлением, акомпонентам глубокого анализа не быть ограниченными этим представлением.Heart of GoldАрхитектура Heart of Gold [7; 24; 25] была разработана в 2004-2005 как развитиеWhiteboard исправляющее ряд ее основных недостатков.
Задача архитектуры состоитв том, чтобы сохранить преимущества поверхностной обработки текста (в первуюочередь устойчивость и эффективность), но при этом увеличить точность и глубинуанализа в тех местах, где это необходимо.В качестве единого формата для представления данных выбран RMRS. Длякомпонентов, которые используют другие представления, основанные на XML,применяется преобразование данных, описываемое на языке XSLT.Платформа работает как медиатор между приложениями и наборомкомпонентов. Приложения посылают запросы об анализе документов центральномумодулю, который рассылает запросы различным компонентам и затем осуществляетслияние результатов их обработки.