Введение 4
Постановка задачи 6
Глава 1. Задача извлечения информации 7
1.1. Описание предметной области 7
1.2. Основные определения IE 9
1.3. Используемые методах извлечения информации 10
1.3.1. Named entity recognition 10
1.3.2. Coreference resolution 10
1.3.3. Relationship extraction 11
1.4. Подходы к извлечению информации 11
1.5. Архитектура системы IE 13
1.6. Оценка эффективности 16
1.7. Выводы 18
Глава 2. Обзор существующих решений 19
2.1. Развитие задачи IE 19
2.2. Проблематика многоязыковых систем 21
2.3. Существующие системы и модули IE 22
2.4. GATE 23
2.5. Apache OpenNLP 24
2.6. DBpedia 25
2.7. Stanford CoreNLP 26
2.8. Томита-парсер 27
2.9. Выводы 29
Глава 3. Обработка естественного языка 31
3.1. Развитие задачи NLP 31
3.2. Проблематика обработки естественного языка 33
3.3. Общие этапы обработки текста 35
3.4. Токенизация и сегментация 36
3.5. Морфологический анализ 38
3.6. Синтаксический анализ 39
3.7. Семантический и прагматический анализ 40
3.8. Выводы 41
Глава 4. Методы машинного обучения 42
4.1. Задача классификации 42
4.2. Задача кластеризации 43
4.3. ML в задаче извлечения информации 45
4.4. Выводы 46
Глава 5. Реализация автоматизированной системы 47
5.1. Условия 47
5.2. Архитектура системах 48
5.3. Модуль Input Data Aggregation 49
5.4. Модуль Event Extraction 50
5.5. Модуль Tomita Results Post Processing 54
5.6. Модуль Lemmatisation 55
5.7. Модуль World News Determination 56
5.8. Оценка эффективности 57
Выводы 59
Заключение 60
Список литературы 61
Приложение 1 63
Приложение 2 64
Приложение 3 65
Приложение 4 68
Приложение 5 71
Приложение 6 73
Приложение 7 76
Приложение 8 78
В связи со стремительным развитием сети Интернет объемы информации, получаемые конечными пользователями, значительно возрастают. Развитие сети повлекло за собой увеличение количества новостных интернет- агентств, которые заменили традиционные средства информации. Однако, из-за отсутствия структуры и неоднородности источников информации доступ к этому огромному набору текстов ограничивается просмотром, поиском и чтением статей. Большое число источников информации, а также их объем, привели к необходимости быстрого анализа и обработки новостного потока. Одной из задач, которая требует решения, является предоставление пользователю информации о конкретном событии или же личности из различных источников новостей. Для того, чтобы конечный пользователь имел возможность сформировать наиболее полное представление о происходящем событии с учетом различных точек зрения.
Одним из решений требуемой задачи является интеллектуальный анализ текста (англ, text mining, ТМ) [1]. Его целью является получение разного рода информации из набора текстовых документов с помощью методов машинного обучения (англ, machine learning, ML).К типичным задачам анализа текста относятся: категоризация текстовых документов, кластеризация текстовых документов, извлечение информации из текста, информационный поиск.
Извлечение информации (англ, information extraction, IE)определяется как процесс выборочного структурирования и объединения данных, которые указаны явно в одном или нескольких документах на естественном языке (англ, natural language).Другими словами, задача IE заключается в получении структурированной фактической информации из неструктурированной.
Большое количество знаний и информации, хранится в текстовых документах. Чаще всего эти тексты доступны только в неструктурированном представлении, так как они создаются и интерпретируются людьми. Для того, чтобы воспользоваться преимуществами этого огромного количества скрытой информации, и включить ее в аналитические процессы, необходимо преобразовать информацию в структурированное представление. IE решает именно эту задачу. Система IE пытается идентифицировать четко определенные объекты и отношения в неструктурированных данных, особенно в текстовых документах.
Помимо извлечения и идентификации имен и сущностей, извлечение отношений и событий является основной задачей IE. События - это реальные процессы, которые разворачиваются во времени и пространстве и, как правило, связанных с определенным изменением состояния. Формально задача извлечения событий состоит в том, чтобы автоматически идентифицировать события в свободном тексте и получить подробную информацию о них. Идеальная система извлечения событий отвечает на вопрос: кто и что сделал? Из-за сложности и неоднозначности естественного языка извлечение событий является нетривиальной задачей.
В ходе работы построена автоматизированная система, позволяющая исследовать русскоязычные новости на предмет их масштаба. Показана эффективности предлагаемого подхода и его практическая применимость.
Заметим, что работа построена на исследовании русскоязычных новостей, но предложенный подход применим и для новостей на произвольном языке. Также, при исследовании новостей из некоторой конкретной области (например, спорт) можно достичь более высоких показателей точности и полноты.
Все вышеперечисленное может стать предметом дальнейших изучений.
[1] Барсегян А. Анализ данных и процессов. 3 изд. БХВ-Петербург, 2009. 512 с.
[2] Kliigl Р. Context-specific Consistencies in Information Extraction: Rule¬based and Probabilistic Approaches. BoD - Books on Demand, 2015. 208 c.
[3] Piskorski J., Yangarber R. Information Extraction: Past, Present and Future. // Poibeau T., Saggion H., Piskorski J., Yangarber R. Multi-source, Multilingual Information Extraction and Summarization. Theory and Applications of Natural Language Processing. Springer, Berlin, Heidelberg, 2013.
[4] Большакова Е.И., Воронцов К.В., Ефремова Н.Э., Клышинский Э.С., Лукашевич Н.В., Сапин А.С. Автоматическая обработка текстов на естественном языке и анализ данных: учеб, пособие. М.: Изд-во НИУ ВШЭ, 2017. 269 с.
[5] Извлечение объектов и фактов из текстов в Яндексе. Лекция для Малого ШАДа. https://habr.com/company/yandex/blog/205198/
[6] Wimalasuriya D., Don D. Ontology-based information extraction: An introduction and a survey of current approaches // Journal of Information Science, 2010. Vol.36, No 3, P. 306-323.
[7] Википедия — свободная энциклопедия, https://ru.wikipedia.org/
[8] Siefkes C., Siniakov P. An Overview and Classification of Adaptive Approaches to Information Extraction. // Journal on Data Semantics IV, 2005. Vol. 3730, P. 172-212.
[9] SAIC Information Extraction.
https://www-nlpir.nist.gov/related_projects/muc/
[10] Grishman R., Sundheim B. Message Understanding Conference-6: a brief history // Proceedings of COLING-1996, 1996. P. 466-471.
[11] Doddington G., Mitchell A., Przybocki M., Ramshaw L., Strassel S., Weischedel R. The Automatic Content Extraction (ACE) Program-Tasks, Data, and Evaluation. // Proceedings of the 7th Language Resources and Evaluation Conference, 2004.
[12] ACE. Linguistic Data Consortium.
https: / / www.ldc.upenn.edu/ collaborations / past-projects / ace
[13] Диалог. Конференция по компьютерной лингвистике.
http://www.dialog-21.ru/
[14] General Architecture for Text Engineering https://gate.ac.uk/
[15] Apache OpenNLP. https://opennlp.apache.org/index.html
[16] DBpedia. http://wiki.dbpedia.org/
[17] The Stanford Natural Language Processing Group.
https://nlp.stanford.edu/software/openie.html
[18] Stanford CoreNLP - Natural language software.
https: / / stanfordnlp.github.io/CoreNLP /
[19] MAchine Learning for LanguagE Toolkit, http://mallet.cs.umass.edu/
[20] Томита-парсер - Технологии Яндекса, https://tech.yandex.ru/tomita/
[21] PullEnti - SDK извлечение именованных сущностей из неструктурированных текстов (Puller of Entities), http://www.pullenti.ru/
[22] DBpedia Version 2014 released, http://blog.dbpedia.org/2014/09/09/dbpedia- version-2014-released/
[23] Твюринг А. Может ли машина мыслить? М.: ГИФМЛ, 1960. ПО с.
[24] Alan Turing. https://news.harvard.edu/gazette/story/2012/09/alan- turing-at-ЮО/
[25] Jurafsky D., Martin J., Norvig P., Russell S. Speech and Language Processing. Second Edition. Pearson Education, 2014. 1024 c.
[26] Jones K.S. Natural Language Processing: A Historical Review. // Current Issues in Computational Linguistics: In Honour of Don Walker, 1994. Vol 9.
[27] IBM Watson, https://www.ibm.com/watson/
[28] Manning C., Raghavan P., Schiitze H. Introduction to Information Retrieval. Cambridge University Press, 2008.
[29] Боярский К. К. Введение в компьютерную лингвистику: учеб, пособие. СПб: НИУ ИТМО, 2013. 72 с.
[30] API Переводчика — Технологии Яндекса.
https: / / tech.yandex.ru/ translate /
[31] Thesaurus, https://thesaurus.altervista.org/
[32] LemmaGenerator: Generator of rule-based lemmatizers
(based on examples) for serveral European languages.
https: / / github.com/ AlexPoint/LemmaGenerator