Аспектно-ориентированный анализ тональности отзывов
|
Перечень сокращений и обозначений 4
Термины и определения 5
Введение 7
Постановка задачи 10
Глава 1. Обзор литературы 11
1.1. Извлечение аспектных терминов 11
1.1.1 Статистический 11
1.1.2 Лингвистический 12
1.1.3 Машинное обучение 13
1.2. Определение тональности 15
Глава 2. Обработка данных 17
2.1. Проверка орфографии 17
2.2. Векторное представление слов 18
2.3. Синтаксическая структура предложения 20
2.3.1 Грамматика составляющих 20
2.3.2 Грамматика зависимостей 21
2.4. Универсальные зависимости 22
Глава 3. Рекуррентные нейронные сети 24
3.1. Простейшая RNN 24
3.2. LSTM 27
3.2.1 Bi LSTM 28
3.2.2 Tree LSTM 29
Глава 4. Извлечение аспектных терминов 31
4.1. Аспектные категории предложения 31
4.2. Извлечение и классификация аспектных терминов 34
Глава 5. Определение тональности 36
5.1. Архитектура нейронной сети 36
5.2. Обучение сети 38
Заключение 40
Список литературы 41
Термины и определения 5
Введение 7
Постановка задачи 10
Глава 1. Обзор литературы 11
1.1. Извлечение аспектных терминов 11
1.1.1 Статистический 11
1.1.2 Лингвистический 12
1.1.3 Машинное обучение 13
1.2. Определение тональности 15
Глава 2. Обработка данных 17
2.1. Проверка орфографии 17
2.2. Векторное представление слов 18
2.3. Синтаксическая структура предложения 20
2.3.1 Грамматика составляющих 20
2.3.2 Грамматика зависимостей 21
2.4. Универсальные зависимости 22
Глава 3. Рекуррентные нейронные сети 24
3.1. Простейшая RNN 24
3.2. LSTM 27
3.2.1 Bi LSTM 28
3.2.2 Tree LSTM 29
Глава 4. Извлечение аспектных терминов 31
4.1. Аспектные категории предложения 31
4.2. Извлечение и классификация аспектных терминов 34
Глава 5. Определение тональности 36
5.1. Архитектура нейронной сети 36
5.2. Обучение сети 38
Заключение 40
Список литературы 41
В современной сети широко распространены различные платформы, где пользователи (как зарегистрированные так и анонимные) могут оставлять свои отзывы о товарах или услугах. Эта информация позволяет другим потенциальным покупателям при выборе между различными поставщиками товаров и услуг полагаться не только на их фактические характеристики, но и мнение других потребителей.
И для подавляющего большинства пользователей эта информация значима. Как показывают результаты опросов[1],[2] 9 из 10 покупателей признают, что пользовательский контент влияет на их решения о покупке. Такие результаты во многом связаны с тем, что техническая характеристика товара не дает представления об удобстве пользования им. В процессе эксплуатации в нем могут быть выявлены значительные дефекты. Поэтому зачастую пользователь нацелено просматривает негативные отзывы (на большинстве платформ им соответствуют отзывы с низкими оценками), чтобы выявить недостатки товара и определить являются ли эти недостатки существенными для него.
Так как отзывы оказывает значительное влияние на решение о покупке потребителя, то они так же важны и для производителя. Отзывы служат механизмом обратной связи и показывают, какие особенности продукта нравятся пользователям, и потому их стоит оставить неизменными в дальнейшем развитии линейки товаров, а какие аспекты продукта, наоборот, необходимо дорабатывать.
Но многочисленность отзывов, отсутствие в них структуры не позволяет вручную извлекать из них интересующую информацию. Отсюда возникает необходимость в инструментах автоматического определения аспектных категорий объекта, выражений, характеризующих заданный аспект, и тональности обнаруженного выражения. Эти задачи являются подзадачами аспектно-ориентированного анализа тональности.
Эта задача была представлена в рамках международного семинара SemEval-2016 [?], посвященного семантическому анализу. Организаторами соревнования был предоставлен набор отзывов1 из определенных предметных областей (рестораны, автомобили, ноутбуки и т.д.). Для каждой предметной области был выбран набор аспектных категорий, которые представляют собой пару: сущность и атрибут (в таблице 1 строки представляют множество сущностей, а столбцы множество атрибутов. Если пара сущность-атрибут является аспектной категорией, то в соответствующей ячейке стоит галочка, иначе - крестик).
Таблица 1: Сущности и атрибуты аспектных категорий в отзывах о ресторанах.
Сущности | Атрибуты
категорий | Общее | Цена | Качество | Оформление | Прочее
Обстановка | X | v | v | v | v
Напитки | v | X | X | X | v
Еда | v | X | X | X | v
Расположение | X | v | v | v | v
Ресторан | X | X | v | v | X
Сервис | X | v | v | v | v
Конец таблицы 1.
В рамках семина задача рассматривалась в двух форматах: анализ на уровне предложений и всего отзыва. В данной работе рассматривается только первый формат.
Каждое упоминание в отзыве того или иного аспекта отмечалось экспертом в виде тройки: аспектный термин, категория аспекта, тональность. В дальнейшем будем называть такие тройки мнениями. Тональность могла быть представлена одним из четырех значений: положительная, нейтральная, отрицательная и конфликт 2. Например, в предложении: "Резюме следующее: место в целом отличное, цены не кусаются, но следует серьезно задуматься о замене персонала..." выделены следующие тройки: (место; ресторан-общее; положительный), (персонала; сервис-общее; отрицательный).
Задачу аспектно-ориентированного анализа тональности можно сформулировать как извлечение из предложения мнений. Тогда ее можно разделить на подзадачи:
1. Извлечение аспектных терминов - для полученного предложения выделить слова, посвященные какой-то из заданных аспектных категорий и определить какой3.
2. Определение тональности - для заданного предложения, для которого указаны пары: категория аспекта и целевой объект. Требуется определить тональность каждой такой пары (положительная, нейтральная, негативная, конфликт).
И для подавляющего большинства пользователей эта информация значима. Как показывают результаты опросов[1],[2] 9 из 10 покупателей признают, что пользовательский контент влияет на их решения о покупке. Такие результаты во многом связаны с тем, что техническая характеристика товара не дает представления об удобстве пользования им. В процессе эксплуатации в нем могут быть выявлены значительные дефекты. Поэтому зачастую пользователь нацелено просматривает негативные отзывы (на большинстве платформ им соответствуют отзывы с низкими оценками), чтобы выявить недостатки товара и определить являются ли эти недостатки существенными для него.
Так как отзывы оказывает значительное влияние на решение о покупке потребителя, то они так же важны и для производителя. Отзывы служат механизмом обратной связи и показывают, какие особенности продукта нравятся пользователям, и потому их стоит оставить неизменными в дальнейшем развитии линейки товаров, а какие аспекты продукта, наоборот, необходимо дорабатывать.
Но многочисленность отзывов, отсутствие в них структуры не позволяет вручную извлекать из них интересующую информацию. Отсюда возникает необходимость в инструментах автоматического определения аспектных категорий объекта, выражений, характеризующих заданный аспект, и тональности обнаруженного выражения. Эти задачи являются подзадачами аспектно-ориентированного анализа тональности.
Эта задача была представлена в рамках международного семинара SemEval-2016 [?], посвященного семантическому анализу. Организаторами соревнования был предоставлен набор отзывов1 из определенных предметных областей (рестораны, автомобили, ноутбуки и т.д.). Для каждой предметной области был выбран набор аспектных категорий, которые представляют собой пару: сущность и атрибут (в таблице 1 строки представляют множество сущностей, а столбцы множество атрибутов. Если пара сущность-атрибут является аспектной категорией, то в соответствующей ячейке стоит галочка, иначе - крестик).
Таблица 1: Сущности и атрибуты аспектных категорий в отзывах о ресторанах.
Сущности | Атрибуты
категорий | Общее | Цена | Качество | Оформление | Прочее
Обстановка | X | v | v | v | v
Напитки | v | X | X | X | v
Еда | v | X | X | X | v
Расположение | X | v | v | v | v
Ресторан | X | X | v | v | X
Сервис | X | v | v | v | v
Конец таблицы 1.
В рамках семина задача рассматривалась в двух форматах: анализ на уровне предложений и всего отзыва. В данной работе рассматривается только первый формат.
Каждое упоминание в отзыве того или иного аспекта отмечалось экспертом в виде тройки: аспектный термин, категория аспекта, тональность. В дальнейшем будем называть такие тройки мнениями. Тональность могла быть представлена одним из четырех значений: положительная, нейтральная, отрицательная и конфликт 2. Например, в предложении: "Резюме следующее: место в целом отличное, цены не кусаются, но следует серьезно задуматься о замене персонала..." выделены следующие тройки: (место; ресторан-общее; положительный), (персонала; сервис-общее; отрицательный).
Задачу аспектно-ориентированного анализа тональности можно сформулировать как извлечение из предложения мнений. Тогда ее можно разделить на подзадачи:
1. Извлечение аспектных терминов - для полученного предложения выделить слова, посвященные какой-то из заданных аспектных категорий и определить какой3.
2. Определение тональности - для заданного предложения, для которого указаны пары: категория аспекта и целевой объект. Требуется определить тональность каждой такой пары (положительная, нейтральная, негативная, конфликт).
В данной работе было проведено исследование методов машинного обучения для задачи аспектно-ориентированного анализа отзывов на русском языке. Рассмотрены существующие методы извлечения аспектных терминов и определения тональности.
Построен конвейер для решения задачи аспектно-ориентированного анализа, который состоит из следующих этапов1:
• предобработка текстов
• разбиение на токены
• проверка орфографии
• построение деревьев зависимости предложений
• извлечение и классификация аспектных терминов
• определение аспектных категорий предложения
• определение аспектных категорий отдельных слов
• объединение результатов классификаторов для определения явных и неявных мнений
• определение тональности аспектного термина
Описана работа рекуррентных нейронных сетей. Предложена и реализована архитектура нейронной сети, состоящей из Bi LSTM и Tree LSTM слоев, для определения тональности аспектного термина. Построенные классификаторы превосходят метрики качества контрольных алгоритмов.
Построен конвейер для решения задачи аспектно-ориентированного анализа, который состоит из следующих этапов1:
• предобработка текстов
• разбиение на токены
• проверка орфографии
• построение деревьев зависимости предложений
• извлечение и классификация аспектных терминов
• определение аспектных категорий предложения
• определение аспектных категорий отдельных слов
• объединение результатов классификаторов для определения явных и неявных мнений
• определение тональности аспектного термина
Описана работа рекуррентных нейронных сетей. Предложена и реализована архитектура нейронной сети, состоящей из Bi LSTM и Tree LSTM слоев, для определения тональности аспектного термина. Построенные классификаторы превосходят метрики качества контрольных алгоритмов.





