Авт. обработка текстов на естественном языке и комп. лингвистика. Большакова (2014) (1185448), страница 50
Текст из файла (страница 50)
При этом, результаты запросов сохраняются в базеданных, что позволяет избежать повторной обработки при получении тех жезапросов. Параметры запросов указывают на анализируемый документ, участок втексте, который необходимо проанализировать, а также необходимую глубинуанализа.В соответствии с идеей, заложенной в систему результат обработки каждогокомпонента представляет из себя недоспецифицированную семантическуюинформацию, которая может быть углублена в процессе дальнейшей обработки. Всоответствии с этим, стратегия обработки запроса состоит в том, чтобы обработатьзапрос с помощью всех компонентов начиная с минимальной глубины до заданной в162запросе, откатываясь к результату работы предыдущего компонента в случае, есликакой-либо компонент не обработал запрос. Для возможности последующего анализаусловий при которых был получен тот или иной результат, вместе с ним сохраняетсяметаинформация о переданых параметрах, времени обработки запроса и т.п.Ядро системы написано на Java, однако компоненты и приложения могут бытьнаписаны на любых языках и осуществлять взаимодействие с ядром через протоколXML-RPC.§ 5.4.Системы, развивающие отдельные аспекты обработки текстаЗдесь представлены другие системы, осуществляющие обработку текстов наестественном языке так или иначе интересные идеями, заложенными в них.FastusСистема Fastus [16] была разработана в 1994 как средство для эффективного иточного извлечения информации из текстов и интересна в первую очередь тем, чтоявлялась одной из первых систем, использующих регулярные шаблоны для решениязадач извлечения информации.При разработке системы были учтены такие особенности извлеченияинформации из текстов, как релевантность только небольшой части анализируемоготекста, необходимость отображения информации в заранее определенноеотносительно простроен представление и незначительность многих аспектов,связанных со значением и целью написания текста.
При этом рассмотрениеизвлечения информации как подзадачи понимания текста и применение систем,предназначенных для понимания текстов приводило к относительно низкомукачеству результатов при низкой эффективности обработки.Для преодоления этой проблемы авторами было предложено использовать дляизвлечения информации более простой регулярный формализм вместо обычноиспользуемых контекстно-свободных с тем, чтобы увеличить эффективность работысистемы.Работа системы FASTUS состояла из четырех этапов:1. Обнаружение ключевых слов, свидетельствующих о наличии в предложенияхрелевантной информации;2. Выделение именных групп, глагольных групп и важных классов слов, такихкак предлоги, союзы, и т.п;3.
Выделение необходимой информации по шаблонам. Шаблоны для выделенияпредставлялись в виде конечных автоматов, где переходы соответствовалиключевым словам или словосочетаниям заданного типа, выделенным напредыдущем этапе. При этом в шаблонах использовались конструкции,позволяющие выделять более сложные языковые конструкции (например,сложные именные группы) для представления более полной информации врезультирующей структуре.4.
Структуры, выделенные для одного и того же предложения сливались в однудля получения наиболее полной информации об описываемом событии.Проведенные эксперименты показали эффективность выбранного подхода дляизвлечения информации.163CAFECистема CAFE [29] (Cascading, Asynchonous, Feedback Envrionment)разрабатывалась в 2001 году и предназначалась для решения задач распознаванияречи.CAFE интересна в первую очередь принципами взаимодействия компонентов,основанных на идеях так называемого Ћнепрерывного пониманияЛ, в которомкомпоненты, обрабатывающие данные не дожидаются полных результатовпредыдущего этапа, а производят анализ параллельно, при этом предоставляякомпонентам предыдущего информацию, корректирующую их функционирование.Традиционно взаимодействие компонентов, составляющих систему строится наоснове предоставления каждым компонентом единственного наилучшего результатаанализа на основе информации на своем уровне.
Однако, во многих случаях выборразличных вариантов на определенном уровне анализа не может быть осуществлентолько на основе информации этого уровня, а требует использования информации сболее глубоких уровней анализа текста.Для решения этой проблемы в CAFE используется следующая мождельвзаимодействия между компонентами, реализующими анализ на различных уровнях:Каждый компонент предоставляет следующему уровню результаты своегоанализа постепенно, по мере их получения не дожидаясь окончания обработкивсего документа или предложения; Соответственно, информацию отпредыдущего уровня компонент также получает постепенно и может возникатьситуация в которой новой информации еще не поступило;Компонент передает на следующий уровень несколько наилучших вариантованализа на своем уровне, при этом в случае отсутствии информации отпредыдущего уровня компонент может продолжать передавать следующемууровню оставшиеся варианты для текущей порции данных;Компонент передает на предыдущий уровень информацию об оценкеполученных вариантов анализа, что позволяет скорректировать направлениеанализа на предыдущем этапе.Таким образом в системе CAFE во-первых достигается больший уровеньпараллелизма работы компонентов, а во-вторых существует обратная связь междуэтапами, которая помогает скорректировать получаемые результаты.LinguaStreamСистема LinguaStream [3] разработана в 2003 году и основывается наиспользовании декларативного описания процесса обработки, который может бытьпредставлен в виде графа.Приложение разабатывается путем выбора компонентов, каждый из которыхимеет набор параметров, входов и выходов и их соединении.
Платформа основана наиспользовании XML и может обрабатывать любой XML-файл, сохраняя егоизначальную структуру.В платформе используются декларативные механизмы описания процессаобработки.Система использует идею, согласно которой различные модели анализадополняют друг друга, и, соответственно, не отдает предпочтения какому-либо изних. Для обеспечения совместимости между различными компонентами используетсяунифицированное представление разметки и аннотаций в виде наборов признаков(feature sets).164Важным аспектом является возможность использования различныхминимальных единиц на различных этапах анализа. Когда какая-либо модель требуетналичия минимальной единицы анализа (например, лексемы), то эта единица можетбыть определна локально, только для соответствующего компонента.
Кроме того,каждый компонент отмечает какие элементы разметки он обрабатывает. Описанныевозможности позволяют определить различные точки зрения на обратываемыйдокумент для кажого этапа.Каждое приложение может быть переиспользовано в качестве компонента длясоздания более сложного процесса обработки.Помимо компонентов, выполняющих конкретные задачи обработки текста,платформа включает компоненты, представляющие различные формализмыреализации задач обработки, например:Унификационных грамматик (на базе Prolog);Преобразований с конечным числом состояний;Грамматик, основанных на ограничениях;Регулярных выражений.Learning Based JavaСистема Learning Based Java [23] представляет средства для интеграции иобучения различных статистических компонентов.В основе системы лежит представление задачи анализа текста в виде поисканабора выходных данных, максимизирующего некоторые оценочные функции и приэтом удовлетворяющего заданным ограничениям.Приложение в системе представляется как набор моделей, описывающихпризнаки, передаваемые на вход статистической модели.
В качестве примерарассмотрим простую модель, осуществляющую выделение в качестве признаковмножества слов новостной статьи:/** 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(); }165В приложении задается используемый компонент машинного обучения имодели, признаки из которых используются для обучения и распознавания объектов:/** Here, we train averaged Perceptron for many* rounds of the training data.
**/discrete NewsgroupClassifierAP(Post post) <learn NewsgroupLabelusing 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§ 5.5.Прочие системыCorelliСистема Corelli [30] была разработана в 1996 году и предназначена дляинтеграции распределенных лингвистических компонентов, реализованных наразличных языках.В системе используется модель данных проекта TIPSTER, при этом типпредставляемой информации не ограничивается. Для решения проблемсовместимости в системе предоставляется библиотека, осуществляющаяпреобразование данных.Система состоит из центрального сервера, реализованного на Java, которыйотвечает за хранение документов и сопутствующей лингвистической информации иразличных обрабатывающих компонентов, которые получают необходимые данныеот сервера документов.