Когнитивные технологии исследования информационных массивов для восстановления неявных знаний и данных

Распознавание именованных сущностей – процесс, в ходе которого алгоритм принимает на вход часть текста (например, предложение или абзац) и определяет словосочетания (людей, локации, организации), которые упомянуты в данном тексте. На практике сущности в текстах часто упоминаются по-разному, есть различные виды кореференции, в том числе анафорическая и катафорическая. Алгоритмы разрешения кореференции используются для определения всех упоминаний одной и той же сущности и объединения их в один кластер.

Данные алгоритмы могут значительно упростить анализ документов и статей. Они могут использоваться для создания эффективных поисковых движков. Если для каждого запроса поисковый движок ищет все слова в миллионах документов, то процесс поиска может длиться очень долго. Однако если запустить алгоритм распознавания сущностей и выделить из каждого документа список сущностей, то поиск значительно ускорится. Поисковый запрос будет сравниваться только с небольшим списком сущностей, описанных в каждом документе, а не с каждым отдельным словом, что позволит заметно сократить время поиска.

Базы данных могут хранить миллионы различных документов и статей. Сотни статей могут иметь одну и ту же тему с небольшими изменениями, что осложняет поиск информации в таких базах. Фильтрация документов на основе тегов, созданных с использованием распознавания именованных сущностей и разрешения кореференции, помогает быстрее найти желаемую статью или документ.

Данные алгоритмы можно применять для улучшения работы рекомендательных систем путем рекомендации пользователям документов с упоминаниями похожих сущностей; для создания объектов или свойств объектов в онтологии некоторой области (в том числе нефтегазовой), классификации контента для СМИ на основе распознанных сущностей. Распознавание сущностей может являться частью эффективных систем взаимодействия с пользователями.

Алгоритмы могут использоваться в системах автоматической суммаризации текста – распознавание сущностей позволяет определить важные участки текста, которые должны быть включены в суммаризованный текст. Применение таких технологий в нефтегазовой отрасли особенно важно по двум причинам:

• Новые технологии, упомянутые в научных статьях, после применения на практике могут экономить сотни тысяч долларов ежедневно.

• Множество документов создаются в нефтегазовой отрасли ежедневно и требуют тщательного анализа.

Реализация распознавания именованных сущностей

Извлечение информации – группа задач, позволяющих по тексту на естественном языке в свободном формате получить некоторое структурированное представление информации, содержащейся в тексте [1].

Задача выделения именованных сущностей является одной из ключевых, так как позволяет узнать, о каких именно объектах идет речь в тексте.

Традиционные сети, например, многослойный персептрон, не имеют механизма памяти, дающего возможность решать задачу не с начала, а на основе некоторой предварительной информации. Рекуррентные сети обладают механизмом краткосрочной памяти, позволяющий сохранять предыдущую информацию в диапазоне небольшого окна. В примере с текстом для предсказания следующего слова с помощью рекуррентных сетей возможно учесть контекст одного предложения.

Например: Я родился во Франции и мой родной язык французский. В рамках предложения можно получить контекст местоположения и предсказать язык.

Другой пример: Я родился во Франции в 1905 г. Мои родители были из рабочей семьи. Мой родной язык – французский. В рамках контекста одного предложения трудно догадаться, что речь идет о Франции, таким образом, здесь необходимо хранить данные контекста о трех предложениях.

Для решения подобных задач хорошо подходит сеть долгосрочной памяти LSTM (Long Short Term Memory Neural Network), имеющая механизм краткосрочной и долгосрочной памяти.

Все рекуррентные сети имеют форму цепи повторяющихся модулей нейронной сети. В стандартной рекуррентной сети повторяющийся модуль будет иметь очень простую структуру, например, слой гиперболического тангенса. LSTM сети также имеют структуру цепи, но повторяющийся модуль выглядит несколько сложнее.

LSTM имеет возможность удалять или добавлять информацию в состояние ячейки, используя механизм ворот. В своей композиции они состоят из сигмоидных слоев, функции произведения и функций гиперболического тангенса.

Двунаправленные LSTM сети объединяют две независимые рекуррентные сети долгосрочной памяти. Входная последовательность данных передается в одну из сетей в прямом порядке временных промежутков, в то время как во вторую сеть передаются данные в обратном порядке временных промежутков.

