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

УДК 004.85

Д.В. Будыльский, А.Г. Подвесовский

ИССЛЕДОВАНИЕ ПРИМЕНИМОСТИ МОДЕЛЕЙ ГЛУБОКОГО ОБУЧЕНИЯ ДЛЯ ЗАДАЧИ АСПЕКТНОГО АНАЛИЗА ТОНАЛЬНОСТИ ТЕКСТОВЫХ СООБЩЕНИЙ

Рассмотрена задача аспектного анализа тональности текстовых сообщений на естественном языке. Исследованы четыре нейросетевые модели, относящиеся к разделу глубокого обучения: сверточная нейронная сеть, рекуррентная нейронная сеть, сеть GRU, сеть LSTM. Представлены результаты экспериментальной проверки указанных моделей на корпусе текстовых отзывов SentiRuEval-2015.

Ключевые слова: машинное обучение, аспектный анализ тональности, нейронные сети, глубокое обучение.

Анализ текстов социальных медиа на сегодняшний день является одним из наиболее актуальных и активно развивающихся прикладных направлений компьютерной лингвистики. Подтверждением этого может служить тот факт, что именно данное направление стало ведущей темой последней международной конференции в области компьютерной лингвистики и автоматической обработки текстов «Диалог-2015» [16].

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

Задача интеллектуального анализа - определить субъект обсуждения (кто говорит), объект (о чем говорит) и отношение первого ко второму (что именно говорит). Социальные сети упрощают решение первых двух задач: субъектом обсуждения является автор публикации, а определить объект зачастую (хотя не всегда) помогает наличие хештегов или тема оригинальной публикации, к которой оставлен комментарий. Наибольший интерес представляет отношение автора к объекту обсуждения. Чтобы определить его, необходимо понять смысл текста. Эту непростую задачу, которую традиционно относят к задачам искусственного интеллекта, на практике упрощают, сводя ее к определению тональности сообщения. Анализ тональности (Sentiment Analysis, SA) определяет эмоциональную окраску сообщения (позитивную, негативную или нейтральную) [12]. Как правило, этого бывает достаточно для базового понимания отношения пользователя к объекту дискуссии. Разумеется, автоматизация понимания смыслового содержания текстовой информации не ограничивается только тональностью, но из-за сравнительной простоты и развитых алгоритмов данный вид анализа является наиболее популярным в системах мониторинга социальных медиа [18].

По своей сути задача анализа тональности является задачей классификации. Это может быть бинарная (позитивный - негативный), тернарная (позитивный - нейтральный -негативный) или n-арная классификация (с введением таких промежуточных классов тональности, как «умеренно позитивный», «сильно негативный» и др.).

Формальная постановка задачи SA имеет следующий вид. Пусть X - множество текстовых фрагментов, Y - конечное множество классов тональности, - целевая

функция тональности, значения которой известны только на конечном подмножестве сообщений обучающей выборки Xtra'"=[(x1, y1), ..., (xn, yn)}. Требуется определить аппроксимирующую функцию тональности ф ': X^Y, способную классифицировать произвольный текстовый фрагмент xEX.

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

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

Данное ограничение можно частично преодолеть, перейдя от классического к ас-пектному анализу тональности (Aspect Based Sentiment Analysis, ABSA), который подразумевает определение тональности сообщения по отношению к тем или иным свойствам (аспектам). В рассматриваемом примере система аспектного анализа должна установить положительную тональность для аспекта «экран телефона» и отрицательную для аспекта «динамик телефона», что является более полным и правильным результатом. Постановка задачи ABSA по сравнению с SA имеет следующие отличия:

• Ф = {paspect-1, ..., y,asPect-m} - целевая функция аспектного анализа, представляющая собой композицию функций анализа тональности по каждому из аспектов;

• ф* = {paspect_ , . , ^aspectjn } - аппроксимирующая функция аспектного анализа тональности;

