ГЛОССАРИЙ 3
ВВЕДЕНИЕ 4
1. ОБЗОР МЕТОДОВ АНАЛИЗА ТОНАЛЬНОСТИ 6
1.1 Подходы к анализу тональности на основе моделей глубокого обучения 7
1.1.1 Рекуррентные нейронные сети 7
1.1.2 Сверточные нейронные сети 12
1.2 Векторные представления слов 15
1.2.1 Word2Vec 16
1.2.2 GloVe 19
1.2.3 ELMo 20
1.3 Признаки тональности, используемые для классификации текстов 22
1.4 Метрики качества классифицирующей модели 24
2. ПРОЦЕСС РАЗРАБОТКИ КЛАССИФИКАТОРОВ 27
2.1 Выбор данных для обучения и тестирования 27
2.2 Инструменты для разработки 28
2.3 Предобработка данных 29
2.3 Разработка моделей 30
3. РЕЗУЛЬТАТЫ ЭКСПЕРИМЕНТОВ 34
ЗАКЛЮЧЕНИЕ 39
СПИСОК ЛИТЕРАТУРЫ
На сегодняшний день среди интернет ресурсов имеет большую популярность такая разновидность блогинга как микроблогинг, использующая концепцию коротких постов (100-200 слов). На популярных веб-сайтах, предоставляющих услуги микроблогинга (Twitter, Tumblr и Facebook), ежедневно появляются миллионы новых сообщений. Авторы этих сообщений пишут о своей жизни, обмениваются мнениями по различным темам и обсуждают актуальные проблемы. Поскольку пользователи часто высказываются о продуктах и услугах, которые они используют или же выражают свои политические и религиозные взгляды, веб-сайты микроблогов становятся ценными источниками мнений и настроений. Такие данные могут быть эффективно использованы для маркетинга или социальных исследований. Например, производственные компании могут быть заинтересованы в следующих вопросах:
• Какие ключевые аспекты продукта пользователи обсуждают?
• Насколько положительно или отрицательно люди относятся к нашему продукту?
• Какие функции продуктов пользователи хотят улучшить?
Политические партии могут быть заинтересованы в том, поддерживают
ли люди их программу [1, 2]. Общественные организации могут узнать мнение людей о текущих дебатах.
Чтобы извлечь такую информацию необходимо анализировать внушительные объёмы текстовых данных. Решению этой проблемы посвящен специальный раздел компьютерной лингвистики - автоматический анализ тональности текста (sentiment analysis или opinion mining) [3].
Несмотря на множество решений данной проблемы, все они не идеальны и не обладают совершенной точностью в силу специфических особенностей текстовых сообщений в микроблогах: такие сообщения ограничены по длине, обычно охватывают одно предложение или меньше, а также содержат опечатки, сленг, эмотиконы и сокращенные формы слов.
Целью данной работы является разработка эффективного классификатора тональности коротких сообщений, опубликованных в сети Интернет, на основе современных методов глубокого обучения с учителем.
В связи с поставленной целью были поставлены следующие задачи:
• Провести обзор современных архитектур нейронных сетей (рекуррентные и сверточные нейронные сети) и эффективных методов обработки естественного языка (модели векторного представления слов, методы подсчета признаков на основе словарей тональности), применяемых для решения задачи классификации тональности.
• Выбрать программные средства для разработки и тестирования моделей классификации, спроектировать архитектуру системы.
• Разработать модели глубокого обучения на основе рассмотренных методов.
• Оценить качество моделей с различной конфигурацией на коллекции коротких сообщений социальной сети Твиттер и выбрать среди них наилучшую.
Объектом исследования является анализ тональности текстов на естественном языке.
Предметом исследования является классификатор на основе методов автоматического анализа тональности текста.
В ходе данной работы были выполнены следующие задачи:
• Были рассмотрены архитектуры рекуррентных и сверточных нейронных сетей, в том числе была рассмотрена разновидность ячейки рекуррентных нейронных сетей LSTM.
• Были рассмотрены методы векторного представления слов Word2Vec, GloVE и ELMo.
• Был рассмотрен метод классификации тональности на основе словарей тональности, построенных вручную и автоматически.
• На основе рассмотренных методов и выбранных инструментов разработки были построены модели классификации тональности различной архитектуры.
• Разработанные модели были апробированы на данных соревнования по семантическому анализу SemEval 2017 для задачи анализа тональности сообщений социальной сети Твиттер и сравнены с лучшими моделями данного соревнования.
По результатам экспериментов с имеющимися моделями была выявлена модель, обладающая наилучшими показателями - модель на основе нескольких сверточных слоев и модели векторного слов ELMo, для которой были получены оценки качества, превосходящие оценки моделей соревнования SemEval.
Таким образом цель данной работы была достигнута.
1. Mohammad S. et al. Semeval-2016 task 6: Detecting stance in tweets 11 Proceedings of the 10th International Workshop on Semantic Evaluation (SemEval-2016). - 2016. -P. 31-41.
2. Krejzl P, Steinberger J. UWB at SemEval-2016 task 6: stance detection // Proceedings of the 10th International Workshop on Semantic Evaluation (SemEval-2016). -2016. -P. 408-412.
3. Liu B. et al. Sentiment Analysis and Subjectivity // Handbook of natural language processing. - 2010. - T. 2. - №. 2010. - P. 627-666.
4. SemEval-2017 task 4: Sentiment analysis in Twitter. // Proceedings of the 11th International Workshop on Semantic Evaluations (SemEval-2017). - 2017, P. 502-518
5. Kiritchenko S., Zhu X., Mohammad S. M. Sentiment analysis of short informal texts // Journal of Artificial Intelligence Research. - 2014. - T. 50. - P. 723-762.
6. Плетнева M.B. Программная система анализа тональности текстов на основе словарей оценочной лексики // Программная инженерия. — 2019. — Т. 10. -№ 1.-С. 38-46.
7. Liu В. Sentiment analysis and opinion mining // Synthesis lectures on human language technologies. -2012. -T. 5. -№. 1. -P. 1-167.
8. Symeonidis S., Effrosynidis D., Arampatzis A. A comparative evaluation of pre-processing techniques and their interactions for twitter sentiment analysis // Expert Systems with Applications. - 2018. - T. 110. - P. 298-310.
9. Zhang L., Wang S., Liu B. Deep learning for sentiment analysis: A survey //Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery. -
2018.
10. Neethu M. S., Rajasree R. Sentiment analysis in twitter using machine learning techniques // 2013 Fourth International Conference on Computing, Communications and Networking Technologies (ICCCNT). - IEEE, 2013. - P. 1-5.
11. Explaining recurrent neural network predictions in sentiment analysis. // Proceedings of the 8th Workshop on Computational Approaches to Subjectivity, Sentiment and Social Media Analysis. - 2017 - P. 159-168
12. Yin W. et al. Comparative study of cnn and rnn for natural language processing 11 arXiv preprint arXiv: 1702.01923. - 2017.
13. Connor J. T., Martin R. D., Atlas L. E. Recurrent neural networks and robust time series prediction // IEEE transactions on neural networks. - 1994. - T. 5. - №. 2.-C. 240-254.
14. Hochreiter S. The vanishing gradient problem during learning recurrent neural nets and problem solutions //International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems. - 1998. - T. 6. - №. 02. - C. 107-116.
15. Gers F. A., Schmidhuber J., Cummins F. Learning to forget: Continual prediction with LSTM. // 9th International Conference on Artificial Neural Networks: ICANN '99. - 1999 - P. 850 - 855.
16.01ah C. Understanding LSTM Networks [Электронный ресурс] / Christopher Olah. - 2015. - Режим доступа:
https://colah.github.io/posts/2015-08-Understanding-LSTMs/. свободный. - Загл. с экрана.
17. Wang J. et al. Dimensional sentiment analysis using a regional CNN-LSTM model // Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers). - 2016. - T. 2. - C. 225-230.
18. A. Amidi, S. Amidi Convolutional Neural Networks Cheatsheet [Электронный ресурс] Afshine Amidi, Shervine Amidi. - 2018. - Режим доступа: http s: // Stanford. edu/~shervine/teachin g/cs-230/cheatsheet-convolutional-neural -networks, свободный. - Загл. с экрана.
19. Britz D. Understanding convolutional neural networks for NLP [Электронный
ресурс] / Denny Britz. - 2015. - Режим доступа:
http://www.wildml.com/2015/ll/understanding-convolutional-neural-networks -for-nlp/- свободный. - Загл. с экрана.
20. Kim Y. Convolutional neural networks for sentence classification // arXiv preprint arXiv: 1408.5882. - 2014.
21. Wang Y. et al. A comparison of word embeddings for the biomedical natural language processing // Journal of biomedical informatics. - 2018. - T. 87. - P. 12-20.
22. Word representations: A simple and general method for semi-supervised learning. // Proceedings of the 48th Annual Meeting of the Association for Computational Linguistics. - 2010 - P. 384-394.
23. Mikolov T. et al. Efficient estimation of word representations in vector space 11 arXiv preprint arXiv: 1301.3781.-2013.
24. Qano E. Text-based sentiment analysis and music emotion recognition 11 arXiv preprint arXiv:1810.03031. - 2018.
25. Pennington J., Socher R., Manning C. Glove: Global vectors for word representation // Proceedings of the 2014 conference on empirical methods in natural language processing (EMNLP). - 2014. - P. 1532-1543.
26. Peters M. et al. Deep Contextualized Word Representations // Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long Papers). - 2018. - P. 2227-2237.
27. Devlin J. et al. Bert: Pre-training of deep bidirectional transformers for language understanding // arXiv preprint arXiv: 1810.04805. - 2018.
28. M. Eric Deep Contextualized Word Representations with ELMo [Электронный ресурс] / Mihail Eric. - 2015. - Режим доступа: https://www.mihaileric.com/posts/deep-contextualized-word-representations-el то/, свободный. - Загл. с экрана.
29. Смирнова О. С., Петров А. И., Бабийчук Е. А. Основные методы анализа, используемые при исследовании социальных сетей // Современные информационные технологии и ИТ-образование. - 2016. - Т. 12. - №. 3-1.
30. Go A., Bhayani R., Huang L. Twitter sentiment classification using distant supervision // CS224N Project Report, Stanford. - 2009.
31. Wilson T., Wiebe J., Hoffmann P. Recognizing contextual polarity in phrase-level sentiment analysis // Proceedings of Human Language Technology Conference and Conference on Empirical Methods in Natural Language Processing. - 2005.
32. Mohammad S. M., Turney P. D. Crowdsourcing a word-emotion association lexicon // Computational Intelligence. - 2013. - T. 29. - №. 3. - P. 436-465.
33. Hu M., Liu B. Mining and summarizing customer reviews // Proceedings of the tenth ACM SIGKDD international conference on Knowledge discovery and data mining. - ACM, 2004. - P. 168-177.
34. Potts C. Sentiment Symposium Tutorial: Linguistic structure // Sentiment Analysis Symposium held at San Francisco. - 201L
35. Baziotis C., Pelekis N., Doulkeridis C. Datastories at semeval-2017 task 4: Deep lstm with attention for message-level and topic-based sentiment analysis
// Proceedings of the 11th international workshop on semantic evaluation (SemEval-2017). -2017. -P. 747-754.
36. Napoles C. et al. Finding good conversations online: The Yahoo News annotated comments corpus // Proceedings of the 11th Linguistic Annotation Workshop. -2017. -P 13-23.