Назад в библиотеку

Моделирование анализа тональности: LLM и техники аугментации

Автор: Guillem Senabre Prades
Источник: Prades G. S. Modelling Sentiment Analysis: LLMs and data augmentation techniques / G. S. Prades. — 2023. — arXiv: 2311 . 04139 [cs.CL]. — URL: https://arxiv.org/abs/2311.04139. (дата обращения: 20.10.2024).
Перевод выполнил: М.К. Слипенко

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

Не так давно анализ тональности полагался на условные правила, лексиконы и простые алгоритмы машинного обучения. Однако рост глубокого обучения и введение больших языковых моделей (LLM) революционизировали эту область, позволив применять более точные и сложные техники анализа тональности. LLM, такие как BERT, RoBERTa (Liu et al., 2019) и XLNet (Yang et al., 2020), продемонстрировали выдающуюся производительность в различных задачах NLP, включая анализ тональности.

Несмотря на то что LLM или предобученные языковые модели (PTM) доказали свою мощь в задачах NLP, они нуждаются в дополнительном обучении для ориентации на конкретную область с использованием специфических обучающих наборов данных в этой области. Переобучение PLM называется fine-tuning, и существует множество техник для этого.

Если обучающий набор данных мал, fine-tuning PLM может не стоить того, поскольку требует времени и ресурсов, а улучшения могут не оправдать ожиданий. Поэтому поиск более крупных наборов данных или добыча новых данных может быть решением, хотя это не всегда возможно. Именно поэтому рекуррентные техники аугментации данных, такие как “nlpaug”, и генерация синтетических данных с помощью GAN или других PLM могут быть хорошим путем.

Мотивированный прогрессом в LLM, это исследование направлено на предоставление исследовательского анализа между различными PLM, такими как BERT, RoBERTa и XLNet, для подхода к задаче бинарной классификации тональности с небольшим обучающим набором данных, содержащим 2000 значений, и набором для предсказания с 11000 значениями. Кроме того, исследуется влияние техник аугментации данных, конкретно с различными техниками из библиотеки “nlpaug” и создания синтетических данных с GPT-2. Оценивая производительность каждой модели на Kaggle, это исследование стремится предоставить insights о сильных и слабых сторонах, а также потенциальных областях улучшения для каждого алгоритма.

Статья будет разделена на несколько разделов: набор данных в разделе 1, методология или экспериментальный поток в разделе 2, обзор различных LLM, а также техник аугментации, используемых в разделе 3, представление результатов в разделе 4, обсуждение и сводка ключевых концепций в разделе 5, и в разделе 6 читатель найдет выводы исследования.

Набор данных

Нам предоставлен обучающий набор данных и набор для валидации. Обучающий набор данных имеет две характеристики: “TEXT” с 2000 предложениями и “LABEL”, содержащий положительную (‘1’) или отрицательную (‘0’) тональность предложений. Кроме того, длина предложений не превышает 50 токенов.

Набор для валидации содержит 11000 предложений для предсказания в одном столбце под названием “TEXT”.

Отрицательная разница в объеме данных между наборами будет решена с помощью техник аугментации данных.

Методология

С появлением Transformers (Vaswani et al., 2017) и PLM, таких как BERT (Devlin et al., 2019), область анализа тональности заметно выросла.

Именно поэтому в этом исследовании конвейер будет основан на LLM, и цель — найти наиболее подходящий для конкретной задачи, исследуя техники fine-tuning и аугментации данных.

В этой статье в основном используются RoBERTa (Liu et al., 2019) и XLNet (Yang et al., 2020) для работы с задачей бинарной классификации, поскольку они доказали лучшую производительность, чем BERT, в большинстве случаев.

