Решетневские чтения. 2017
УДК 004.056
ЗАДАЧА АВТОМАТИЧЕСКОГО ОПРЕДЕЛЕНИЯ ТОНАЛЬНОСТИ ТЕКСТА НА ОСНОВЕ МАШИННОГО ОБУЧЕНИЯ
Т. И. Арабова1, М. А. Масюткина2*
Южный федеральный университет Инженерно-технологическая академия Институт компьютерных технологий и информационной безопасности Российская Федерация, 347922, г. Таганрог, ул. Чехова, 2 2Российский экономический университет имени Г. В. Плеханова Российская Федерация, 117997, г. Москва, Стремянный пер., 36 E-mail: [email protected]
Проведено исследование существующих подходов и методов в области анализа тональности текста и проектирование программной реализации анализа тональности текста на основе подхода, реализующего машинное обучение с учителем. Были исследованы основные способы предварительной обработки текста и организации вектора признаков, реализован алгоритм определения тональности текста на основе комбинации различных методов классификации, реализованных в рамках подхода машинного обучения с учителем.
Ключевые слова: анализ тональности, машинное обучение с учителем, наивный байесовский классификатор, метод опорных векторов, логистическая регрессия, стохастический градиентный спуск.
AUTOMATIC SENTIMENT DETECTION OF TEXT BASED ON MACHINE LEARNING
T. I. Arabova1, M. A. Masyutkina2*
institute of Computer Technologies and Information Security 2, Chekhov Str., Taganrog, 347922, Russian Federation
2Plekhanov Russian University of Economics 36, Stremyanny lane, Moscow, 117997, Russian Federation E-mail: [email protected]
The research investigates existing approaches and methods of sentiment analysis of the text and it creats the software implementation of sentiment analysis based on the approach that implements machine learning by a teacher. More than that, the basic methods ofpreliminary processing of the text and organization of the vector of characteristics are studied. Algorithm to determine the tonality of the text based on various classification methods is presented, which is implemented within the framework of the machine learning approach by a teacher.
Keywords: sentiment analysis, machine learning with machines, logistic regression, stochastic gradient descent.
Введение. Основной причиной деятельности по сбору информации всегда было желание выяснить, что думают другие люди. Благодаря возросшей доступности и популярности источников, позволяющих открыто выражать свое мнение, таких как персональные блоги и форумы различных сайтов, возрастают и возможности человека, использующего информационные технологии, в исследовании и понимании мнения других.
Анализ мнений это выполнение нескольких задач: оценка субъективности отношения автора к объекту, описанному в тексте; классификации отношения автора к субъекту. Последняя известна как задача анализа тональности текста, и чрезвычайно важна при анализе мнений.
Известно, что суть исследований в предметной области - вычислительная обработка мнения, тональности и субъективности в тексте. Такие исследования известны также как opinion mining («поиск мнений») [1], sentiment analysis («анализ тональности») [2] и
the teacher, the naïve Bayes classifier, support vector
subjectivity analysis(«анализ субъективности») [3; 4], «review mining» (поиск обзоров) и «appraisal extraction» (оценка извлечения).
Под анализом тональности текста будем понимать класс методов автоматической контент-обработки текста, с целью выявления эмоционально окрашенной лексики и ее последующего анализа. Тональность -эмоциональное отношение автора к некоторому объекту, выраженному в тексте (атрибуту, событию, процессу и т. п.). Эмоциональная составляющая, выраженная на уровне лексемы, называется лексическим сентиментом [3].
Задача идентификации объективности текста чаще всего более сложна, чем определение полярности. Нередко объективный текст может содержать в себе субъективные выдержки, например, цитаты. Результаты зависят от определения субъективности в рамках аннотации текстов [4], при этом удаление из текста объективной информации позволяет улучшить точность результатов [3].
Методы и средства защиты информации
3620
original Maive Bayes Algo accuracy percent: 71.90332326233933 Original Naive Bayes Algo accuracy percent: 30.16129032253064
Host Informative Features Host Informative Features
мощный = True pos neg 17 2 1.0 = True pos : neg 24.9 1 0
годы = True pos neg 13 1 1.0 - = True neg : pos 15.7 1 0
движущихся = True pos neg 13 1 1.0 удивительно = True pos : neg 10.7 1 0
освежающе = True pos neg 13 1 1.0 лучших = True pos : neg 9.9 1 0
мастерски = True pos neg 12 5 1.0 эту = True neg : pos = 9.0 1 0
нежный = True pos neg 12 5 1.0 сказка = True pos : neg 7.S 1 0
прекрасный - True pos neg 12 5 1.0 возраста = True pos : neg 7.3 1 0
ведевр = True pos neg 12 0 1.0 взгляд = True pos : neg 6.9 1 0
замечательный = True pos neg 12 0 1.0 использует = True pos : neg 6.9 1 0
восхитительный = True pos neg 11 4 1.0 действие = True neg : pos = 6.9 1 0
заглянуть = True pos neg 11 4 1.0 обеспечивает = True pos : neg 6.2 1 0
нашей = True pos neg 11 4 1.0 веселый = True pos : neg 6.1 1 0
портрет = True pos neg 10 4 1.0 опьт = True pos : neg 6.1 1 0
культуры = True pos neg 9 Б 1.0 драьы = True pos : neg 6.1 1 0
хитрый = True pos neg 9 6 1.0 сладкий = True pos : neg 6.1 1 0
HIB classifier accuracy percent: 63.3321752265361 HNE_classifier accuracy percent 65.64516129032259
BernoulliHB classifier accuracy percent: 73.41339723696676 3ernoulliriB_classifier accuracy percent: 79 6774193543337
LogisticRegrés sion classifier accuracy percent: 66.46525679753303 LogisticRegression_classifier accuracy percent: 63 33709677419355
Linearsvc classifier accuracy percent: 66.46525679753363 Linear5VC_classifier accuracy percent: 72.41935433370963
MMTlassifier accuracy percent: 51.66163141993953 56DClassifier accuracy percent: 70.3677419354S3S7
[Finished in 2064.6s] [Finished in 346.OSJ
а б
Результаты обучения программы
Для технической реализации анализа тональности в работе использовано машинное обучение с учителем. Реализуется оно по следующему алгоритму: сбор коллекции документов, необходимых для обучения классификатора; представление каждого документа в виде вектора признаков; определение для каждого документа типа тональности для обучения классификатора; обучение классификатора по выбранному алгоритму классификации; использование модели для анализа [2].
В качестве средства классификации был выбран наивный байесовский классификатор, функция логистической регрессии, стохастический градиентный спуск и метод опорных векторов. Логистическая регрессия - это статистическая модель, используемая для предсказания вероятности возникновения некоторого события путём подгонки данных к логистической кривой. Достоинством является то, что на выходе для каждого объекта мы имеем вероятность принадлежности классу.
Тестирование программы было произведено на машине со следующими характеристиками: ОП - 4 Гб, ЦП - 1,6 ГГц. В качестве источника данных обучающей выборки использовалась платформа микробло-гинга Twitter [5]. Для разделения на два класса (положительные и отрицательные) выборка была обработана в соответствии со следующими критериями: были удалены все твиты, содержащие одновременно и положительные и отрицательные выражения; удалены одинаковые посты из тестовой выборки; удалены малоинформативные твиты длиной менее 40 символов. Предварительно удалены лишние (несмысловые) знаки.
В результате выполнения обучения получены данные от пяти классификаторов. Точность на них варьируется в пределах 51-73 %. Точность результатов работы программы и скорость ее обучения напрямую зависят от объема обучающей выборки. Если выборка мала, то классификаторы недостаточно хорошо обучатся. Вывод обучения программы на выборке нормальной длины представлен на рисунке, а. Можно проследить зависимость скорости обучения от объема обучающей выборки. На рисунке, б приведен резуль-
тат обучения на выборке, составляющей две трети от ее нормального объема, обучение длилось 846 с.
Проанализировав результаты, можно прийти к выводу, что не только от объема обучающей выборки зависит результат работы программы, но и от того, какой конкретно текст мы вводим для тестирования. Некоторые слова вполне естественно могут повторяться как в положительной, так и в отрицательной обучающих выборках, отсюда и якобы «верный результат» при тестировании на одной трети обучающего корпуса.
Таким образом, с помощью простого алгоритма на основе машинного обучения с учителем решается задача анализа тональности текста. Точность анализа определяется набором средств классификации и полнотой обучающей выборки. Созданные векторы слов могут использоваться при решении любых задач в области обработки естественного языка, в том числе для определения общего настроения группы людей.
Библиографические ссылки
1. Dave K., Lawrence S., Pennock D. Mining the peanut gallery: Opinion extraction and semantic classification of product reviews Proceedings of WWW. 2003. Р. 519-528.
2. Nasukawa T., Yi J. Sentiment analysis: Capturing favorability using natural language processing Proceedings of the Conference on Knowledge Capture (K-CAP). 2003.
3. Pang B., Lee L. Opinion mining and sentiment analysis Foundations and Trends in Information Retrieval. 2008. № 1-2. P. 1-135. Available at: http:// www.cs.cornell.edu/home/llee/omsa/omsa.pdf (accessed: 11.02.2017).
4. Yu H., Hatzivassiloglou V. Towards answering opinion questions: Separating facts from opinions and identifying the polarity of opinion sentences Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP). 2003.
5. Рубцова Ю. В. Построение корпуса текстов для настройки тонового классификатора Программные продукты и системы. 015. № 1(109). С. 72-78.
PewemHeecKye umeHUH. 2017
References
1. Dave K., Lawrence S., Pennock D. Mining the peanut gallery: Opinion extraction and semantic classification of product reviews Proceedings of WWW. 2003. P. 519-528.
2. Nasukawa T., Yi J. Sentiment analysis: Capturing favorability using natural language processing Proceedings of the Conference on Knowledge Capture (K-CAP). 2003.
3. Pang B., Lee L. Opinion mining and sentiment analysis Foundations and Trends in Information Retrieval. 2008. № 1-2. P. 1-135. Available at:
http://www.cs.cornell.edu/home/llee/omsa/omsa.pdf (accessed: 11.02.2017).
4. Yu H., Hatzivassiloglou V. Towards answering opinion questions: Separating facts from opinions and identifying the polarity of opinion sentences Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP). 2003.
5. Rubtsova Yu. V. Postroenie korpusa tekstov dlya nastroyki tonovogo klassifikatora Programmnye produkty i sistemy. [Constructing a corpus for sentiment classification training]. 2015. № 1 (109). P. 72-78.
© Apa6oBa T. H., MacroTKHHa M. A., 2017