Главная
Онлайн-демонстрация
Проекты
Другие системы
Скачать
Функционал
Выделение именованных сущностей из неструктурированных текстов (Named Entity Recognition) и другие процедуры обработки. Типы сущностей: персоны, организации, даты, страны, указы и др. (см. здесь). Выделение сущностей основаны на правилах. Некоторые типы сущностей могут отождествляться с записями внешних словарей, если таковые есть (например, готовыми списками сотрудников или организаций). Языки: русский и украинский, с версии 2.58 производится настройка на английский.
Предназначение
Это SDK для информационных систем, имеющих дело с неструктурированными данными - текстами на естественном языке. Удобно для использования в системах, разрабатываемых на .NET. Для Mac и Linux-систем работает на платформе Mono. Пример реализации TCP-сервера для интеграции с внешними системами см. в демо-проекте).
Опыт показал, что для решения большинства практических задач достаточно морфологического анализа и некоторых вспомогательных возможностей типа выделения именных групп, анализа концов предложений и кавычек, анализа различных числовых представлений и пр. Это всё есть в SDK Pullenti.
Развитие
С версии 2.58 осуществляется настройка на английский язык.
С версии 2.38 проводятся работы по выделению фактов и связей между сущностями на основе семантического анализа (в связи с невостребованностью работы здесь приостановлены).
С версии 2.24 проводятся работы по реализации полноценного семантического анализа, строящего семантическую сеть на основе синтаксического анализа всего текста. Online-демонстрация содержит этот вариант, однако следует иметь в виду, что здесь мы только в начале пути (на самом деле эта возможность пока не была востребована, поэтому работы приостановлены в этом направлении)
Соревнование
В рамках конференции Диалог-2016 мы участвовали в соревновании FactRuEval с другими системами в 2-х дорожках (4 модификации). Участие анонимное, мы были под псевдонимом Pink. На дорожках T1, T2 и T2_m Pullenti занял 1-е место, на T1_l - второе. Подробности здесь.
Открытость
На текущем этапе своего развития система не позволяет сторонним разработчикам создавать собственные модули. Разработка новых модулей осуществляется силами команды разработчиков. Однако несложно выйти на уровень полной открытости при наличии заинтересованности и спонсорской поддержки. Пока сторонние разработчики могут на уровне API загружать свои внешние сущности, если таковые есть.
Лицензионная политика
Система бесплатна для некоммерческого использования (скачать). Для коммерческого использования покупается необходимая комплектация SDK без ограничений на число конечных пользователей и инсталляций. .
Демонстрация
Вы можете попробовать работоспособность в online-режиме: 1) выделение сущностей 2) семантический анализ 3) анализ структуры НПА и договоров 4) анализ заголовков статей, научных работ и т.п. (попробовать)
Контакты
Почта: k.smith@mail.ru
Скайп: konstantin.smith
Реализация
SDK написано на C# .NET и представляет собой набор сборок .NET Framework (2.0 и выше). Модули сторонних разработчиков не используются.
При необходимости можно оформить в виде сервиса по стандарту обработки неструктурированной информации UIMA (Unstructured Information Management Architecture). Планируются работы по автоматическому переводу проектов C# на Java. Для интеграции с внешними информационными системами можно реализовать кросплатформенный TCP-сервер, пример такой реализации находится в проекте EP.DemoServer из (DemoNer.sln)
Особенности
При разработке большое внимание уделено качеству атрибутов выделяемых сущностей и их падежной нормализации. Упор сделан на русский язык, многие сущности выделяются и на украинском языке. Сейчас работы ведутся над настройкой на английский язык. Система постоянно совершенствуется на реальных данных, текущая версия:
Скорость работы
Очень примерная оценка: 60.000-80.000 знаков в секунду на компьютере типовой комплектации.
Максимальный объём текста на 32-разрядном компьютере, обрабатываемого за один раз: не более 20Мб. На 64-разрядном - зависит от объёма ОП.
Морфология (POS Tagger)
Морфология реализована в сборке EP.Morphology.dll и может использоваться независимо от SDK.
Это POS-Tagger для русского, украинского и английского языков, примерная скорость работы: 2Мб в секунду.
Строит морфологические варианты и для неизвестных слов. Предлагает нормальную форму слова (лемму).
В этом году мы участвовали в конкурсе MorphRuEval, подробности здесь.
Извлечение текста из файлов
Структурно-текстовое представление - это промежуточное представление информации между плоским текстом и форматированным документом. Фактически это плоский текст с таблицами, списками, сносками, комментариями, гиперссылками и пр. Есть модуль на .NET, который переводит в него из разных форматов: DOC, DOCX, RTF, PDF, ODT, HTML, MHT и др. Подробности и online-демонстрацию см. doc2struct.
© Кузнецов К.И., 2013. All rights reserved.