Сентимент анализ текста

Текст на естественном языке, помимо информации, может выражать эмоциональную оценку того, о чём сообщается. Например, такое предложение содержит отрицательную оценку происходящего:

(1) В 2012 году Армстронг по итогам расследования Американского антидопингового агентства был уличен в использовании запрещенных препаратов.

А такое — положительную:

(2) Apple получила окончательное разрешение на строительство нового кампуса.

Выраженная в тексте эмоциональная оценка называется тональностью или сентиментом (от англ. sentiment — чувство; мнение, настроение) текста. Человек оценивает мир сразу по многим шкалам (хороший-плохой, сильный-слабый, большой-маленький, счастливый-несчастливый, весёлый-грустный, быстрый-медленный и т.п.), и шкалы эти по-разному эмоционально нагружены. Но для простоты можно считать, что эмоциональная оценка сводится к шкале хороший-плохой или позитивный-негативный.

Исторически сложилось так, что традиционный подход к сентимент анализу представляет собой задачу классификации текста (части текста) на две-три категории (негативный, позитивный, нейтральный или просто: негативный или позитивный) [Pang & Lee; Turney ]. Именно с такой задачи начал свое развитие анализ тональности: оценить сентимент оценочных отзывов по какой-либо тематике (кино, рестораны, электроника и пр.).

Тем не менее, это не единственный и не определяющий тип задачи, которую должен решать сентимент анализ текста. В настоящее время читателей интересует не общая эмоциональная оценка текста (средняя температура по больнице), а отношение сентимента к конкретному объекту, упоминаемому в тексте, либо отношение субъекта высказывания к обсуждаемому объекту.

Объект, относительно которого выражается эмоциональная оценка, принято называть объектом тональности. Так, в предложении (1) объектом тональности является Армстронг , а в предложении (2) — Apple. Такой вид сентимент анализа называется объектной тональностью (object-based).

Носителем выраженной в тексте эмоциональной оценки также обычно является вполне определённое лицо, в общем случае это автор текста. Однако если автор текста ссылается на чьё-нибудь мнение, как в предложении (3) ниже, или цитирует высказывание другого человека, как в предложении (4), то носителем эмоциональной оценки, или, как ещё говорят, субъектом тональности будет тот, на чьё мнение ссылаются.

(3) Религиоведение, по мнению С. А. Бурьянова, сегодня не представляет собой точной науки, характеризующейся единством и располагающей строгими и общепринятыми принципами

(4) Глава ЦИК Вешняков вчера в очередной раз похвалил изменения в закон о выборах и сказал, что теперь законодательство перекрывает многие лазейки для злоупотреблений.

Таким образом, тональность высказывания определяется тремя компонентами: субъектом тональности (кто высказал оценку), объектом тональности (о ком или о чём высказана оценка) и собственно тональной оценкой (как оценили). В наших примерах можно обнаружить такие компоненты тональности:

Пример Субъект тональности Объект тональности Оценка
(1) автор текста Армстронг Негатив
(2) автор текста Apple Позитив
(3) С.А. Бурьянов религиоведение Негатив
(4) Вешняков законодательство Позитив

 

В одном предложении может высказываться одновременно несколько эмоциональных оценок относительно разных объектов тональности:

(5) Samsung обязали выплатить Apple компенсацию в 290 млн долларов.

Относительно Apple это скорее позитивное событие, чего не скажешь об Samsung.

Так же может быть и разная тональность относительно одного и того же объекта:

(6) Лимонад «Любимый» на основе карамели, так полюбившийся покупателям нашего региона, может провоцировать развитие болезней.

Тут объект «лимонад» упоминается как в позитивном ключе, так и в негативном.

 

Еще одним направлением сентимент анализа является выявление негативности / позитивности атрибутов объекта тональности (feature-based / aspect-based sentiment analysis), Например,

(7) Еще плюс этого смартфона — индикатор света, что существенно экономит заряд аккумулятора, поддерживает флешки до 8 ГБ, а вот камера совсем слабая.

Здесь объектом тональности является «смартфон», но его тональность складывается из нескольких факторов (индикатор света, аккумулятор, флешка, камера), которые могут иметь разную полярность. Таким образом, здесь задача сводится к выявлению атрибутов продукта (объекта) и определения их тональности. Причем одна и та же качественная характеристика для одного атрибута может быть положительной, и она же для другого атрибута – отрицательной (например, «большой аккумулятор» для телефона – это скорее хорошо, а вот «большой вес» телефона – скорее плохо).

Помимо самой тональности, текст можно оценивать по субъективности / объективности суждения (Opinion Mining). Если это мнение автора высказывания, содержащее субъективную оценку описываемого, то текст считается субъективным. И наоборот, если это сообщение СМИ или мнение, по умолчанию разделяемое участниками диалога, то оно считается объективным.

Например, сообщение из соц.сети:

(8) Пока что я остаюсь при своем —  Samsung Galaxy Note 3   — это лучший гаджет, что проходил через мои руки!