В качестве базовой линии RoBERTa и XLNet будут импортированы с использованием библиотеки simpletransformers (https://simpletransformers.ai/). Эта библиотека предоставляет множество моделей, готовых к использованию в задачах NLP, и очень удобный и простой в использовании фреймворк для их реализации.

Как упоминалось ранее, обучающий набор данных содержит 2000 — небольшой объем данных по сравнению с 11000 предложениями для предсказания. Для fine-tuning PLM можно подумать, что чем больше объем специфических данных в области, тем лучше производительность, и в каком-то смысле это верно. Но если нам не хватает последовательных и хороших данных, их нужно создать как можно точнее, как оригинальные. Поэтому в этой статье используются две техники аугментации данных, сильно отличающиеся друг от друга, но служащие одной цели. Nlpaug — это библиотека для аугментации данных, которая предоставляет 15 техник, хотя в этой статье используется только одна из них — замена синонимами, поскольку она доказала свою эффективность (Thakur et al., 2021). Другая техника использует GPT-2 как создателя синтетических данных на основе оригинальных данных.

Поскольку вычислительные и временные затраты, необходимые для переобучения LLM для конкретной задачи, довольно высоки, можно применить некоторые техники для снижения этих проблем. Этот эксперимент будет использовать fine-tuning и soft prompting (Qin and Eisner, 2021). Soft prompt направлен на руководство PLM в задаче, которую мы хотим, чтобы она выполняла, в форме промпта. Этот промпт будет конкатенирован в начале каждого предложения и вместе будет использован для fine-tuning модели, давая более точное представление о том, каким должен быть вывод. Эксперимент проводился как с несколькими промптами, так и с одним.

Чтобы проводить сравнения, RoBERTa и XLNet были протестированы также без аугментации данных и без soft prompts. Кроме того, при использовании этих техник тестировались разные значения, такие как количество аугментаций и качество и количество soft prompts.

После перечисления инструментов и методов, которые будут использоваться в исследовании, читатель может увидеть ниже экспериментальный поток, который будет следовать для получения результатов.

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

Рисунок 1. Экспериментальный поток
Рисунок 1. Экспериментальный поток

Результаты и обсуждение

Поскольку объем обучающих данных был мал, все они были использованы для fine-tuning моделей. Это означает, что не было разделения данных на обучающий и тестовый наборы. Поэтому метрикой, используемой в этом эксперименте для оценки производительности модели, является точность, предоставляемая Kaggle после предсказания набора для валидации. Только с этой метрикой мы можем сравнить все используемые модели и увидеть, кто лучше работает на наборе для валидации. Поскольку тестировались многие аугментации, а также многие промпты и значения гиперпараметров, ниже будет показана таблица для каждого теста PLM.

PLM
ТехникиRoBERTa-LRoBERTa
Default0.742040.70113
HP testing0.742040.74863
nlpaug = 10.75363-
nlpaug = 20.77659-
nlpaug = 30.75340-
nlpaug = 40.76931-
SP = 10.7775-
SP = 70.77181-
GPT = 2 + SP0.7834-
GPT = 4 + SP0.72863-
GPT+nlpaug+SP0.7809-
Таблица 1. Результаты RoBERTa с различными параметрами и техниками
PLM
ТехникиXLNet
Default-
nlpaug = 30.73886
nlpaug = 160.7184
GPT = 20.7209
Таблица 2. Результаты XLNet с различными техниками и параметрами

XLNet предоставил state-of-the-art результаты в других исследованиях (Pipalia et al., 2020), но не показал себя так же хорошо, как модели, связанные с BERT, в этом. Были опробованы разные объемы аугментаций в обеих моделях, но при аугментации более 2 раз производительность не улучшается и даже снижается.

После попытки GPT для аугментации данных без Soft Prompting результаты не были лучше, чем nlpaug с 2 аугментациями, хотя после смешивания аугментаций GPT и soft prompting результат был лучшим из полученных. С другой стороны, при смешивании nlpaug и GPT аугментаций результат не был лучше.

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

Кроме того, производительность моделей повысилась с одним soft prompt, но увеличение количества промптов не повысило точность модели.

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

Вывод

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

Было замечено, что soft prompting и техники аугментации данных, как с nlpaug, так и с GPT-2, были полезны, хотя если данные слишком сильно увеличивались или использовалось более одного промпта, производительность негативно влияла.

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

Комментарии

Код и наборы данных, использованные, разработанные и прокомментированные в этой статье, можно найти в следующем репозитории GitHub:
https://github.com/BakiRhina/Enhancing-Sentiment-analysis-with-LLM-and-data-augmentation-techniques

Ссылки