Ана́лиз тона́льности те́кста (сентимент-анализ, , ) — класс методов контент-анализа в компьютерной лингвистике, предназначенный для автоматизированного выявления в текстах эмоционально окрашенной лексики и эмоциональной оценки авторов (мнений) по отношению к объектам, речь о которых идёт в тексте.

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

Задачи Основной целью анализа тональности является нахождение мнений в тексте и выявление их свойств. Какие именно свойства будут исследоваться, зависит уже от поставленной задачи. К примеру, целью анализа может быть автор, то есть лицо, которому принадлежит мнение.

Мнения делятся на два типа: непосредственное мнение; сравнение.

Непосредственное мнение содержит высказывание автора об одном объекте. Формальное определение непосредственного мнения выглядит так: "непосредственным мнением называется кортеж из пяти элементов (e, f, op, h, t), где: (entity, feature) — объект тональности e (сущность, насчет которой высказывается автор) или его свойства f (атрибуты, части объекта) ; orientation или polarity — тональная оценка (эмоциональная позиция автора относительно упомянутой темы); holder — субъект тональности (автор, то есть кому принадлежит это мнение); момент времени time, когда было оставлено мнение.

Примеры тональных оценок: позитивная; негативная; нейтральная.

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

Виды классификации В современных системах автоматического определения эмоциональной оценки текста чаще всего используется одномерное эмотивное пространство: позитив или негатив (хорошо или плохо). Однако известны успешные случаи использования и многомерных пространств.

Основной задачей в анализе тональности является классификация полярности данного документа, то есть определение, является ли выраженное мнение в документе или предложении позитивным, негативным или нейтральным. Более развёрнуто, «вне полярности» классификация тональности выражается, например, такими эмоциональными состояниями, как «злой», «грустный» и «счастливый».

Классификация по бинарной шкале Полярность документа можно определять по бинарной шкале. В этом случае для определения полярности документа используется два класса оценок: позитивная или негативная. Одним из минусов данного подхода является то, что эмоциональную составляющую документа не всегда можно однозначно определить, то есть документ может содержать признаки как позитивной, так и негативной оценки. Ранние работы в этой области включают в себя труды Терни и Панга, которые применяют различные методы распознавания полярности обзоров товара и отзывов о фильмах соответственно. Это пример работы на уровне документа.

Классификация по многополосной шкале Можно классифицировать полярность документа по многополосной шкале, что было предпринято Пангом и Снайдером (среди прочих). Ими была расширена основная задача классификации киноотзывов от оценки «положительный или отрицательный» в сторону прогнозирования рейтинга по 3-х или 4-балльной шкале. В то же время Снайдер провёл углублённый анализ обзоров ресторанов, предсказывая рейтинги их различных свойств, таких как еда и атмосфера (по 5-балльной шкале).

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

Субъективность/объективность Другое исследовательское направление — это идентификация субъективности/объективности. Эта задача обычно определяется как отнесение данного текста в один из двух классов: субъективный или объективный. Эта проблема иногда может быть более сложной, чем классификация полярности: субъективность слов и фраз может зависеть от их контекста, а объективный документ может содержать в себе субъективные предложения (например, новостная статья, цитирующая мнения людей). Более того, как упоминал Су, результаты в большей степени зависят от определения субъективности, употребляющейся в рамках аннотации текстов. Как бы то ни было, Панг показал, что удаление объективных предложений из документа перед классификацией полярности помогло повысить точность результатов.

Модель более подробного анализа называется анализом на основе функции/аспекта. Эта модель ссылается на определение мнений или настроений, выраженных различными функциями или аспектами сущностей, например, у сотового телефона, цифровой камеры или банка. Свойство/аспект — это атрибут или компонент сущности, исследуемой на тональность, например, экран сотового телефона или же качество съёмки камеры. Эта проблема требует решения ряда задач, например, идентификации актуальных сущностей, извлечения их функций/аспектов и определения, является ли мнение, высказанное по каждой функции/аспекту, положительным, отрицательным или нейтральным. Более подробные дискуссии на этот счёт могут быть найдены в справочнике по NLP, в главе «Анализ тональности и субъективности».

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

Отношения грамматической связанности получают на основе глубокого структурного разбора текста. Анализ тональности может быть разделен на две отдельные категории: ручной (или анализ тональности экспертами); автоматизированный анализ тональности.

Наиболее заметные различия между ними лежат в эффективности системы и точности анализа. В компьютерных программах автоматизированного анализа тональности применяют алгоритмы машинного обучения, инструменты статистики и обработки естественного языка, что позволяет обрабатывать большие массивы текста, включая веб-страницы, онлайн-новости, тексты дискуссионных групп в сети Интернет, онлайн-обзоры, веб-блоги и социальные медиа.

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