Из примера с текстами следует, что, для предсказания некоторого слова имеется возможность смотреть слова в прошлом и будущем для учета контекста, что повышает точность распознавания именованных сущностей и цепочек упоминаний (кореференции).

Реализация разрешения кореференции

Алгоритм разрешения кореференции основан на нейронной сети и схож с распознаванием именованных сущностей в работах [2, 3]. Некоторые изменения были внесены для улучшения распознавания кореференции для русского языка. Для тренировки сети был использован набор данных «Диалог-2014». LSTM слои в сети были заменены на GRU слои, которые показывали несколько лучшие результаты на валидации вследствие небольшого числа параметров и небольшого размера набора данных. Векторы признаков word2vec модели skip-gram, морфологических признаков, а также частей речи были использованы в качестве векторного пространства. Извлеченный тэг именованной сущности добавлялся как дополнительный признак, помогающий сети найти упоминания среди других извлеченных сущностей.

Алгоритмы распознавания именованных сущностей и разрешения кореференции протестированы на данных, предварительно размеченных экспертами предметной области (взято случайным образом 10 % данных). Метрики качества были рассчитаны для каждого типа сущностей отдельно (включая начало и продолжение сущности, в случае если она состоит не из одного слова). Классы сущностей были не сбалансированы, так как множество слов не имеют тэга. В таблице представлена оценка качества распознавания сущностей на валидационной выборке. Оценка качества разрешения кореференции проводилась методом MUC, метриками являлись также Precision, Recall и F1.

Модели распознавания сущностей и разрешения кореференции были объединены в единый пайплайн, также включавший оптическое распознавание символов (OCR), предобработку текста и токенизацию (разбиение текста на токены). Был создан веб-сервис, состоявший из поисковой системы (на основе фреймворка ElasticSearch), а также модуля аналитики документов. Извлеченные из документов сущности использовались в ранжировании результатов поиска. В систему были загружены файлы, связанные с нефтегазовой отраслью: научные статьи и различные документы. Найденные документы могут быть проанализированы с помощью модуля аналитики: после анализа в них подсвечиваются сущности различных классов, а также указывается кореферирующие сущности. Созданы также рекомендательная система на основе иерархической кластеризации (для извлечения признаков из текста использовалась модель Doc2Vec) и наивный алгоритм связывания именованных сущностей (с помощью регулярных выражений). Данная рекомендательная система помогает пользователю быстро находить релевантные документы, схожие с исходным документом.

Модели распознавания сущностей активно используются в системах поиска информации, при автоматическом построении дерева онтологий и ранжировании поисковых запросов. Поиск и определение специфических слов, например, сущностей нефтяной отрасли помогает в расширении запроса. Используя запрос «Легкие фракции нефти», система может проводить поиск по всем фракциям, определенным и размеченным в документе. Географические запросы, «Отчеты Западная Сибирь» могут включать более точный географический запрос «Отчеты ХМАО» или еще более точный «Отчеты ХантыМансийск». Таким образом, при поиске информации нельзя быть точно уверенным, на каком уровне «точности» находится релевантная поисковому запросу информация, и использовать сразу всю информацию или проводить проверку по уровням. Поисковая система базируется на автоматически построенном дереве онтологий, использующем разметку текста. При выявлении важных сущностей из текста необходимо провести его правильную разметку, определить сущности и построить зависимости между всеми существенными элемента документов. Использование такой системы в поисковом механизме расширяет область поиска, одновременно повышая релевантность поисковой выдачи.

Класс

Оценка качества распознования сущностей

Precision

Recall

F1-score

Support

B- PER

0,85

0,86

0,86

711

I-PER

0,89

0,87

0,88

919

B- ORG

0,78

0,73

0,76

1056

I- ORG

0,81

0,80

0,81

1158

B- LOC

0,82

0,85

0,83

1257

I- LOC

0,75

0,78

0,76

529

B- PROD

0,71

0,61

0,66

1590

I-PROD

0,68

0,59

0,63

371

B- DATE

0,91

0,92

0,91

749

I-DATE

0,97

0,98

0,97

955

O

0,99

0,99

0,99

107519

Avg / total

0,97

0,97

0,97

116814