Xtrain _ (y aspect_1 aspect_m\ / aspect_1 aspect_m\~l

= {(x1 y1 , .••,y1 Л yn , yn )}.

Подходы, применяемые для анализа тональности текстовой информации на естественном языке, разделяют на две группы: инженерно-лингвистические методы и методы на основе машинного обучения [17]. В последние годы, в связи с удешевлением вычислительных мощностей (в частности, вследствие распространения вычислений на графических процессорах) и значительным увеличением объемов информации, сильный импульс к развитию получили именно методы машинного обучения [2].

Среди методов машинного обучения в наибольшей степени выделяются искусственные нейронные сети, которые в последнее время демонстрируют лучшие результаты решения задач, связанных с анализом тональности текстовой информации на английском языке [8; 9]. В рамках данной статьи будет исследовано несколько моделей машинного обучения, основанных на современных нейросетевых алгоритмах, а также проведена их экспериментальная проверка на русскоязычных текстовых данных.

Методы решения. Особенностью обработки текстовой информации (в отличие, например, от обработки изображений) является нефиксированная размерность обрабатываемых данных. Пусть w Е M - размерность векторного представления текстового токена [14], тогда текстовый фрагмент длиной n токенов представляет собой матрицу Mnxw. Так как n различно для каждого из примеров обучающей выборки, то ряд моделей машинного обучения, для которых фиксированное количество входных признаков является критически важным, попросту неприменимы к подобной задаче.

Классом моделей, успешно решающих проблему нефиксированной последовательности входных данных, являются рекуррентные нейронные сети (Recurrent Neural Network, RNN) [4; 7]. При помощи скрытого слоя h модель может сохранять информацию о предыдущих входных сигналах, а по окончании последовательности данных проводить классификацию тональности (рис. 1).

©

-К h

-Н h

©

t-2

©

t-1

©

Рис. 1. Общая схема рекуррентной нейронной сети с одним выходом

Развитием рекуррентных нейронных сетей являются модели GRU (Gated Recurrent Unit) [11] и LSTM (Long-Short Term Memory) [6]. В них, в отличие от обычной RNN, каждый нейрон представляет собой ячейку памяти, содержимое которой может обновляться или сбрасываться. Схематически ячейки памяти GRU и LSTM представлены на рис. 2.

>OUT

>OUT

Рис. 2. Схематическое представление LSTM (слева) и GRU [5]

В сети GRU выходное значение OUT определяется активацией фильтров сброса r и обновления z. LSTM использует более сложную схему вычислений, применяя три фильтра: входной фильтр i, фильтр забыванияf и выходной фильтр о.

Концептуально иной подход к решению проблемы нефиксированных входных данных предлагает сверточная нейронная сеть (Convolutional Neural Network, CNN) [8]. Принцип ее использования заключается в последовательном применении операций свертки и выбора максимального значения (max-polling [10]). Схематически сверточная модель для анализа текстовых данных изображена на рис. 3.

Несмотря на ряд концептуальных отличий в моделях, основные гиперпараметры всех нейросетей являются общими, а именно: а - коэффициент обучения (learning rate); X - коэффициент Ll-регуляризации; w - размер векторного представления текстового токена; с - количество нейронов промежуточного слоя.

Четыре описанные модели (простая рекуррентная нейронная сеть, GRU, LSTM, сверточная нейронная сеть) необходимо проверить на практике, оценив их возможность решать задачу аспектного анализа тональности текстовых данных на русском языке.

t

wait

video and

rent

Рис. 3. Сверточная нейронная сеть Кима [8]

Результаты. Для понимания качества работы той или иной модели важным является выбор исходных данных для обучения и тестирования. Фокус экспериментальных исследований конференции «Диалог-2015», имеющих общее название SentiRuEval, был направлен на анализ тональности характеристик (аспектов) объектов. Помимо задач выделения аспектных терминов в пользовательских сообщениях (которые представляли собой отзывы о ресторанах или автомобилях), отнесения их к аспектным категориям и оценки тональности каждого из терминов в отдельности на конференции была также представлена задача определения тональности отзыва целиком по отношению к каждому из аспектов. Данные, использованные участниками, а также результаты экспериментов находятся в открытом доступе на сайте конференции [15].

Корпус текстовых данных ресторанной тематики содержит 201 отзыв в обучающей выборке и 203 отзыва в тестовой. Пример отзыва (авторские орфография и пунктуация сохранены) представлен ниже.

«Добрый день! Отмечали свадьбу 18 августа. В общем всё прошло хорошо. Ресторан понравился, интерьер приятный, много места, украсили красиво. Что касается меню, ожидали лучшего! Меню мы заказали самое дорогое за 2500 т.р., и думали , что столы будут ломиться от изобилия, но это было не так. И некоторым гостям не понравились отдельные виды блюд. Что касается торта , то он был очень вкусным , помогла нам его выбрать администратор Наталья. По организации банкета Наталья нам во многом помогла!!! Огромное ей спасибо за хорошие советы!».

Задача состояла в определении тональной оценки каждого из аспектов: кухня (Food), интерьер (Interior), сервис (Service), цена (Price). В дополнение к указанным четырем список пополняется еще одним аспектом - «объект в целом» (Whole). Система участника тестирования должна была отнести к каждому из аспектов один из следующих классов тональности: positive (позитивная оценка), negative (негативная оценка), both (присутствуют как позитивная, так и негативная оценки данного аспекта), neutral (нейтральная оценка) или absence (оценка отсутствует). Для примера, приведенного выше, оценки, выставленные экспертом, следующие:

• кухня (Food) - both;

• интерьер (Interior) - positive;

• цена (Price) - negative;

• сервис (Service) - both;

• объект в целом (Whole) - positive.

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

Для оценки качества аспектного анализа тональности организаторы «Диалога-2015» использовали макроусреднение F1-меры, предоставив в открытом доступе скрипт, вычис-

ляющий macro F1 для каждого из аспектов, а также общее усреднение.

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

На рис. 4 представлены значения macro F1 для задачи аспектного анализа тональности ресторанных отзывов при помощи сверточных и рекуррентных моделей.

Рис. 4. Сравнение macro F1 для моделей CNN, RNN, GRU и LSTM при изменении параметров w и c

Для сравнения моделей между собой были зафиксированы параметры коэффициента обучения а=0,1 и коэффициента регуляризации Х=0,0001. В экспериментах изменялись параметры w и c в пределах от 20 до 100 с шагом 20. Для каждой конфигурации модель обучалась на обучающей выборке и затем предсказывала классы тональности для каждого из аспектов тестовой выборки.

Лучший показатель macro F1 принадлежит сети LSTM (37 %), второе место по качеству прогнозирования принадлежит модели GRU, третье - сверточным сетям. Простые рекуррентные нейросети оказались наименее точными, однако лучший показатель RNN (чуть более 30%) не столь далек от лучшего показателя среди всех тестов. Представленные распределения точности в зависимости от w и c не демонстрируют каких-либо четко выраженных закономерностей. Модели могут показывать как высокие, так и низкие результаты при высоких и низких значениях размерности векторного

представления и количества нейронов скрытого слоя. Однако в случае рекуррентных моделей можно наблюдать некоторую симметрию: значения macro F1 относительно диагонали w=c являются похожими (хотя не одинаковыми). Для сверточных моделей можно наблюдать высокие показатели в районе центра - увеличение или уменьшение размерностей приводит к снижению macro F1.

На рис. 5 представлены подробные значения macro F1 модели LSTM для каждого из аспектов.

с с с

Рис. 5. Показатели macro F1 LSTM-сети для каждого из аспектов при изменяемых параметрах w и c

Для таких аспектов, как «объект в целом» (Whole) и «сервис» (Service), можно наблюдать довольно высокие максимальные показатели (свыше 50 %), в то время как аспект «цена» (Price) во всех экспериментах имеет довольно низкие показатели (от 0 до 19%). Это связано с тем, что в большинстве отзывов из представленного корпуса люди уделяют много внимания общему отношению к ресторану, рекомендациям по посещению, качеству еды и сервиса, а интерьер и цена упоминаются не столь часто.

Следует отметить, что характер сверточных моделей позволяет выполнять эффективную параллелизацию вычислений. Так, одна эпоха обучения модели CNN на графическом процессоре GeForce GTX 670 занимает порядка одной секунды, в то время как для модели LSTM одна эпоха занимает от 33 до 35 секунд. Также следует отметить, что во всех тестах моделей использовалось максимальное количество эпох обучения, равное 100, после чего процесс обучения принудительно прекращался. Однако для рекуррентных моделей обучение прекращалось значительно ранее (обычно после 1020 эпох), поскольку ошибка на тестовой выборке начинала возрастать (прием, известный как ранняя остановка обучения, или early stopping). На рис. 6 показано изменение macro F1 для LSTM-модели без ранней остановки.

Можно наблюдать, что наибольшее значение macro F1 достигается при 10 эпохах, что оправдывает небольшое количество эпох при обучении рекуррентных моделей. Тем не менее даже при отсутствии возрастания ошибки на тестовой выборке большое количество эпох обучения не всегда рационально. На рис. 7 показаны усредненные значения модулей градиентов сверточной нейросети.

• • Food Interior * * Price * * Whofe

Service — All

# epoch

Рис. 6. Показатели macro F1 LSTM-сети без ранней остановки обучения

Рис. 7. График изменения усредненных значений градиентов для обучаемых параметров нейросетевой

~ пЖ пС

модели: векторных представлений О и весов сверточного слоя О

Каждая точка на графике соответствует значениям для одного мини-батча (mini-batch) - порции обучаемых данных. Величина dJ/ddW задает среднее значение градиента для векторных представлений слов, которые также являются обучаемыми параметрами нейросетевой модели. Аналогично величина dJ/ddC показывает среднее значение градиента для обучаемых параметров сверточного слоя. Общее количество мини-батчей для 100 эпох составляет около 4100. На графике представлены первые 900 мини-батчей, для остальных 3200 график не меняется (усредненное значение градиента близко к нулю). Таким образом, можно говорить о том, что после 900 мини-батчей нейросеть практически не обучается. В подтверждение этому на рис. 8 представлены графики изменения точности (accuracy) определения аспектных классов на обучающей выборке.

Рис. 8. Изменение точности (accuracy) на обучающей выборке в зависимости от эпохи обучения для каждого

из аспектов

На 22-й эпохе обучения модель полностью подстроилась под обучающую выборку, выдавая стопроцентную точность для всех аспектов. Следовательно, значения функции ошибки для каждого из аспектных классов стали близки к нулю, что повлияло на представленное выше среднее значение градиента, распространяемого на сверточный слой и слой векторных представлений при помощи алгоритма обратного распространения ошибки (Backpropagation, ВР). Рис. 9 показывает изменение точности классификации аспектных классов для тестовой выборки.

Рис. 9. Изменение точности на тестовой выборке в зависимости от эпохи обучения для каждого из аспектов

Можно также наблюдать фиксацию значений точности для каждого из аспектов. Представленные на графике значения точности (50-70%) позволяют судить о том, что в целом достаточно большое количество примеров тестовой выборки были распознаны правильно. Разумеется, F1-мера в большей степени делает упор на то, чтобы каждый

из классов распознавался правильно, поэтому показатели macro F1 меньше.

В таблице представлено сравнение лучших результатов каждой из рассмотренных моделей с результатами участников SentiRuEval-2015.

Таблица

Сравнение macro F1 результатов моделей с результатами участников SentiRuEval-2015

Модель Food Interior Price Whole Service avg

baseline 0,278932 0,284501 0,243902 0,278892 0,273556 0,271957

Run id 4 1 Run id 10_1 Run id 12_1 Run id 6 1 0,452659 0,418765 0,205247 0,166988 0,48625 0,365666 0,2836 0,119124 0,453976 0,340121 0,24766 0 0,386748 0,27985 0,210764 0,090633 0,510923 0,459803 0,311111 0,127709 0,458111 0,372841 0,251676 0,100891

CNN RNN GRU LSTM 0,273719 0,374054 0,402185 0,445086 0,234375 0,211039 0,269380 0,269479 0,171429 0,147655 0,111111 0,175148 0,509782 0,372873 0,530265 0,495748 0,438904 0,414872 0,474974 0,466967 0,325642 0,304099 0,357583 0,370485

К сожалению, лишь четверо участников представили свои результаты в задаче определения тональности отзывов по отношению к аспектным категориям. Лучший результат 45,8% принадлежит П. Блинову и Е. Котельникову [1], метод которых основан на семантической близости векторных представлений слов. Авторство остальных участников определить не удалось, однако метод участника под номером 10_1 в общей сводке представлен как инженерно-лингвистический метод со словарями и правилами.

Анализируя результаты целиком, можно выделить следующее. Все нейросетевые модели прошли baseline-отметку, в то время как двое участников SentiRuEval-2015 не смогли ее преодолеть. Модели CNN, GRU и LSTM определяют тональность аспекта «объект в целом» (Whole) лучше всех других методов. LSTM-модель лишь на 0,2% уступила второму месту (инженерно-лингвистический метод).

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

Значимость данного результата в наибольшей степени состоит в том, что метод машинного обучения, располагающий всего 201 примером в обучающей выборке и не имеющий никаких семантических либо синтаксических настроек для работы с русским языком, продемонстрировал такой же результат, как и метод, основанный на построении лингвистических правил и тональных словарей. При этом работа по составлению набора правил и словарей связана с необходимостью использования экспертных лингвистических знаний и включает в себя множество часов ручного труда, проверок и перепроверок с привлечением, вероятнее всего, целой группы исследователей.

Другим интересным фактом является то, что всего в корпусе отзывов о ресторанах представлено 8846 уникальных токенов (словоформ, знаков препинания), в то время как обучающая выборка содержит 5622 уникальных токена. Это означает, что в процессе тестирования 3224 токена были абсолютно неизвестными для нейросетевой модели и имели случайным образом инициализированные векторные представления. Иными словами, тестовая выборка более чем на треть состояла из абсолютно неизвестных токенов, которые формировали 203 уникальных текстовых фрагмента.

Укажем направления дальнейших исследований, нацеленных на улучшение показателей точности решения задачи. Одним из направлений является использование векторных представлений, предварительно обученных с помощью методов word2vec [3] или GloVe [13]. Для обучения следует использовать большой объем текстовых данных, включающих в себя множество словоупотреблений, в том числе с ошибками и опечатками.

Другим направлением является совершенствование архитектуры нейросетевой мо-

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

Кроме того, весьма важным фактором является размер обучающей выборки. Так, использованный в данной работе объем, составляющий 201 пример, является крайне малым для обучения достаточно хорошей нейросетевой модели, на которую возлагается обязанность по распознаванию и обработке всех семантических и синтаксических взаимосвязей русского языка. И вполне естественным является предположение, что увеличение объемов обучающих данных приведет к увеличению показателей точности.

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

СПИСОК ЛИТЕРАТУРЫ

1. Blinov, P. Semantic similarity for aspect-based sentiment analysis / P. Blinov, E. Kotelnikov // Computational Linguistics and Intellectual Technologies: Papers from the Annual International Conference «Dialogue» (2015). - 2015. - Issue 14. - Vol. 2. - P. 12-21.

2. Deng, L. Deep Learning: Methods and Applications / L. Deng, Y. Dong // Foundations and Trends in Signal Processing. - 2014. - Vol. 7. - P. 197-387.

3. Distributed representations of words and phrases and their compositionality / T. Mikolov [et al.] // Advances in Neural Information Processing Systems. - 2013. - P. 3111-3119.

4. Elman, J. Finding structure in time / J. Elman // Cognitive science. - 1990. - Vol. 14. - № 2. - P. 179-211.

5. Empirical evaluation of gated recurrent neural networks on sequence modeling / J. Chung [et al.] // arXiv preprint arXiv:1412.3555. - 2014.

6. Hochreiter, S. Long short-term memory / S. Hochreiter, J. Schmidhuber // Neural computation. - 1997. -Vol. 9. - № 8. - P. 1735-1780.

7. Jordan, M. Serial order: A parallel distributed processing approach / M. Jordan // Advances in psychology. -1997. - Vol. 121. - P. 471-495.

8. Kim, Y. Convolutional neural networks for sentence classification / Y. Kim // arXiv preprint arXiv: 1408.5882. -2014.

9. Lakkaraju, H. Aspect Specific Sentiment Analysis using Hierarchical Deep Learning / H. Lakkaraju, R. Socher, C. Manning // NIPS Workshop on Deep Learning and Representation Learning. - 2014.

10. Natural language processing (almost) from scratch / R. Collobert [et al.] // The Journal of Machine Learning Research. - 2011. - Vol. 12. - P. 2493-2537.

11. On the properties of neural machine translation: Encoder-decoder approaches / K. Cho [et al.] // arXiv preprint arXiv:1409.1259. - 2014.

12. Pang, B. Opinion mining and sentiment analysis / B. Pang, L. Lee // Foundations and trends in information retrieval. - 2008. - Vol. 2. - P. 1-135.

13. Pennington, J. Glove: Global vectors for word representation / J. Pennington, R. Socher, C. Manning // Proceedings of the Empiricial Methods in Natural Language Processing (EMNLP 2014). - 2014. - Vol. 12.

14. Recurrent neural network based language model / T. Mikolov [et al.] // INTERSPEECH 2010: 11th Annual Conference of the International Speech Communication Association, Makuhari, Chiba, Japan (September 26-30, 2010). - 2010. - P. 1045-1048.

15. SentiRuEval: тестирование систем анализа тональности текстов на русском языке по отношению к заданному объекту / Н. В. Лукашевич [и др.] // Компьютерная лингвистика и интеллектуальные технологии: по материалам ежегодной международной конференции «Диалог» (г. Москва, 27-30 мая 2015 г.). В 2 т. Т. 2. Доклады специальных секций. - М.: Изд-во РГГУ, 2015. - Вып. 14 (21). - С. 3-14.

16. «Диалог» - международная конференция по компьютерной лингвистике. - URL: http://www.dialog-21.ru/.

17. Лукашевич, Н.В. Открытое тестирование систем анализа тональности на материале русского языка / Н.В. Лукашевич, И.И. Четверкин // Искусственный интеллект и принятие решений. - 2014. - № 1. - С. 25-33.

18. Подвесовский, А.Г., Проблемы и особенности автоматизации мониторинга социальных сетей и интеллектуальной обработки пользовательских сообщений / А.Г. Подвесовский, Д.В. Будыльский // Вестник Брянского государственного технического университета. - 2014. - № 4 (44). - С. 146-152.

Материал поступил в редколлегию 8.04.15.