Анализ тональности стал мощным инструментом для масштабной обработки мнений, выражаемых в любых текстовых источниках. Практическое применение этого инструмента в английском языке довольно развито, чего не скажешь о русском. В этой серии статей мы рассмотрим, как и для каких целей применялись подходы анализа тональности для русскоязычных текстов, какие результаты удалось достичь, какие проблемы возникали, а также немного поговорим о перспективных направлениях. В отличие от предыдущих работ, я сосредоточился на прикладном применении, а не на самих подходах и их качестве классификации. Первая часть — вводная. Мы рассмотрим, что такое «анализ тональности», какой он бывает и как его за последние 8 лет применяли для анализа русскоязычных текстов. Во второй части детально рассмотрим каждое из 32 основных исследований, которые мне удалось найти. В третьей и заключительной части (опять же, будет на следующей неделе) поговорим об общих сложностях, с которыми сталкивались исследователи, а также о перспективных направлениях на будущее.
NB: Статья писалась для научного журнала, поэтому будет много ссылок на источники.
1. Введение
Анализ тональности — класс методов контент-анализа в компьютерной лингвистике, основная задача которого заключается в классификации текста по его настроению. С помощью анализа тональности исследователи могут обобщать тональность текстов и делать выводы по разным темам. Например, этот анализ позволяет прогнозировать рынок ценных бумаг [1], вычислять индекс субъективного благополучия [2], прогнозировать результаты выборов [3], оценивать реакцию на какие-то события или новости [4]. Анализ тональности для английского языка уже хорошо проработан [5]—[7], а другим языкам, особенно русскому, пока что уделено гораздо меньше внимания. Согласно исследованию Omnibus GFK [9], интернетом пользуется 75,4 россиян (90 млн человек) в возрасте от 16 лет. Русскоязычные диаспоры есть на всех континентах, однако основная масса проживает на территории СНГ, по большей части в России и Украине. Согласно исследованию W3Techs, русский язык по распространённости в интернете занимает одно из лидирующих мест. По состоянию на апрель 2020-го 8,6 % из 10 млн самых популярных сайтов в мире были на русском языке. Поэтому русскоязычные тексты являются важным источником данных для автоматического анализа, особенно анализа тональности.
Лишь одно обзорное исследование [10], проведённое Viksna и Jekabsons, посвящено анализу тональности русскоязычных текстов. В нескольких других [11]—[14] он упоминается в контексте общего сравнения с существующими подходами. Некоторые другие исследования посвящены конкретным аспектам анализа тональности русскоязычных текстов. Например, оценка наилучших подходов [15]—[18], сравнение архитектур нейросетей для анализа тональности [19], [20], сравнение открытых русскоязычных подборок лексики для оценки настроений [21]. Однако все эти исследования сосредоточены на самих подходах и их скорости классификации, а не на практическом применении и результатах анализа. Я же рассматривал только те работы, в ходе которых получены результаты анализа на основе реальных данных. И не рассматривал те, которые посвящены лишь обучению классификаторов. Это статья — сжатый перевод млей статьи, опубликованной в IEEE Access. Если хотите больше подробностей, или просто почитать на английском — вам сюда.
Во второй секции кратко описывается задача анализа тональности и текущие подходы, если вы с этим уже знакомы — смело пропускайте. Третья секция — одна из основных, в ней рассматриваются виды применения анализа тональности для русскоязычных текстов, здесь же описаны 32 основных исследований, их инсайты и слабые стороны. Четвертая секция посвящена текущим сложностям, а пятая — перспективным направлениям.
2. Кратко о методах анализа тональности
Анализ тональности — класс методов контент-анализа в компьютерной лингвистике, основная задача которого заключается в классификации текста по его настроению. В простых случаях задача анализа тональности сводятся к бинарной классификации текстов на позитивные и негативные. В некоторых случаях добавляют ещё класс нейтральных текстов. Более продвинутые подходы пытаются определять эмоциональные состояния, ассоциируемые с каким-то текстом, например, страх, злость, печаль или счастье. В ряде подходов текстам присваиваются значения заранее определённой шкалы: например, от -2 для негативных до 2 для позитивных; таким образом анализ сводится к задаче регрессии. Аспектный анализ тональности (aspect-based sentiment analysis) — это подвид анализа тональности, чья задача заключается в определении отношения к конкретному аспекту основного предмета обсуждения. Все подходы к анализу тональности можно разделить на три группы.
Первая — подходы на основе правил (rule-based). Чаще всего в них используются вручную заданные правила классификации и эмоционально размеченные словари. Эти правила обычно на основе эмоциональных ключевых слов и их совместного использования с другими ключевыми словами рассчитывают класс текста [22]—[24]. Несмотря на прекрасную эффективность в текстах из какой-то определенной тематики, методы на основе правил плохо способны обобщать. Кроме того, они крайне трудоёмки в создании, особенно когда нет доступа к подходящему словарю настроений. Последнее особенно характерно для русского языка, потому что на нём не так много источников, как на английском, особенно в сфере анализа тональности. Крупнейшие русскоязычные словари настроений — RuSentiLex [25] и LINIS Crowd [26]. Но в них есть только информация о тональности от позитивной до негативной, без характеристик эмоций. Таким образом, не существует альтернатив таким мощным англоязычным подборкам с обширными эмоциональными характеристиками, как SenticNet [27], SentiWordNet [28] и SentiWords [29].
Вторая группа — подходы на основе машинного обучения. Они используют автоматическое извлечение признаков из текста и применение алгоритмов машинного обучения. Классическими алгоритмами классификации полярности являются наивный байесовский классификатор (Naive Bayes Classifier) [30], дерево решений (Decision Tree) [31], логистическая регрессия (Logistic Regression) [32] и метод опорных векторов (Support Vector Machine) [33]. В последние годы внимание исследователей привлекают методы глубокого обучения, которые значительно превосходят традиционные методы в анализе тональности [34]. Это подтверждается и хронологией соревнования SemEval, в ходе которого лидирующие решения успешно использовали свёрточные (CNN) и рекуррентные (RNN) нейросети [35]—[37], а также методы переноса обучения (transfer learning) [38]. Одна из главных особенностей систем на основе машинного обучения — автоматическое извлечение признаков из текста. В простых подходах для представления текста в векторном пространстве обычно используется модель «мешок слов» (bag of words). В более сложных системах для генерирования эмбеддингов слов применяются модели дистрибутивной семантики, например, Word2Vec [39], GloVe [40] или FastText [41]. Также есть алгоритмы генерирования эмбеддингов на уровне предложений или параграфов, которые предназначены для переноса обучения в разных задачах обработки естественного языка. К таким алгоритмам относятся ELMo [42], Universal Sentence Encoder (USE) [27], Bidirectional Encoder Representations from Transformers (BERT) [43], Enhanced Language Representation with Informative Entities (ERNIE) [44] и XLNet [45]. Одним из их главных недостатков с точки зрения генерирования эмбеддингов является потребность в больших массивах текстов для обучения. Впрочем, это справедливо для всех методов машинного обучения, потому что всем алгоритмам обучения с учителем нужны для обучения размеченные наборы данных.
Третья группа — гибридные подходы. Они объединяют в себе подходы двух предыдущих видов. Например, Кумар (Kumar) и его коллеги разработали гибридный фреймворк для анализа тональности персидского языка, в котором сочетаются лингвистические правила, а также модули свёрточных нейросетей и LSTM для классификации настроений [46]. Мескеле (Meskele) и Фрасинкар (Frasincar) предложили гибридную модель аспектного анализа ALDONAr, в которой сочетаются онтология настроений для захвата информации о настроениях, BERT для получения эмбеддингов слов и два слоя CNN для расширенной классификации тональности [47]. Модель показала точность в 83,8 % на датасете SenEval 2015 Task 12 [48] и 87,1 % на датасете SemEval 2016 Task 5 [49]. Языковые модели часто применяются в гибридных алгоритмах, как и решения на основе правил [50]—[52]. С одной стороны, комбинация методов на основе правил и машинного обучения обычно позволяет добиться более точных результатов. А с другой — гибридные подходы наследуют трудности и ограничения составляющих их алгоритмов.
3. Методология
Чтобы найти ключевые публикации по прикладному анализу тональности русскоязычных текстов, я провёл поиск по научным базам данных, которые охватывают ведущие журналы и конференции по информатике: IEEE Xplore, ACM Digital Library, ScienceDirect, SAGE Journals Online и Springer Link. Чтобы расширить круг источников, помимо англоязычных статей я также изучил русскоязычные статьи из Российского индекса научного цитирования (РИНЦ). Поиск вёлся по запросу ((''SENTIMENT'' OR ''POLARITY'') AND (''ANALYSIS'' OR ''DETECTION'' OR ''CLASSIFICATION'' OR ''OPINION MINING'' OR ''TOPIC MODELING'') AND (''RUSSIAN'' or ''RUSSIA'')). Большинство подходящих статей найдено в ScienceDirect, Springer Link и РИНЦ. Также я изучил предварительные публикации работ ведущих исследователей, чтобы не упустить свежие разработки. В результате удалось собрать несколько тысяч потенциально подходящих статей, не считая серой литературы и препринтов. Предпочтение отдавалось самым свежим и наиболее цитируемым работам. Затем я проанализировал заголовки, ключевые слова и введения остальных публикаций, чтобы сузить выборку источников. Поиск вёлся только по отрецензированным статьям, чтобы улучшить качество выборки. Я исключил серые источники (например, незавершённые работы, редакционные статьи, любые диссертации), а также неподходящие для моего исследования (в которых не применяются модели классификации тональности). Затем для дальнейшего подробного описания в этой статье я вручную выбрал 32 основные публикации, в которых описывался хотя бы один практический подход к анализу настроений в русскоязычных текстах.
4. Применение анализа тональности к русскоязычным текстам
Рис. 1. Предложенные категории.
Я решил категоризировать подходы по источникам данных, потому что в этом случае у подходов внутри категорий будут схожие цели, вызовы и ограничения. Хотя некоторые категории содержат всего по одному исследованию, я решил выделить их в связи с фундаментальным отличием используемых подходов, результатов и сложностей. К тому же не забывайте, что русский язык меньше исследован с точки зрения анализа тональности, поэтому количество работ ограничено. На рис. 1 представлен набор категорий. Большинство подходов опиралось на анализ данных из соцсетей, чтобы оценивать отношение пользователей к разным темам. Например, отношение и мнения о конфликте на Украине и связанных с мигрантами проблемах. В последнее десятилетие многие соцсети превратились в современные инструменты социального вовлечения [53], поэтому их можно воспринимать как открытые и широко доступные источники общественного мнения, или хотя бы как его некое отражение [54]. UGC из социальных сетей, как самый распространённый источник информации, были исследован по трём критериям: отношение к разным темам; индексы социального настроения; особенности пользовательского взаимодействия с данными, выражающими разные настроения. Отношение к разным темам изучалось с разных точек зрения. Например, отношение к мигрантам и этническим группам (например, [55]), выражения настроений в ходе Украинского кризиса (например, [56]), измерение уровня социальной напряжённости (например, [57]) или сосредоточенность на дискурсе по каким-то важным вопросам (например, [58]). Обычно эти подходы используют комбинацию тематического моделирования и анализа тональности, чтобы выделить темы и соответствующие настроения. В значительной части исследований (например, [59]—[67]), в которых тематическое моделирование применяется без последующей классификации полярности (и значит они не рассматриваются в этой статье), анализ тональности упоминается как дальнейший этап развития. В другой части исследований (например, [68]) индексы социального отношения вычисляются на основе выраженных в соцсетях мнений, чтобы получить альтернативу традиционному индексу субъективного благополучия. Наконец, в ещё одной одной части исследований (например, [69]) рассматриваются паттерны взаимодействия пользователей с содержимым в зависимости от его эмоциональной окраски. Одной из основных трудностей в подобных исследованиях является извлечение репрезентативных образцов данных и выделение релевантных текстов для последующего анализа.
Следующий по распространённости источник информации — отзывы на продукты и сервисы. Они анализировались с точки зрения характеристик самих авторов отзывов (например, [70]), характеристик продуктов и сервисов (например, [71]), а также характеристик продавцов (например, [72]). В отличие от анализа генерируемых пользователями данных из соцсетей здесь нет трудностей с доступом к старым данным. Посвящённые отзывам сайты часто позволяют пользователям в дополнение к тексту отзыва также ставить оценки, поэтому формально нет нужды в создании модели классификации настроений, ведь нам уже известны классы оценок. Однако в некоторых исследованиях модели классификации тональности используются исключительно из-за академического интереса. Поскольку пользовательские данные в соцсетях и пользовательские отзывы часто отражают субъективные точки зрения, анализ этих данных отличается от анализа новостей. Обычно журналисты стараются избегать оценок и откровенной пристрастности, сомнений и двусмысленности, поскольку в основе их профессии лежит объективность. или хотя бы нейтральность [73]. Поэтому журналисты часто не используют слова, относящиеся к позитивной или негативной лексике, однако прибегают к другим способам выражения своего мнения [74].
Третьим основным источником стали новости из СМИ, которые анализировались по двум критериям: тональность (например, [75]) и формирование экономических и деловых прогнозов на основе тональности новостей (например, [76]). В отличие от анализа генерируемых пользователями данных из соцсетей, здесь нет трудностей с доступом к старым данным, потому что СМИ обычно не ограничивают к ним доступ. Однако авторы некоторых исследований пытались определить отношение общественности к конкретным темам, что, на мой взгляд, требует дальнейшей проработки. Конечно, СМИ можно считать отражением общественного мнения. Но в некоторых случаях политика редакций могла влиять на подачу, так что новости не всегда отражают мнение общества. Чуть меньше внимания исследователи уделили самому свежему направлению: анализу тональности учебников, подобные исследования появились только в 2019-м. Эти работы сосредоточены на сравнении настроений, выраженных в разных учебниках (например, [77]), и на влиянии этих настроений на образовательный процесс (например, [78]). Главная сложность связана с отсутствием лексики определённых настроений и обучающих наборов данных, ориентированных на учебники. Более того, в случае с аналитическими текстами на уровне документов становится сложно связать тексты с каким-то классом настроений, потому что тексты в учебниках длинные и могут содержать в себе сразу несколько разных эмоций.
Чтобы охватить более широкий спектр мнений, некоторые исследования оперируют смешанными источниками данных. В этой группе исследователи обычно изучают отношение к разным темам, таким как Украинский кризис (например, [79]) или освещение в СМИ Алексея Навального (например, [80]). Поскольку источники смешанные, такие данные могут использоваться для любых возможных исследований. Однако в дополнение к широкому спектру выраженных мнений авторы также сталкиваются с характерными для источников сложностями и ограничениями.
Сводка найденных подходов представлена в таблице 1. Если рассмотреть распределение статей по годам, то можно увидеть, что количество исследований тональности русскоязычного текста увеличивалось в 2014-2016 годах и достигло пика в 2017-м. Количество статей, опубликованных в одних и тех же журналах и сборниках материалов конференций, несколько варьируется. И только в семи журналах и сборниках было опубликовано более одной из проанализированных статей. Больше всего обнаруженных статей было опубликовано в сборнике материалов конференции «Цифровые преобразования и глобальное общество».
Таблица 1. Сводка обнаруженных исследований. RB – подходы на основе правил, ML – подходы на основе методов машинного обучения, UNK – неизвестные подходы, WL – анализ на уровне слов, DL – анализ на уровне документов.
Категория | Назначение | Описание | Ссылка | Подход | Уровень анализа |
---|---|---|---|---|---|
UGC | Отношение к теме | Определение принадлежности к этнической группе или мигрантам. | [81] | ML (Logit) | DL |
[82] | ML (Logit) | DL | |||
[83] | ML (Logit) | DL | |||
[84] | RB (SentiStrength) | DL | |||
[55] | ML (SVM) | DL | |||
Определение принадлежности в ходе Украинского кризиса. | [85] | RB (custom) | DL | ||
[86] | RB (POLYARNIK) | DL | |||
[87] | RB (SentiMental) | DL | |||
[88] | UNK (IQBuzz) | DL | |||
[56] | RB (custom) | DL | |||
Измерение уровня социальной напряжённости. | [89] | ML (SVM) | DL | ||
[57] | RB (SentiStrength) | DL | |||
Исследование реакции на взрыв метеорита над Челябинском. | [58] | не указано | DL | ||
Оценка реакции на Олимпиаду 2014 в Сочи. | [90] | RB (SentiStrength) | DL | ||
Исследование массовых протестов в России в 2011-2012. | [91] | RB (SentiStrength) | DL | ||
Распределение настроений в Санкт-Петербурге. | [92] | ML (NBC) | DL | ||
Индекс общественного мнения | Составление индекса субъективного благополучия. | [93] | RB (custom) | WL, DL | |
[68] | ML (GBM) | DL | |||
Поведение пользователей | Оценка влияния настроения на обратную связь от аудитории. | [69] | ML (BiGRU) | DL | |
Рецензии | Характеристики рецензентов | Определение причин, почему сотрудники покидают российские компании. | [70] | не указано | DL |
Характеристики продуктов и сервисов | Оценка состояния дорожного покрытия в Северо-Западном Федеральном округе России. | [71] | ML (NB, SGD) | DL | |
Характеристики торговцев | Определения качества товаров, предлагаемых торговцами. | [72] | ML (RNTN) | DL | |
Новости | Содержимое новостей | Определение горячих тем и полярности освещения новостей в СМИ. | [94] | RB (custom) | DL |
[95] | RB (custom) | DL | |||
Оценка тональности при упоминании технологий и инноваций в СМИ. | [96] | RB (custom) | DL | ||
Оценка освещаемой повестки дня Владимира Путина и Алексея Навального. | [75] | UNK (Medialogia) | DL | ||
Экономические и деловые прогнозы | Создание высокочастотного индикатора деловой активности в России. | [76] | ML (SVM) | DL | |
Книги | Содержимое книг | Сравнение тональности в русскоязычных учебниках по обществоведению и истории. | [77] | RB (custom) | WL |
Образовательный процесс | Оценка корреляции между тональностью образовательных текстов, субъективной оценки иностранных студентов и реального успеха образовательного процесса. | [78] | ML (не указано) | DL | |
Смешанное | Отношение к теме | Определение принадлежности в ходе Украинского кризиса | [97] | UNK (Crimson Hexagon) | DL |
[79] | UNK (Crimson Hexagon) | DL | |||
Анализ интенсивности и тональности освещения Алексея Навального в СМИ | [80] | UNK (Medialogia) | DL |
Соотношение подходов на основе правил (40,63 %) и машинного обучения (37,5 %) было примерно равное. В первой группе чаще всего использовались либо индивидуальные модели на основе правил, либо SentiStrength [22], ставший самым популярным алгоритмом среди сторонних готовых к использованию решений. А во второй группе чаще всего применялись логистическая регрессия [32], метод опорных векторов [33] и наивный байесовский классификатор [30]. Самыми востребованными были простые методы машинного обучения, а на нейросети пришлось только 16,7 %. Однако начиная с 2019 года доля подходов на основе машинного обучения значительно превысила долю подходов на основе правил. В 15,6 % обнаруженных исследований для анализа тональности применялись сторонние облачные сервисы, например, Medialogia, IQBuzz и Crimson Hexagon. В этих случаях я не смог определить использованные подходы из-за отсутствия официальной информации о применявшихся алгоритмах классификации.
В нескольких случаях были обнаружены методологические недостатки, в том числе отсутствовало описание предварительной обработки, разметки данных, процесса обучения и метрик качества классификации. В ряде случаев модель классификации не проверялась на наборе данных, относящихся к предметной области. Это особенно характерно для анализа тональности с помощью подходов на основе правил или сторонних сервисов — исследователи обычно не размечали вручную наборы текстов и поэтому не могли оценить качество классификации.
5. Далее
На следующей неделе выйдет вторая часть статьи, в ней мы детально рассмотрим каждое из 32 основных исследований, которые мне удалось найти. В третьей и заключительной части (опять же, будет на следующей неделе) поговорим об общих сложностях, с которыми сталкивались исследователи, а также о перспективных направлениях на будущее. Если есть желание прочесть всю статью сразу и на английском, вам сюда.
6. Источники
Полный список источников можно найти здесь.