WordNet-Affect Примером для разработки WordNet-Affect послужило многоязычное расширение WordNet, названное WordNet Domain. В расширении WordNet Domain каждому синсету приписано не менее одной пометы предметной области (англ. «domain label»), например: спорт, политика, медицина. Всего в иерархически организованную структуру было включено около двухсот предметных помет.

WordNet-Affect — это семантический тезаурус, в котором понятия, связанные с эмоциями («эмоциональные концепты», англ. «affective concepts»), представлены с помощью слов, обладающих эмоциональной составляющей («эмоциональные слова», англ. «affective words»). WordNet-Affect состоит из такого подмножества синсетовСинсет (synset) — набор синонимов. WordNet, где каждый синсет, соответствующий «эмоциональному концепту», может быть представлен с помощью «эмоциональных слов».

Таким образом, WordNet-Affect был создан на основе WordNet для английского языка (также существуют версии WordNet-Affect и для других языков) путём выбора и отнесения наборов синонимов (синсетов) к различным эмоциональным понятиям. В частности, синсеты глаголов, существительных, прилагательных, наречий, которые представляют собой описание эмоций, были вручную размечены с помощью специальных эмоциональных меток (affective labels, A-labels). Эти эмоциональные метки характеризуют различные состояния, выражающие настроения, эмоциональные отклики или ситуации, которые вызывают эмоции. Примеры таких эмоциональных меток приведены в следующей таблице

Эмоциональная метка Пример Эмоция (emotion) сущ. гнев#1, гл. бояться#1 (fear) Настроение (mood) сущ. враждебность#1 (animosisy), прил. любезный#1J (amiable) Особенность (trait) сущ. агрессивность#1 (aggressiveness), прил. соперничающий#1 (competitive) Когнитивное состояние (cognitive state) сущ. замешательство#2 (confusion), прил. потрясенный#2 (dazed) Физическое состояние (physical state) сущ.хворь#1 ( llness), прил. выдохнувшийся#1 (all in) Гедонический сигнал (gedonic signal) сущ. боль#3(hurt), сущ. страдание#4 (suffering) Ситуации, вызывающие эмоции (emotion-eliciting situation) сущ. неловкость#3 (awkwardness), сущ. безопасность#1 (out of danger) Эмоциональные отклики (emotional responses) сущ. холодный пот#1 (cold sweat), гл. дрожать#2 (tremble) Поступки (behaviour) сущ. преступление#1 (offense), прил. заторможенный#1 (inhibited) Отношение, позиция (attitude) сущ. нетерпимость#1 (intolerance), сущ. оборонительная позиция#1 (defensive) Чувство (sensation) сущ. холод#1 (coldness), гл. чувствовать#3 (feel)

Также в WordNet-Affect используются дополнительные эмоциональные метки для того, чтобы разделять синсеты в соответствии с их эмоциональной валентностью. Для этого определяются четыре дополнительные эмоциональные метки: позитивная, негативная, неоднозначная и нейтральная. Первая соответствует положительным эмоциям, которые определяются как эмоциональные состояния, характеризующиеся наличием положительных гедонистических сигналов (или удовольствия). Она включает в себя такие синсеты как радость#1 или увлечение#1. Аналогично негативная метка идентифицирует негативные эмоции, характеризующиеся отрицательными гедонистическими сигналами (или болью), например, гнев#1 или печаль#1. Синсеты, представляющие эмоциональные состояния, валентность которых зависит от семантического контекста (например, удивление#1) помечаются как неоднозначные. Наконец, синсеты, определяющие психологические состояния и всегда рассматривающиеся как неоднозначные, но при этом не характеризующиеся валентностью, являются нейтральными.

Синсеты, помеченные эмоциональными метками, дополнительно переразмечаются шестью эмоциональными категориями: радость, страх, гнев, печаль, отвращение, удивление. Таким образом, физическая структура WordNet-Affect состоит из шести файлов: anger.txt, disgust.txt, fear.txt, joy.txt, sadness.txt, surprise.txt, где каждый файл представляет собой описание какой-либо категории. На данный момент WordNet-Affect содержит 2874 синсетов и 4787 слов.

Учёные Технического университета Молдовы перевели синсеты WordNet-Affect с английского на русский и румынский языки, выполнили их выравнивание: английский — румынский — русский. Ресурс доступен онлайн для исследовательских целей.

SentiWordNet SentiWordNet — это лексический семантический тезаурус, первая версия которого была разработана в 2006 году. На данный момент самой последней версией SentiWordNet является SentiWordNet 3.0, использование которой дает более чем 20 % прирост точности по сравнению с первой версией.