Введение 3
Глава 1. Анализ тональности 3
1.1. Подходы к определению тональности текста 5
1.2. Социальная сеть Twitter как площадка мнений 5
1.3. Постановка задачи 6
Глава 2. Алгоритмы и модели 9
2.1. Последовательность действий, необходимая для написания программы
для анализа тональности твитов 9
2.2. Препроцессинг твитов 9
2.3. Методы классификации текста 11
2.3.1. Наивный байесовский классификатор 11
2.3.2. Модель логистической регрессии 14
2.3.3. Метод опорных векторов 15
2.4. Инструменты, используемые при разработке алгоритмов определения тональности текста 17
Глава 3. Процесс и результаты практического использования разработки 19
3.1. Точность и сравнение разработанных алгоритмов при разных типах
тренировочной выборки 19
3.2. Построение облака слов 22
3.3. Анализ тональности мирового события 23
3.4. Пользовательский интерфейс 36
Заключение 39
Список литературы 40
Приложение
С момента своего появления, социальные сети стали стремительно набирать популярность. Сегодня миллионы людей делятся впечатлениями об окружающем мире со своими знакомыми и друзьями. Благодаря повсеместному распространению беспроводных сетей и мобильного интернета, пользователи могут отправлять сообщения почти в любой удобный для них момент. Так, например, журналисты ведут текстовые репортажи с мест событий в реальном времени, туристы пишут о своих путешествиях из любой точки планеты.
По данным Twitter, на конец 2018 года среднее количество пользователей, которые ежедневно заходят в социальную сеть составляет 126 миллионов человек. Количество пользователей, которые посещают социальную сеть хотя бы один раз в месяц, оценивается в 321 миллионов человек.
Таким образом, сервисы с элементами социальных сетей можно характеризовать как крайне информативный открытый источник актуальной информации, а объемы генерируемых сообщений делают невозможным обработку этих данных человеческими силами. Одной из наиболее актуальных задач в области анализа текстовых сообщений в сайтах с элементами социальных сетей является задача распознавания эмоциональной окраски текста, которая позволяет извлечь из текстовой информации полярность мнения человека об объекте высказывания. Анализ тональности текстов применяется в следующих сферах:
• Рекомендательные системы - из отзывов о товарах или услугах выделяются основные характеристики (аспекты), а так же отношение автора к ним (полярность). Далее на основе полученного вектора признаков строится рекомендательная система.
• Выявление отношение клиента к товару либо услуге. Анализ пользовательских оценок по отзывам позволяет оперативно принимать решения
• Мониторинг общественных настроений. Многие сервисы предоставляют возможность публиковать сообщения с точным указанием геолокации, что позволяет анализировать эмоциональную окраску пользователей относительно конкретных географических объектов. Например, на основе данных из Twitter с сентября 2006 по август 2009 была построена статистическая карта настроений населения США, а так же были визуализированы графики изменения настроения в зависимости от времени суток либо дня недели.
• Предсказание результатов политических выборов по сообщениям в социальных сетях, в частности по текстам из Твиттера.
Исследования в области автоматического извлечения мнений проводятся и сейчас, так как на данный момент оптимальное решение для задачи анализа тональности не найдено. Ежегодно проводится множественно международных конференций, посвященных проблемам компьютерной лингвистики в целом и анализу тональности в частности. Например, The Association for Computational Linguistics, International Conference on Application of Information and Communication Technologies и International Conference on Applications of Natural Language to Information Systems. В России также проводят масштабные конференции с акцентом на обработку русскоязычных текстов: Международная конференция по компьютерной лингвистике «Диалог».
Работа состоит из следующих структурных блоков: в первой главе рассмотрены подходы к анализу тональности текста; второй раздел посвящен описанию алгоритмов, выбранных для анализа тональности в рамках данной работы, описана реализация программы. В заключительном разделе описаны процесс и результаты практического использования разработки.
В ходе исследования были разработаны алгоритмы анализа тональности текстов на основе наивного байесовского классификатора, модели логистической регрессии, метода опорных векторов. Данные алгоритмы являются алгоритмами бинарной классификации тональности твитов из социальной сети Twitter на основе встроенной обученной модели. Программное средство включает в себя пользовательский интерфейс, работая с которым, пользователь сможет указать тематику данных, которых он хочет проанализировать с помощью алгоритмов. Была осуществлена оценка эффективности разработанных алгоритмов, которое показало, что алгоритм определения тональности текста на основе метода опорных векторов оказался самым эффективным с точки зрения правильности предсказывания результатов. Также был проведен анализ тональности твитов по определенной тематике - конкурсу песни Евровидение в течение небольшого промежутка времени -
месяца.