Примечания. 1. Класс: PER – person, ORG – organization, LOC – location, Date – date, PROD – product; B – начало сущности; I – продолжение сущности в тексте; O – не сущность. 2. Строка Avg / total отражает усредненные / суммарные значения. 3. Precision – точность определения сущности; Recall – полнота распознавания сущности; F1-score – гармоническое среднее точности и полноты; Support – общее число сущностей данного класса.

Рис. 1. Поля ввода параметров системы автоматического поиска аналогов


Рис. 2. Пример результата поиска аналогов на карте мира

Автоматическое выделение сущностей в тексте нашло практическое применение в системе определения аналогов месторождений. Данная система предоставляет возможность автоматического поиска аналогов месторождений на основе известных пользователю атрибутов (рис. 1).

Ключевым элементом этой системы является база данных месторождений, в которой каждое месторождение характеризуется большим количеством как числовых, так и текстовых атрибутов. Атрибуты разделены на несколько крупных категорий: общие данные, параметры ловушки, коллектора, данные о разработке и др. Число атрибутов в базе подобрано таким образом, что позволяет достаточно подробно описать месторождение с позиций геологии, петрофизики и разработки. В системе реализованы двуязычный интерфейс и сквозная система кодирования атрибутов. 

Источником информации для базы данных аналогов служат как проектно-техническая документация компании «Газпром нефть», так и открытые источники в виде неструктурированных баз данных, а также статей и публикаций на русском и английском языках. Очевидно, что на поиск необходимой информации и заполнение базы данных атрибутов один специалист и даже несколько специалистов должны затратить чрезвычайно много времени. Поэтому процесс сбора и систематизации информации лучше автоматизировать.

При таком сценарии применение автоматического распознавания именованных сущностей в проектных документах и открытых источниках позволяет обрабатывать большие объемы информации за очень короткое время. Всего с помощью системы в настоящее время изучено более 100 открытых баз данных, много статей и проектно-технических документов, которые позволили сформировать базу данных по более чем 1000 месторождений по всему миру (рис. 2).

Как указано выше, поиск аналогов система выполняет по значениям известных пользователю атрибутов. Система возвращает пользователю ранжированный по степени аналогии список аналогов и статистические наборы данных по найденным месторождениям-аналогам.

Таким образом, реализована система для эффективного поиска информации и анализа. Система включает модули распознавания сущностей и разрешения кореференции для улучшения анализа документов и повышения эффективности поиска. Создана рекомендательная система на основе иерархической кластеризации и связывания (линкинга) сущностей.

Список литературы/References

1. Maithilee L., Patawar M., Potey A., Approaches to Named Entity Recognition. A Survey, International Journal of Innovative Research in Computer and Communication Engineering, 2015, V 3, no. 12, pp. 12201–12208.

2. Lafferty J., McCallum A., Pereira F.C.N., Conditional random fields: Probabilistic models for segmenting and labeling sequence data, Proceeding ICML '01 / Proceedings of the Eighteenth International Conference on Machine Learning, 2001, pp. 282–289.

3. McCallum W.Li, Early results for Named Entity Recognition with conditional random fields, feature induction and web-enhanced lexicons, CONLL '03/Proceedings of the seventh conference on Natural language learning at HLT-NAACL 2003, 2003, V. 4.

4. Sha F., Pereira F., Shallow parsing with conditional random fields, Proceedings of HLT-NAACL 2003, pp. 213–220.

5. McDonald R.T., Pereira F.C.N., Online learning of approximate dependency parsing algorithms, Proceedings EACL 2006, 11st Conference of the European Chapter of the Association for Computational Linguistics, 3–7 April 2006.

6. Lample G., Ballesteros M., Subramanian S. et al., Neural architectures for Named Entity Recognition, Proceedings of the 2016 Conference of the North American Chapter of the Association for Computational Linguistics, Human Language Technologies, 2016, pp. 260–270.

7. Lee K., He L., Lewis M., Zettlemoyer L., End-to-end Neural Coreference Resolution, Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing, 2017, pp. 188–197.

8. Anh L.T., Arkhipov M.Y., Burtsev M.S., Application of a Hybrid Bi-LSTM-CRF model to task of Russian Named Entity Recognition, URL: https://arxiv.org/pdf/1709.09686.pdf