АНАЛИЗ ТОНАЛЬНОСТИ ТЕКСТОВ С ИСПОЛЬЗОВАНИЕМ НЕЙРОСЕТЕВЫХ МОДЕЛЕЙ
|
ВВЕДЕНИЕ 4
1. ПОСТАНОВКА ЗАДАЧИ АНАЛИЗА ТОНАЛЬНОСТИ ТЕКСТОВ 7
1.1. Основные цели работы 7
1.2. Обзор существующих систем по анализу тональности текста 9
1.3. Существующие подходы 10
1.3.1 Методы, основанные на лексике 10
1.3.2 Методы машинного обучения 10
2. ПОДХОДЫ В РЕШЕНИИ ЗАДАЧИ ОПРЕДЕЛЕНИЯ ТОНАЛЬНОСТИ ТЕКСТОВ 11
2.1. Статистические методы 11
2.1.1 Bag of words (мешок слов) 11
2.1.2 n-grams (n - граммы) 12
2.1.2 TF-IDF 12
2.2 Векторные представления слов 13
2.2.1 Представление в виде One-hot вектора 13
2.2.2 Word2Vec 14
2.2.3 FastText 19
2.2.4 GloVe 21
3. КЛАССИФИКАТОРЫ В ЗАДАЧЕ ОПРЕДЕЛЕНИЯ ТОНАЛЬНОСТИ 24
3.1 Способы классификации документов с помощью word-embeddings 24
3.2 Классификаторы 25
3.2.1 Многослойный персептрон 25
3.2.2 K-NN (k-nearest neighbors algorithm) 25
3.2.3 Random Forest (Случайный лес) 26
3.2.4 Метод опорных векторов 28
3.2.5 Наивный Байесовский классификатор 29
3.3 Классификация документов методами глубинного обучения. СМ№ 31
3.3.1 СКЫ (Convolutional Neural Network) 31
3.3.2 RNN (Recurrent Neural Network) 35
3.3.3 LSTM
3.4 Программные инструменты 39
3.4.1 Web приложение 40
4. РЕЗУЛЬТАТЫ КЛАССИФИКАЦИИ 43
4.1 Метрики. Оценка классификации 43
4.2 Результаты классификации на наборе данных отзывов 45
4.3 Результаты классификации на наборе данных новостей 51
4.3 Результаты классификации на наборе данных твиттера 54
ЗАКЛЮЧЕНИЕ 57
СПИСОК ЛИТЕРАТУРЫ 59
ПРИЛОЖЕНИЕ 62
1. ПОСТАНОВКА ЗАДАЧИ АНАЛИЗА ТОНАЛЬНОСТИ ТЕКСТОВ 7
1.1. Основные цели работы 7
1.2. Обзор существующих систем по анализу тональности текста 9
1.3. Существующие подходы 10
1.3.1 Методы, основанные на лексике 10
1.3.2 Методы машинного обучения 10
2. ПОДХОДЫ В РЕШЕНИИ ЗАДАЧИ ОПРЕДЕЛЕНИЯ ТОНАЛЬНОСТИ ТЕКСТОВ 11
2.1. Статистические методы 11
2.1.1 Bag of words (мешок слов) 11
2.1.2 n-grams (n - граммы) 12
2.1.2 TF-IDF 12
2.2 Векторные представления слов 13
2.2.1 Представление в виде One-hot вектора 13
2.2.2 Word2Vec 14
2.2.3 FastText 19
2.2.4 GloVe 21
3. КЛАССИФИКАТОРЫ В ЗАДАЧЕ ОПРЕДЕЛЕНИЯ ТОНАЛЬНОСТИ 24
3.1 Способы классификации документов с помощью word-embeddings 24
3.2 Классификаторы 25
3.2.1 Многослойный персептрон 25
3.2.2 K-NN (k-nearest neighbors algorithm) 25
3.2.3 Random Forest (Случайный лес) 26
3.2.4 Метод опорных векторов 28
3.2.5 Наивный Байесовский классификатор 29
3.3 Классификация документов методами глубинного обучения. СМ№ 31
3.3.1 СКЫ (Convolutional Neural Network) 31
3.3.2 RNN (Recurrent Neural Network) 35
3.3.3 LSTM
3.4 Программные инструменты 39
3.4.1 Web приложение 40
4. РЕЗУЛЬТАТЫ КЛАССИФИКАЦИИ 43
4.1 Метрики. Оценка классификации 43
4.2 Результаты классификации на наборе данных отзывов 45
4.3 Результаты классификации на наборе данных новостей 51
4.3 Результаты классификации на наборе данных твиттера 54
ЗАКЛЮЧЕНИЕ 57
СПИСОК ЛИТЕРАТУРЫ 59
ПРИЛОЖЕНИЕ 62
Анализ тональности текста — класс методов в обработке естественного языка, предназначенный для автоматизированного распознавания в текстах эмоционально окрашенной лексики и эмоциональной оценки (положительной, негативной, нейтральной [1]. В данной работе анализ тональности рассматривается как частный случай классификации документов. Классификация документов — одна из задач информационного поиска, заключающаяся в отнесении документа к одной из нескольких категорий на основании содержания документа. [2] Определение анализа тональности текстов имеет важное практическое применение в различных направлениях человеческой деятельности: ведении бизнеса, определении политических и экономических стратегий. Мнение других людей всегда имело значение для человечества. В современном цифровом мире, где благодаря распространению и проникновению интернета, нам доступны мнения и мысли людей на различные аспекты человеческой жизни, товары, услуги. Анализ настроений или мнений в последнее время стал одним из наиболее популярных исследованных и обсуждаемых тем в Natural Language Processing (NLP), в основном благодаря таким сайтам, как Twitter.
Анализ тональности широко применяется в оценке качества выпускаемой продукции и услуг в социальных сетях, блогах, целевых сайтах. Понимание того, на сколько негативно или позитивно люди реагируют на произведенный товар или услугу, позволяет оценивать будущую успешность продаж на рынке, а также анализировать качество проведенных PR-компаний. Многим крупным производителям всегда необходимо понимать, как их бренд воспринимается потребителями. Можно проводить более глубокий анализ отзывов клиентов о компании и определять те аспекты продукта или услуг, которые нравятся клиентам и те, которые необходимо улучшить. Сделать это возможно осуществив категоризацию отзывов, а далее уже применять тоновый классификатор к каждой отдельной категории. Также есть примеры, когда анализ тональности позволял удерживать клиентов продолжать пользоваться услугами компании. Записи разговоров операторов call-центра компании методами машинного обучения преобразовывались в текст и в последствии сегментировался на конкретные продукты и услуги, а далее к ним применялся тоновый классификатор. Общая оценка настроения отслеживалась для каждого клиента через регулярные промежутки времени. Если настроение оставалось ниже порогового значения слишком долго или общий балл настроения для клиента был слишком низким, клиенту отправлялись текстовое сообщение с извинениями за недавние проблемы и предложения со специальными акциями.
Хедж-фонды полагаются на данные во всех направлениях при построении своих торговых моделей. Определение настроения на рынке позволяют строить эффективные торговые стратегии. Поскольку все экономические и политические новости в мире негативные или положительные влияют на цены нефть, валюту и акции компаний. Финансовые рынки в настоящее время более конкурентоспособны чем когда-либо. Наличие точной информации в вашем распоряжении имеет решающее значение для при осуществлении любой сделки. Тоновые классификаторы при наличии соответствующего API позволяют строить различные графики в реальном времени показывающие цену акций по сравнению с настроениями рынка, как положительными, так и отрицательными, для конкретной компании. Также анализ тональности активно можно использовать в определении настроения населения на различные проводимые правительством реформы. И оценивать мнение электората на того или иного кандидата в руководящую должность. Решение задачи анализа тональности позволяет строить точные рекомендательные системы. К примеру рейтинговая система оценок отзывов при выборе подходящего отеля является субъективной. При построении рекомендательной системы можно сегментировать отдельные элементы отзыва с дальнейшим применением оценки настроения, предлагая пользователю тот отель, который удовлетворяет аспектам наиболее важным для пользователя.
Таким образом, анализ тональности текстов мощнейший инструмент в руках бизнеса. Методы глубинного обучения и обработки естественного языка в решении задачи анализа тональности текстов позволяют бизнесу увеличивать свои продажи, выходить на лидирующие позиции на рынке, побеждая в конкурентной борьбе, а политическим организация строить свои стратегии основываясь на мнении электората.
Анализ тональности широко применяется в оценке качества выпускаемой продукции и услуг в социальных сетях, блогах, целевых сайтах. Понимание того, на сколько негативно или позитивно люди реагируют на произведенный товар или услугу, позволяет оценивать будущую успешность продаж на рынке, а также анализировать качество проведенных PR-компаний. Многим крупным производителям всегда необходимо понимать, как их бренд воспринимается потребителями. Можно проводить более глубокий анализ отзывов клиентов о компании и определять те аспекты продукта или услуг, которые нравятся клиентам и те, которые необходимо улучшить. Сделать это возможно осуществив категоризацию отзывов, а далее уже применять тоновый классификатор к каждой отдельной категории. Также есть примеры, когда анализ тональности позволял удерживать клиентов продолжать пользоваться услугами компании. Записи разговоров операторов call-центра компании методами машинного обучения преобразовывались в текст и в последствии сегментировался на конкретные продукты и услуги, а далее к ним применялся тоновый классификатор. Общая оценка настроения отслеживалась для каждого клиента через регулярные промежутки времени. Если настроение оставалось ниже порогового значения слишком долго или общий балл настроения для клиента был слишком низким, клиенту отправлялись текстовое сообщение с извинениями за недавние проблемы и предложения со специальными акциями.
Хедж-фонды полагаются на данные во всех направлениях при построении своих торговых моделей. Определение настроения на рынке позволяют строить эффективные торговые стратегии. Поскольку все экономические и политические новости в мире негативные или положительные влияют на цены нефть, валюту и акции компаний. Финансовые рынки в настоящее время более конкурентоспособны чем когда-либо. Наличие точной информации в вашем распоряжении имеет решающее значение для при осуществлении любой сделки. Тоновые классификаторы при наличии соответствующего API позволяют строить различные графики в реальном времени показывающие цену акций по сравнению с настроениями рынка, как положительными, так и отрицательными, для конкретной компании. Также анализ тональности активно можно использовать в определении настроения населения на различные проводимые правительством реформы. И оценивать мнение электората на того или иного кандидата в руководящую должность. Решение задачи анализа тональности позволяет строить точные рекомендательные системы. К примеру рейтинговая система оценок отзывов при выборе подходящего отеля является субъективной. При построении рекомендательной системы можно сегментировать отдельные элементы отзыва с дальнейшим применением оценки настроения, предлагая пользователю тот отель, который удовлетворяет аспектам наиболее важным для пользователя.
Таким образом, анализ тональности текстов мощнейший инструмент в руках бизнеса. Методы глубинного обучения и обработки естественного языка в решении задачи анализа тональности текстов позволяют бизнесу увеличивать свои продажи, выходить на лидирующие позиции на рынке, побеждая в конкурентной борьбе, а политическим организация строить свои стратегии основываясь на мнении электората.
В работе были рассмотрены методы решения задачи классификации документов. В частности, задача определения тональности текстов. Сравнивались стандартные статистические модели с современными моделями векторных представлений слов, таких как Word2Vec, FastText, Glove. Были получены векторные представления слов на различных русскоязычных корпусах. Были проверены свойства векторов на нахождение похожих слов по значению. В работе использовались 3 обучающие выборки: выборка отзывов на различные товары и услуги, выборка сообщений твиттера, выборка новостей. В задаче анализа тональности сравнивались различные виды классификаторов MLP (многослойная нейронная сеть), Random Forest (Случайный лес), NB (Наивный байесовский классификатор), KNN (метод к-ближних соседей), SVM (метод опорных векторов), CNN (сверточная нейронная сеть), LSTM (рекуррентная сеть с долгой краткосрочной памятью. До обучения классификаторов находились оптимальные способы предобработки данных, что влияло на качество классификации.
Результаты показали, что сверточная нейронная сеть со связкой Word2Vec показывает наилучшую точность (F1 -score) на средних по размеру датасетах. Близкий по точности результат дают так же FastText и Glove. Статистический метод TF-IDF так же дает хорошую точность в связке с методом опорных векторов SVM на всех наборах данных, используемых в работе. Таким образом, статистические методы не всегда уступают методам, основанным на векторном представлении слов. Заметим, что определение анализа тональности является по своей сути субъективной задачей. Классификаторы обучается в соответствии с интуицией пользователя, который эти данные разметил. Поэтому в задаче определения тональности текстов приемлемой точностью считается F1 -score больше 0.70. Превзойти такую точность в данной работе удалось на всех представленных обучающий выборках. Так же было разработано web приложение для автоматической классификации текстов по тональности в режиме реального времени. В нем были реализованы соответствующие API методы для интеграции с любыми сервисами. Данное API является свободным для использования любыми организациями. Приложение доступно с любых устройств доступных к сети интернет. Приложение доступно с любых устройств доступных к сети интернет.
Результаты показали, что сверточная нейронная сеть со связкой Word2Vec показывает наилучшую точность (F1 -score) на средних по размеру датасетах. Близкий по точности результат дают так же FastText и Glove. Статистический метод TF-IDF так же дает хорошую точность в связке с методом опорных векторов SVM на всех наборах данных, используемых в работе. Таким образом, статистические методы не всегда уступают методам, основанным на векторном представлении слов. Заметим, что определение анализа тональности является по своей сути субъективной задачей. Классификаторы обучается в соответствии с интуицией пользователя, который эти данные разметил. Поэтому в задаче определения тональности текстов приемлемой точностью считается F1 -score больше 0.70. Превзойти такую точность в данной работе удалось на всех представленных обучающий выборках. Так же было разработано web приложение для автоматической классификации текстов по тональности в режиме реального времени. В нем были реализованы соответствующие API методы для интеграции с любыми сервисами. Данное API является свободным для использования любыми организациями. Приложение доступно с любых устройств доступных к сети интернет. Приложение доступно с любых устройств доступных к сети интернет.



