Введение
Автоматический анализ тональности текста представляется одной из активно развивающихся областей компьютерной лингвистики и интеллектуального анализа текста. Результатом анализа является извлечение из него мнений и эмоций по отношению к обрабатываемому тексту.
Попытки подобного анализа начались практически сразу же с появлением систем автоматического анализа текстов. Особое развитие этот вид анализа получил в последние годы в связи с распространением интернет-технологий, в частности с ростом популярности социальных сетей.
Основной задачей в анализе тональности является присвоение данному документу некоторой эмоциональной характеристики (например, является ли описанное в документе мнение позитивным, негативным или нейтральным).
Автоматическое распознавание тональности текстов находит широкое применение в различных сферах деятельности человека [1, c. 127–179].
1. Анализ отзывов о работе торговых сетей. Результаты анализа необходимы для определения предпочтений потребителей по разным видам продукции, степени удовлетворенности качеством услуг и т.д.
2. Сфера финансовых услуг. По характеру высказанных мнений и настроений определяются предпочтения пользователей по выбору банков, кредитных организаций, возможности будущих отношений с определенными финансовыми организациями.
3. Определение тенденций спроса и предложений различных торговых брендов. При этом анализируются отзывы о ценах и качестве товаров с выдачей последующих рекомендаций о возможности или необходимости их покупки.
4. Анализ новостей. Результатом анализа, как правило, является консолидированное мнение относительно произошедших общественных или политических событий.
5. Политика. Анализируются данные об отношении населения к тем или иным политическим деятелям или политическим событиям. Результаты анализа необходимы для организации предвыборных кампаний как отдельных партий, так и конкретных кандидатов.
6. Социология. Анализироваться могут как данные из социальных сетей, так и данные с сайтов, содержащих статистическую информацию (например, демографическую структуру страны (региона, области), уровень потребления различных видов товаров, услуг и продуктов и т.д.).
7. Извлечение несистемной информации. В первую очередь анализируются данные социальных сетей на предмет тенденций общественного мнения относительно общественных и политических процессов и событий.
8. Обратная связь с пользователями. Производится анализ данных социальных сетей, но в первую очередь анализируются запросы и отзывы пользователей о работе государственных и коммерческих структур.
9. Государственная и общественная безопасность. Производится анализ содержания коммерческих и государственных сайтов и частных блогов на предмет антигосударственной или антиобщественной деятельности – распространение наркотиков, экстремистские высказывания, дискредитация государственной политики и т.д.
Все технологии анализа тональности можно разделить на три группы [2].
Первая группа – подходы на основе правил [3–5]. Их характерной особенностью является использование созданных вручную эмоционально размеченных словарей и правил использования данных словарей. Эти правила определяют класс текста на основе эмоциональных ключевых слов и их совместного использования с другими ключевыми словами.
Вторая группа – подходы на основе машинного обучения [6, 7]. Исторически первыми алгоритмами являются: наивный байесовский классификатор, деревья решений, логистическая регрессия и метод опорных векторов [8, с. 126–130]. В последнее время все чаще применяются методы глубокого обучения, в которых используются сверточные и рекуррентные нейросети, а также методы переноса обучения.
Третья группа – методы анализа на основе на NLP-технологий [9–11].
В зависимости от целей исследования возможны различные варианты классификации текстов. В самом простом случае задача сводится к бинарной классификации, т.е. делению на тексты с положительной и отрицательной тональностью. В зависимости от специфики текста может быть добавлена категория нейтральных текстов. Отнесение текста к той или иной категории обычно осуществляется с использованием дополнительных словарей типа «хорошие» и «плохие» слова или слова, связанные с определенной эмоцией, – «счастливые» или «печальные» слова. Для определения уровня эмоциональности могут быть использованы различные числовые шкалы (например, по количеству позитивных и негативных слов). В результате текст может быть охарактеризован некоторой числовой шкалой, например от –10 для полностью негативных до +10 для полностью позитивных.
Цель исследования – выявление возможностей стандартных методов компьютерной лингвистики для определения тональности отзывов о работе торговых сетей.
Материалы и методы исследования
В настоящем исследовании применен метод «Bag of Words». Основные этапы данного метода выглядят следующим образом.
1. Подготовка данных: необходимо собрать и подготовить данные для обучения модели анализу тональности. Это может быть набор текстовых данных с разметкой, где каждое высказывание классифицировано как положительное, отрицательное или нейтральное.
2. Разбиение предложений на отдельные слова.
3. Удаление стоп-слов. К ним относятся местоимения, предлоги и союзы. Они, как правило, не несут никакой эмоциональной окраски и могут быть удалены. Также удаляются междометия, так как они достаточно часто несут эмоциональную окраску, но в равной степени как положительную, так и отрицательную.
4. Замена слов на базовые синонимы.
5. Извлечение необходимых признаков (например, формирование списков ключевых слов или их частотностей).
Объектом исследования являлся массив отзывов о работе различных торговых сетей [12]. Общее количество отзывов – 1000.
Результаты исследования и их обсуждение
Основные особенности отзывов:
− отзыв состоит из нескольких предложений;
− анализ каждого отзыва показывает, что он может состоять из предложений различной эмоциональной окраски – положительной, отрицательной и нейтральной.
Поскольку степень «положительности» или «отрицательности» оценить очень трудно и эта оценка чисто индивидуальная, то принято решение о простой фиксации эмоциональности каждого предложения в виде –1, 0 или +1.
В итоге общая тональность каждого отзыва определялась как набор из 2 чисел.
Первое число показывает количество предложений с положительной оценкой, деленное на количество предложений в отзыве, второе – количество предложений с отрицательной оценкой, также деленное на количество предложений в отзыве.
Перед началом непосредственной обработки весь массив отзывов был подвергнут ручной разметке. При этом оценивалась эмоциональность каждого предложения отзыва. Поскольку усредненная длина отзывов составляет 6–7 предложений (совсем точно – 6,51), то фактически вручную была определена тональность примерно 6500 предложений.
Исходя из полученных результатов, все отзывы были разбиты на группы согласно таблице 1. Приведенные в таблице 1 цифры показывают достаточное равномерное распределение отзывов по группам, что свидетельствует о достаточности статистики обрабатываемого объема данных. Следует отметить, что группировка произведена в соответствии с поставленной задачей и в общем носит достаточно приближенный характер.
Последующая обработка состояла из следующих этапов.
1. Из всех предложений были удалены так называемые стоп-слова.
2. Произведена замена слов на базовые словоформы. Например, все вариации слова «стол» («столе», «столы», «столами», «столах», «столом» и т.д.) были заменены словом «стол». При этом использовалась база данных (БД) базовых словоформ объемом более 2 млн слов.
3. Произведена замена слов на базовые синонимы. Например, слова «прекрасный», «очаровательный», «прекрасный», «прелестный», «хорошенький» и иные были заменены на слово «красивый». При этом использовалась БД синонимов объемом примерно в 70 000 слов.
После завершения данного этапа были выявлены дубликаты предложений из различных отзывов. При этом дубликатами являлись только положительные отзывы из групп 1 и 4. Из этого следует очевидное предположение: если какое-то предложение в отзыве является дубликатом, то и весь отзыв является дубликатом.
В результате из всего массива данных было удалено примерно 13% отзывов.
Откорректированные данные по составу и структуре отзывов подробно приведены в таблице 2.
Таблица 1
Процентный состав групп отзывов с различным процентным соотношением предложений разной тональности по результатам ручной разметки (x1 – положительная тональность, x2 – отрицательная тональность, x3 – нейтральная тональность)
Группа |
Критерий разделения на группы |
Содержание в массиве отзывов, % |
1 |
x1>x2 and x3>=50% |
21 |
2 |
x1<x2 And x3>=50% |
22 |
3 |
x1 = x2 And x3>=50% |
5 |
4 |
x1> x2 And x3 <50% |
23 |
5 |
x1<x2 And x3<50% |
26 |
6 |
x1 = x2 And x3<50% |
3 |
Всего |
100 |
Примечание: составлено авторами.
Таблица 2
Процентный состав групп отзывов с различным процентным соотношением предложений разной тональности после удаления дубликатов (x1 – положительная тональность, x2 – отрицательная тональность, x3 – нейтральная тональность)
Группа |
Критерий разделения на группы |
Содержание в массиве отзывов, % |
1 |
x1>x2 and x3>=50% |
15 |
2 |
x1<x2 And x3>=50% |
22 |
3 |
x1 = x2 And x3>=50% |
5 |
4 |
x1> x2 And x3 <50% |
16 |
5 |
x1<x2 And x3<50% |
26 |
6 |
x1 = x2 And x3<50% |
3 |
Всего |
87 |
Примечание: составлено авторами.
Таблица 3
Результаты определения тональности текстов на основе сформированных словарей, %
Автоматически определенная тональность текста |
||||
Положительная |
Отрицательная |
Нейтральная |
||
Тональность текста по результатам ручной разметки |
Положительная |
72 |
5 |
23 |
Отрицательная |
8 |
77 |
15 |
|
Нейтральная |
16 |
5 |
81 |
Примечание: составлено авторами.
Таблица 4
Совпадение результатов ручной и автоматической разметки отзывов (x1 – положительная тональность, x2 – отрицательная тональность, x3 – нейтральная тональность)
Группа |
Критерий разделения на группы |
Совпадение, % |
1 |
x1>x2 and x3>=50% |
78 |
2 |
x1<x2 And x3>=50% |
85 |
3 |
x1 = x2 And x3>=50% |
82 |
4 |
x1> x2 And x3 <50% |
91 |
5 |
x1<x2 And x3<50% |
88 |
6 |
x1 = x2 And x3<50% |
69 |
Примечание: составлено авторами.
Полученный результат подтверждает тот факт, что часть отзывов пишут менеджеры соответствующих компаний или специально нанятые люди – реврайтеры (rewriters). Кроме того, этот результат показывает, насколько важным и обязательным является этап предварительной подготовки и фильтрации данных. Поэтому процедура выявления и удаления дубликатов должна быть одной из обязательных процедур предварительного отбора данных для дальнейшей автоматической обработки.
Непосредственно для автоматической обработки были выполнены следующие шаги.
1. Из оставшегося массива данных случайным образом было выбрано 80% отзывов и на основе входящих в них предложений были составлены частотные словари используемых в них слов – отдельный словарь для положительных отзывов и отдельный словарь – для отрицательных.
2. Сформированные словари были проверены на пересечение (на наличие одинаковых слов). По результатам этой операции из обоих словарей были удалены одинаковые слова.
6. С помощью полученных словарей была произведена классификация предложений оставшихся необработанных 20% отзывов.
Результаты классификации приведены в таблице 3.
Как следует из данных таблицы 3, минимально правильная классификация предложений имеет место в 72% случаев. Для описываемой задачи данное значение считается достаточно хорошим результатом [13–15].
Полученные данные были использованы для окончательной группировки отзывов по степени тональности. Основные результаты приведены в таблице 4.
Приведенные в таблице 4 результаты показывают очень высокую эффективность применения стандартных методов компьютерной лингвистики для описываемой задачи. Такая эффективность объясняется, во-первых, тем, что использовались словари, характерные для данного типа текстов, и, во-вторых, относительно приближенным разбиением отзывов на группы. Также эффективность проявляется в том, что даже в случае неточности в определении тональности одного или нескольких предложений соотношение положительных и отрицательных предложений в отзыве остается тем же самым.
Заключение
Проведенное исследование подтвердило эффективность применения стандартных методов компьютерной лингвистики для анализа тональности текста и, в частности, отзывов о торговых сетях. Использование метода «Bag of Words» позволило достичь точности классификации до 90%.
Кроме того, использование данного метода позволяет выявлять дубликаты предложений при 100%-ном совпадении по словарному составу. Этот результат показывает, что этап выявления дубликатов должен быть практически обязательным этапом предварительной обработки данных. В дальнейшем перспективным направлением является комбинирование метода «Bag of Words» с более сложными NLP-технологиями, такими как глубокое машинное обучение, для повышения точности анализа и учета контекстуальных особенностей отзывов. Это позволит более точно оценить эмоциональную окраску текстов и расширить возможности применения анализа тональности в маркетинговых исследованиях и управлении репутацией торговых сетей.
Библиографическая ссылка
Ванюлин А.Н., Алексеева Н.Р. ОПРЕДЕЛЕНИЕ ТОНАЛЬНОСТИ ТЕКСТОВ МЕТОДАМИ КОМПЬЮТЕРНОЙ ЛИНГВИСТИКИ: АНАЛИЗ ОТЗЫВОВ О ТОРГОВЫХ СЕТЯХ // Современные наукоемкие технологии. 2025. № 5. С. 27-31;URL: https://top-technologies.ru/ru/article/view?id=40386 (дата обращения: 12.06.2025).
DOI: https://doi.org/10.17513/snt.40386