имеет субъективную оценку относительно смартфона. А текст из СМИ:

(9) Промсвязьбанк  укрепил свои позиции в топ-10 российских банков по портфелю кредитов организациям.

содержит объективную информацию.

К субъективной информации будут относиться прямая и косвенная речь в тексте, а также цитирование (см. примеры 3 и 4). В таких случаях автоматическое определение  субъективности / объективности высказывания реализовать технически гораздо проще, нежели в общем случае.

Методы определения тональности

Существует два основных метода решения этой задачи автоматического определения тональности:

  1. Статистический метод. Для него нужны заранее размеченные по тональности коллекции (корпуса) текстов, на которых происходит обучение модели, с помощью которой и происходит определение тональности текста или фразы.
  2. Метод, основанный на словарях и правилах. Для этого заранее составляются словари позитивных и негативных слов и выражений. Этот метод может использовать как списки шаблонов, так и правила соединения тональной лексики внутри предложения, основанные на грамматическом и синтаксическом разборе.

Кроме того, иногда используют смешанный метод (комбинацию первого и второго подходов).

При статистическом подходе для решения задачи общей классификации текстов на классы тональности широко используют метод опорных векторов (SVM), Байесовы модели, различного рода регрессии [Chetviorkin & Loukachevitch  — описание соревнования ROMIP-2011 по сентимент анализу данных, практически все участники использовали SVM или Байес].

Если же целью является определение тональности у определенного, заранее заданного объекта (нескольких объектов), то применяют более сложные статистические алгоритмы, такие как CRF [Антонова и Соловьев], алгоритмы семантической близости (например, латентно-семантический анализ – LSA, латентное размещение Дирихле — LDA) и др., а также методы, основанные на правилах [Пазельская и Соловьев].

Для определения атрибутивной тональности используют языковые модели [García-Moya & all], нейросети [Tarasov], либо тематические тезаурусы.

Модуль определения тональности SentiFinder

Модуль SentiFinder определяет три вида тональности русскоязычных текстов (позитивную, негативную и нейтральную) относительно заданного объекта тональности как в пределах одного предложения, так и усредненную по всему документу.

Модуль реализован на алгоритме случайных марковских полей с использованием тональных словарей. Это позволило достичь не только хорошего качества (средняя точность по трем видам тональности около 87%.) и высокой скорости обработки текстов (скорость работы модуля SentiFinder более 100 кБ/сек на одном потоке).

Особенностью данного модуля является то, что он позволяет оценить силу эмоциональности. Таким образом, пользователю предоставляется возможность не только получить качественную эмотивную оценку документа в целом относительно интересующего объекта тональности, но и количественное соотношение негативного и позитивного отношения к нему.

Модуль может работать как с «классическими» текстами новостного потока, так и «неклассическим» языком сообщений соц. медиа.

Ознакомиться с данным сервисом можно на сайте http://eurekaengine.ru/

 

Список литературы

  1. Bo Pang, Lillian Lee, Shivakumar Vaithyanathan Thumbs up? Sentiment Classification using Machine Learning Techniques //  — 2002. — С. 79–86.
  2. Peter Turney Thumbs Up or Thumbs Down? Semantic Orientation Applied to Unsupervised Classification of Reviews // Proceedings of the Association for Computational Linguistics. — 2002. — С. 417–424. — arΧivLG/0212032
  3. Анна Антонова и Алексей Соловьев, Использование метода условных случайных полей для обработки текстов на русском языке. Компьютерная лингвистика и интеллектуальные технологии: «Диалог-2013». Сб. научных статей / Вып. 12 (19).- М.: Изд-во РГГУ, 2013.– С.27-44.
  4. Sentiment Analysis Track at ROMIP-2012. Chetviorkin I.I.,Loukachevitch N.V. Компьютерная лингвистика и интеллектуальные технологии. Компьютерная лингвистика и интеллектуальные технологии: «Диалог-2013».  Сб. научных статей том 2, с. 40-50.
  5. Анна Пазельская и Алексей Соловьев, Метод определения эмоций в текстах на русском языке. Компьютерная лингвистика и интеллектуальные технологии. Компьютерная лингвистика и интеллектуальные технологии: «Диалог-2011». Сб. научных статей / Вып. 11 (18).- М.: Изд-во РГГУ, 2011.– С.510-523.
  6. Tarasov D.S. Deep Recurrent Neural Networks for Multiple Language Aspect-Based Sentiment Analysis // Computational Linguistics and Intellectual Technologies: Proceedings of Annual International Conference “Dialogue-2015”, Issue 14(21), V.2, pp. 65-74 (2015).
  7. García-Moya, L., Anaya-Sanchez, H., Berlanga-Llavori, R.: Retrieving product features and opinions from customer reviews. IEEE Intelligent Systems 28(3), 19–27 (2013)

 

Имя*
Введите проверочный код*
CAPTCHA изображение Обновить изображение
Текст комментария*