Метод переноса обучения через аугментации в задачах классификации текста

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 20.08.2020
Размер файла 1,9 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Выпускная квалификационная работа

Метод переноса обучения через аугментации в задачах классификации текста

Сорокин Семен Алксандрович

Введение

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

Интерес к исследованиям в этой области постоянно растет и в последние годы привел к появлению такого подхода как перенос знаний (transfer learning). На сегодняшний день самым распространенным методом является использование предобученной языковой модели в качестве механизма получения признаков, так как задача языкового моделирования предполагает генерализацию языковых паттернов, что справедливо для большинства доменов в задачах обработки естественного языка. На основе этих признаков строятся модели, способные решить тот или иной тип задачи обработки языка, такие как классификация текста, интент-анализ, вопросно-ответные системы, выделение именованных сущностей и т.д. Однако подобные составные модели зачастую не подходят для задач, решение которых должно происходить в реальном времени в силу отсутствия возможности ускорить обработку входных данных, даже если речь идет об одном тексте или новостном сюжете. Кроме того подобные системы обработки языка требуют большего количества вычислительных ресурсов, в том числе оперативной памяти. Поэтому выбирая между скоростью работы и точностью моделей зачастую приоритет отдают более простым системам, качество которых ниже.

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

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

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

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

Цель работы ? разработать универсальный метод аугментации тренировочных данных в задаче классификации с использованием подходов переноса знания.

Для достижения поставленной цели выдвинуты следующие задачи:

1. Изучить существующие подходы к аугментации текстовых данных

2. Проанализировать слабые места и причины их появления

3. Предложить оригинальный метод и проверить его работоспособность на различных наборах данных

Теоретической базой исследования служат научно-теоретические разработки ведущих зарубежных исследователей в области автоматической обработки естественного языка.

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

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

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

В третьей части описываются проведенные эксперименты и анализируются результаты.

В заключении обобщаются выводы каждой части и описываются результаты данного исследования.

1. Существующие методы аугментации

аугментация тренировочный обучение

Классификация текстов (Sebastiani 2002), такая как например категоризация «спам» \ «не спам» писем, одна из фундаментальных задач в автоматической обработке естественного языка (АОЕЯ). Под понятие классификации текстов можно подвести множество важных задач, таких как классификация интента, анализ тональности (Tang, Qin, and Liu 2015), классификация по фиксированному набору топиков (Tong and Koller 2001) и т.д. - все они могут решаться эффективно при наличии достаточного количества данных для (до-) обучения моделей различных архитектур. Однако часто в реальных условиях данных не хватает и встает вопрос об эффективной аугментации. Целью аугментации данных является расширение тренировочной выборки, за счет применение разного вида трансформаций к исходным тренировочным данным, при этом аугментации должны выглядеть а) реалистично, так как необходимо обобщить знания о возможных примерах, источником которых будет человек и б) не должны поменять категорию, к которой изначально относились.

В последние годы было сделано много важных открытий, связанных с методами аугментации в таких сферах, как компьютерное зрение (Krizhevsky et al., 2012; Cubuk et al., 2018) и генерации речи (Hannun et al., 2014; Park et al., 2019). Однако все эти методы давали лишь небольшой прирост в качестве, так как призваны работать только с размеченными данными, которых в свою очередь - недостаточно. Кроме того, простого «переноса» этих методов из компьютерного зрения или других областей глубокого обучения в сферу АОЕЯ не произошло в силу специфики текстовых данных, в первую очередь, по причине частой неоднозначности и высокой вариативности языка.

Новые архитектуры нейронных сетей в связке с переносом обучения (transfer learning) дали значительный прирост в точности решения задач АОЕЯ, речь идет о таких моделях как ELMO (Peters et al. 2018), GPT (Radford et al. 2018), BERT (Devlin et al. 2019) и ULMFiT (Howard et al. 2018). Однако применение таких подходов в реальных приложения бывает невозможно из-за большого времени отклика, большого размера модели и высоких требований к оперативной памяти. Поэтому зачастую прибегают или к дистилляции, что позволяет уменьшить объем модели, или применяют методы аугментации к существующим данным и тренируют более простые модели, типа логистической регрессии, конволюционных нейронных сетей или рекуррентных моделей. Одним из первых методов аугментации текстовых данных являлись локальные изменения в оригинальных (тренировочных) предложениях.

1.1 Easy data augmentation (EDA)

Наиболее простые методы аугментации были представлены в статье Easy data augmentation (Wei and Zou 2019). Для каждого исходного предложения исследователи предлагаю произвести случайно одну из следующих операций:

1. Синонимическая замена: Случайно выбирается n слов (кроме стоп-слов) и производится замена с помощью стороннего ресурса, например такого как WordNet (Miller, 1995).

2. Случайная вставка: Находится синоним для случайного слова в предложении (кроме стоп-слов) и производится вставка на случайную позицию

3. Случайная перестановка: Производится на одной или нескольких парах токенов в предложении в зависимости от длины.

4. Случайное удаление: Для каждого предложения строится массив длины n (количество токенов) содержащий вероятность удалить ту или иную лексическую единицу.

Наиболее важным в этом исследовании, на наш взгляд, является график, приведенный ниже. По оси Х отражено количество аугментированных предложений на каждое из исходного набора данных, а по оси Y увеличение значения метрики качества.

График №1. Зависимость между увеличением точности модели от количества аугментированных примеров в тренировочной выборке, представленный в работе Wei and Zou, 2019

Таким образом можно сделать вывод, что набор данных для наиболее эффективного обучения должен возрастать в 4-16 раз, однако это справедливо только в рамках экспериментов, поставленных в вышеописанном исследовании. Результатами применения таких методов аугментации стало повышения качества классификации на 0,8-3% по метрике точности (в зависимости от количества исходных текстов).

Еще одна популярная техника - обратный перевод (back-translation) (Yu et al., 2018). Суть ее заключается в аугментировании данных посредством использования автоматических систем перевода, обладающим высоким качеством, например языковая пара перевода с английского на французский язык и обратно обладает достаточно высокими метриками точности и может продуцировать тексты на естественном языке (речь идет о вариантах сервиса Google Translate). Подразумевается, что таким образом смысл изначального предложения не изменится, однако будут включены или заменены новые лексические единицы (синонимы или синонимичные выражения), что позволяет модели быть более устойчивой к новым данным, так как задача машинного перевода состоит в передаче семантики, а не формы.

1.2 Сonditional BERT (CBERT)

Еще один способ - conditional BERT contextual augmentation (Wu et al. 2019). В своей работе авторы предлагаю двухэтапный алгоритм создания аугментации. Дообучить модель BERT для задача классификации, а затем, используя метод маскирования, генерировать новые тренировочные примеры на основе уже имеющегося набора. Важным, но не всегда подтвержденным, предположением в данной концепции является то, что аугментированный, посредством заполнения, пример будет относиться к тому же классу. Вышеописанный подход связан с идеями о генеративных авто энкодерах - Conditional Variational Autoencoder (Kingma and Welling 2014).

Таблица №1. Точность методов аугментации на различных наборах данных для двух архитектур классификации CNN и RNN (где w означает обучение модели с использованием дополнительных примеров)

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

Большинство выше представленных моделей имеют разного рода зависимости. Таблица №2 отражает их перечень.

Таблица №2. Описание методов аугментации данных

Название метода

Тип

Внешние наборы данных

EDA

Основан на правилах

Word-Net

CVAE

Основан на авто энкодере

-

CBERT

Основан на языковой модели

Корпус текстов википедии и литературных произведений

Все вышеописанные методы объединяет одна идея: генерация примеров-аугменторов посредствам моделей или правил, что в большинстве случаев продуцирует текст или предложения не на естественном языке. Возможно этот фактор не позволяет получить бОльший прирост в качестве. Частичное решение данной проблемы было найдено в использовании техник полу-контролируемого обучения (semi-supervised learning), например, в статье «Аугментация данных без учителя для консистентного обучения» (Unsupervised data augmentation for consistency training) (Qizhe Xie et al., 2019)

1.3 Unsupervised data augmentation

Важных чертой современных моделей классификации, построенных на нейронных сетях, должна быть воспроизводимость высокого качества решаемой задачаи в условии зашумленности входных данных. Созданием моделей с такими свойствами, занимались (Miyato et al., 2018; Sajjadi et al., 2016; Clark et al., 2018, Bachman et al., 2014; Laine & Aila, 2016). Их методы можно разделить на две категории: добавление шума к входным данным или к скрытым представлениям на этапе обучения нейронной сети. Наиболее типичными инструментами для решения такой задачи являются такие операции как сложение обучаемых весов с Гауссовским шумом (Gaussian noise), dropout noise или adversarial noise. Как уже говорилось выше, еще одним подходом, набирающим популярность, являются техники полу-контролируемого обучении, идея которых, в задачах связанных с текстами, заключается в использование неразмеченных данных с целью повышения сглаженности модели (smoothness of the model). Исследователи (Qizhe Xie et al, 2019) предложили объединить полу-контролируемое обучение с методами аугментации данных. В своей модели, схема которой представлена ниже, отразили несколько ключевых идей: обучения на размеченных и неразмеченных данных происходит одновременно, что реализуется посредством использования составной функции потерь, методы аугментации используются для того, чтобы нивелировать разницу внутри модели между (предположительно) одинаковыми предложениями. То есть подразумевается, что неразмеченное предложение и его аугментация имеют близкую семантику, а составляющие лексические единицы (конструкции) близки к синонимичным.

Схема №1. Процесс обучения модели с использованием UDA методами, где M - модель, предсказывающая распределение у относительно х.

Еще одна важная идея это расписание изменения тренировочного сигнала. Дело в том, что при использовании комбинированной функции потерь может произойти такая ситуация, при которой модель переобучилась на размеченных данных при этом не почерпнув сглаживающих свойств из неразмеченных данных. Для того чтобы предотвратить подобную ситуации исследователи предложили три вида расписания, которые в зависимости от шага обучения изменяет сигнал идущий от размеченных данных. Последнее позволило им добиться результатов, соизмеримых с лучшими (для некоторых наборов данных), используя при этом ограниченно малое количество экземпляров. Например модель BERT (large) на наборе данных Amazon-2, содержащем 3,6 миллиона примеров, показывает лучший результат функции потерь равный 2,63, в то время как при использовании только 20 примеров и техники полу контролируемого обучения, описанного выше, возможно добиться похожих результатов - 3,5.

Таблица №3. Значение функции потерь при обучении с учителем и при полу контролируемом обучении на наборах данных IMDb, Yelp-2, Yelp-5, Amazon-2, Amazon-5, DBpedia

Кроме уменьшения ошибки на тренировочных данных в статье представлены и отчеты о увеличении точности моделей:

График №1. Точность метода UDA на наборах данных IMDb и Yelp-2 при разных размерах выборки

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

1.4 LAMBADA

(Ateret Anaby-Tavor et al., 2018) в своей работе предложили новый метод аугментации, суть которого заключается в использовании пред обученных языковых моделей для синтезирования (генерации) тренировочных данных, которые, дополняя исходный набор сэмплов, делают модели более точными. Подход носит название language-model-based data augmentation (LAMBADA).

Концепцию, предложенную авторами (LAMBADA's data augmentation), возможно описать следующим образом: на основе пред обученной генеративной модели GPT (Radford et al. 2018) создается дообученная языковая модель (для дообучения используется текстовые данные основной задачи классификации, включая неразмеченные). Полученная модель используется для синтеза новых неразмеченных данных. Затем синтезированные и оригинальные данные поступают в модель классификатора. На этапе предсказания класса, синтезированные семплы можно фильтровать по «степени уверенности» модели. То есть, если распределение предсказаний модели классификатора близко к равномерному, данный пример нужно исключить, если же у одного класса вероятность превалирует, то аугментированный пример остается. Затем модель классификатора тренируется заново на оригинальных и отфильтрованных синтезированных данных и замеряется точность.

Для проверки эффективности данного метода аугментации авторами было выбрано три различных модели BERT, SVM и LSTM, которые должны были решать задачу классификации для трех датасетов - ATIS, TREC и WVA. Результаты были статистически валидированы с помощью теста McNemar (McNemar 1947; Dror et al. 2018) и представлены в таблице ниже.

Таблица №4. Точность метода LAMBADA с сравнение с другими генеративными подходами к аугментации. Проверено на трех моделях BERT, SMV, LSTM

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

График №2. Точность моделей в зависимости от количества аугментаций на каждый пример тренировочной выборки

Эффективность данного метода аугментации для английского языка (в рамках данного исследования) кажется достаточно очевидной, однако применение ее в задачах классификации, связанных с русским языком или иными другими, может вызвать трудности. В первую очередь, это обусловлено отсутствием сопоставимых по эффективности генеративных моделей, со структурой типа GPT, для романской языковой группы или славянской языков. Кроме того, дообучение, подобных моделей требует наличия высоких мощностей, что также может вызвать трудности при имплементации данного подхода. Также, важно отметить, что существуют менее затратные методы (в отношении вычислительных мощностей) аугментации текстовых данных, которые также повышают точность моделей классификации. Речь идет обратном переводе (back translation) или случайной замене токенов, с низких показателем tf-idf в текстовой последовательности. Результаты применения этих способов в комбинации с некоторыми другими улучшениями для расширения тренировочной выборки описаны в статье «Unsupervised data augmentation for consistency training» (Qizhe Xie et al., 2019).

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

2. Наборы данных

В рамках исследования были выбраны следующие наборы данных:

1. Trec-6

2. Trec-50

3. SST-2

Они являются репрезентативными с точки зрения оценки результирующего метода аугментации. Trec-6 (50) первоначально использовался для решения задачи классификации вопросов по категориям, что требует высокой степени обобщения семантики всего предложения. Кроме того Trec-50 имеет высокую степень несбалансированности примеров на каждую категорию, что представляет особую сложность при обучении модели (см. Приложение №6). Для решения задачи по набору данных SST-2, в свою очередь, необходимо корректно обобщать только один компонент значения - тональность предложения, что также может вызвать затруднения, в случае сложносочиненных и сложноподчиненных предложений, когда в одной из частей говорится об объекте с положительной эмоциональной окрашенностью, а в остальных с отрицательной. Также важно заметить, что в большинстве исследований, связанных с аугментацией ((Wei and Zou 2019), (Radford et al. 2018), (Wu et al. 2019)) и разработкой новых архитектур языковых моделей именно эти наборы данных являются показательными с точки зрения оценки качества.

2.1 Trec-6 (50)

Набор данных Trec содержит 5 952 вопроса (5 452 - тренировочная выборка, 500 - тестовая выборка), каждый из которых принадлежит некоторому семантическому классу. Впервые он был использован в работе (Dan Roth et al, 2002) и являлся частью составной вопросно-ответной системы. Trec-6 содержит 6 наиболее широких категорий, таких как:

? Abbreviation (вопросы о сущности скрытой под аббревиатурой или расшифровке)

? Entity (вопросы о сущностях и понятиях из разных сфер жизни - еда, медицина, спорт, языки)

? Description (описание и абстрактные понятия)

? Human (известные / знаменитые люди, группы людей)

? Location (города, страны, горы, иные места)

? Numeric (вопросы числовых сущностях: расстояние, цена, временной промежуток, дата)

Примеры вопросов и их категорий

Вопросы

Категории

How can I get started in writing for television?

DESC

What are the short - and long-term effects of underage drinking?

DESC

In order from the top, the four stripes on a can of Pepsi are what colors?

ENTY

What do you call a `` twirl '' in ballet?

ENTY

What does S.O.S. stand for?

ABBR

What is AFS?

ABBR

Who declared: `` I think I 'll go out and milk the elk «?

HUM

Who sought to create The Great Society?

HUM

How many queen bees reign in a hive?

NUM

Where is Tufts University?

LOC

What 's the sacred river of India?

LOC

Trec-50 это идентичный набор вопросов, разделенных на большее количество семантических категорий, так например класс Location поделен на следующие подклассы: city, country, state, mountain, other. Примеры вопросов и их подкатегорий представлены в Приложении №6.

2.2 SST-2

SST - Stanford Sentiment Treebank - состоит из набора деревьев предложений (11 845 примеров), сегментированных из отзывов о фильмах. Фразы размечены по тональности. Изначально предложение представлено как дерево, в котором каждое поддерево / вершина имеет свою оценку от 0 до 5, где 0 - негативная, а 5 - положительная тональность.

Описываемый размеченный корпус был собран для создания системы оценки тональности отзывов о фильмах с учетом синтаксических связей внутри предложения. SST-2 - это агрегация исходного корпуса. Удалены все вершины (поддеревья), содержащие нейтральную оценку тональности. Остальные предложения (содержащиеся внутри них фразы) развернуты в задачу бинарной классификации (положительная / отрицательная тональность). В результате тренировочный набор включил в себя 67 348 примеров, а тестовый - 872.

Схема №2. Пример визуализации предложения из корпуса SST

Кроме наборов данных, на которых проверялась эффективность метода аугментации, были использованы и другие корпуса текстов. Речь идет о:

? WikiText 103 (Merity et al. 2016)

? SQuAD (Rajpurkar et al., 2016)

? AmazonQA (Gupta et al., 2019)

? IMDB с неразмеченными данными (Mass et al., 2011)

По этим наборам данных производился поиск наиболее эффективных примеров-аугменторов на естественном языке. Корпуса WikiText 103, SQuAD и AmazonQA использовались для датасетов Trec-6 (50), а IMDB - для SST-2.

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

3. Эксперименты

Первоначально необходимо оценить насколько существующие модели (разных типов архитектур), обученные со случайной инициализации весов справляются с задачей классификации. На примере датасета Trec-50 с разным количеством исходных вопросов мы замерили показатели Ф-меры. Результаты отражены в Таблице №3. Подобная таблица для Trec-6 в Приложении №4.

Таблица №5. Показатели Ф-меры в задаче классификации на данных Trec-50 с разным количеством тренировочных примеров и различными моделями.

Количество примеров / Классификаторы

Случайный лес

AdaBoost

Многослойный персептрон

Наивный Байес

Решающее дерево

Метод опорных веторов

Логистическая регрессия

BERT

5000

0.762

0.268

0.788

0.634

0.71

0.748

0.716

0.93

4000

0.754

0.242

0.764

0.622

0.722

0.73

0.706

0.914

3000

0.744

0.236

0.76

0.604

0.71

0.716

0.706

0.892

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

Кроме моделей со случайной инициализацией весов в Таблице №5 также представлена модель BERT base (Devlin et al., 2018), которая использует пред обученные веса и дообучена на выборках Trec-50. Отметим, что результаты этой модели значительно выше. Для того чтобы в дальнейшем наиболее полно оценивать результаты методов аугментации, датасеты были разбиты на выборки с разным количеством примеров. Случайная выборка подкорпуса из полноценного набора данных позволяет смоделировать неравномерное распределение примеров по классам.

Вслед за (Wei and Zou 2019) к базовой модели MLP, оценивающей эффективность метода аугментации, были добавлены нейросетевые классификаторы на основе архитектура LSTM и CNN (Yoon Kim., 2014), использующие пред обученные эмбедденги. Векторные представления слов - 2 миллиона токенов - построены на корпусе Common Crawl (Mikolov et al. 2018) с использование алгоритма обучения GloVe. Точность этого набора моделей на датасеты Trec-6 (50), SST-2 и их подвыборках представлена в Приложениях №1, 2 и 3.

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

В первую очередь это модели универсального энкодера предложений (Universal sentence encoder) (Daniel Cera et al., 2018). Дифференцировать энкодеры возможно по базовой архитектуре. В данной работе применялись два типа: трансформер (Vaswani et al., 2017) и сеть глубокого усреднения (deep averaging network - DAN) (Iyyer et al., 2015). Обе вышеописанные модели обучались на корпусах текстов из википедии, новостных ресурсах и форумах для задачи языкового моделирования и выложены в открытый доступ на портале TFHub (Daniel Cera et al., 2018). Стоит отметить, что исследователи (вслед за Conneau et al., 2017), при построении энкодеров, использовали не только обучение без учителя, но и осуществляли перенос знаний посредствам обучения на задаче классификации: был задействован Стэнфордский корпус, описывающий тип логической связи между двумя фразами (The Stanford Natural Language Inference) (Bowman et al., 2015). Согласно исследованию (Conneau et al., 2017) данная задача позволяет увеличить обобщающую способность модели энкодера.

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

Daniel Cera (Daniel Cera et al., 2018) представил две архитектуры, которые могут быть использованы в качестве энкодера: в качестве задач для обучения использовался следующий набор:

? MR (Movie review): Оценка тональности отрывка отзыва на фильм по шкале от 1 до 5 (Pang and Lee, 2005).

? CR: Оценка тональность предложения из отзыва Sentiment of sentences mined from customer reviews (Hu and Liu, 2004).

? SUBJ: Модальность предложения из рецензии на фильм (Pang and Lee, 2004).

? MPQA: Определение модальность отношения к новости в границах предложения (Wiebe et al., 2005).

? TREC: классификация вопрос по 47 семантическим категориям (Li and Roth, 2002).

? SST: Бинарная оценка тональности предложения (Socher et al., 2013).

? STS Benchmark: Семантическая схожесть предложений (Cer et al., 2017).

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

Эксперимент №1. Аугментирование с помощью USE DAN и поиска ближайших соседей в WikiText 103

Первоначально в качестве корпуса, по которому производился поиск примеров-аугменторов, был выбран набор текстов Википедии (WikiText 103) (Merity et al. 2016). С помощью модели энкодера DAN (Daniel Cera et al., 2018) предложения тренировочный выборки Trec-50 и корпуса Википедии были векторизованы. Затем с помощью библиотеки Faiss, к каждому размеченному примеру было выбрано k ближайших соседей (от 1 до 3). Аугментрованному примеру присваивался класс примера, к которому он являлся ближайшим соседом. Таким образом выборки увеличивались в 2, 3 и 4 соответственно. Такой способ позволяет сохранить пропорциональность исходного распределение примеров для каждого класса. Это должно влиять положительно, если изначальное распределение стремится к равномерному и отрицательно при сильной несбалансированности количества примеров на каждый класс.

На результирующей выборке была обучена модель MLP, которая показала наиболее высокие значения Ф-меры в предыдущем сравнении (см. Таблица №5). Результаты представленные в Таблице №6.

Таблица №6. Показатели f-меры базовой модели MLP на данных Trec-50 с разным количеством ближайших соседей из википедии, полученных с помощью USE DAN.

Количество примеров / число ближайших к каждому примеру

5000

4000

3000

0 (без аугментации)

0.784

0.764

0.760

1

0.778

0.754

0.73

2

0.786

0.75

0.74

3

0.77

0.766

0.762

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

Эксперимент №2. Аугментирование с помощью до обученной модели BERT и поиска ближайших соседей в WikiText 103

Так как модель энкодера DAN не позволила улучшить качество классификации (возможно в силу излишней обобщающей способности), мы воспользовались моделью BERT (до обученная на данных Trec-50) как энкодером. То есть каждому предложению из корпуса Википедии и тренировочной выборки был поставлен в соответствие вектор, полученный с последнего слоя до обученной модели BERT.

Авторами оригинальной статьи (Devlin et al., 2018) было предложено для классификации предложений использовать выходной эмбеддинг [CLS] токена, который, как подразумевается, несет в себе информацию обо всем предложении. Именно с его помощью и происходило дообучение и векторизация предложений, описанная выше.

Полученные векторные представления для предложений были использованы для поиска k ближайших соседей с помощью библиотеки Faiss. Затем аугментации объединялись с тренировочной выборкой и происходило обучение базовой модели MLP. Результаты отражены в Таблице №7. Прироста в качестве классификации базовой модели в большинстве случаев не произошло.

Таблица №7. Показатели ф-меры базовой модели MLP на данных Trec-50 с разным количеством ближайших соседей полученных с помощью модели BERT

Количество примеров / число ближайших соседей к каждому примеру

5000

4000

3000

0 (без аугментации)

0.784

0.764

0.760

1

0.76

0.748

0.74

2

0.788

0.742

0.741

3

0.766

0.74

0.761

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

Эксперимент №3. Аугментирование с помощью USE DAN и поиск ближайших соседей в SQuAD

В соответствии с результатами эксперимента №2 корпусом для поиска аугментации был выбран набор данных SQuAD. Были отобраны только вопросы - 170 тысяч предложений. Так как метод аугментации через векторизацию с помощью обученной модели BERT показал меньшую точность, в данном эксперименте был использован энкодер DAN.

Таблица №8. Показатели F-меры базовой модели MLP на данных Trec-50 с разным количеством ближайших соседей из SQuAD, полученных с помощью USE DAN

Количество примеров / число ближайших соседей к каждому примеру

5000

4000

3000

0 (без аугментаций)

0.7840

0.7640

0.7600

1

0.7920

0.7680

0.7640

2

0.7960

0.7660

0.7500

3

0.7940

0.7780

0.7600

Значения в таблице показывают небольшой прирост в качестве при обучении на подвыборке из 5000 и 4000 примеров Trec-50.

Эксперимент №4. Аугментирование с помощью псевдолейблинга моделью BERT примеров из датасета SQuAD

Во всех предыдущих экспериментах размер тренировочной выборки изменялся незначительно, максимально в 4 раза, то есть результирующие наборы для обучения не превышали 20 тысяч примеров. Однако этого количества примеров зачастую недостаточно для обучения нейронной сети без использования пред обученных весов. Подтверждением тому являются показатели Ф-меры обученной модели BERT. Так как набор классов в задаче Trec-50 создавался как исчерпывающий для семантической категоризации вопросов, то возможно использовать метод псевдо лейблинг и обученную модель BERT для создания аугментации из вопросов датасета SQuAD.

Кроме того можно добавить гипер параметр, отражающий степень уверенности модели в предсказанной категории и использовать его как дополнительный фильтр аугментаций.

Таблица №9. Показатели Ф-меры базовой модели MLP на данных Trec-50 с учетом степени уверенности модели BERT при псевдо-лейблинга вопросов SQuAD

Степень уверенности

Ф-мера базовой модели MLP

Количество аугментаций

0.55

0.854

130.000

0.7

0.856

117.000

0.9

0.830

103.000

Эксперимент №5. Аугментирование с помощью псевдолейблинга моделью BERT и расчета векторных дистанций на примерах из датасета SQuAD

Одним из важных инструментов анализа данных является визуализация. На основе скрытого представления предложений из модели BERT была построена визуализация расположения векторов предложений согласно категориальной отнесенности. Анализ Схемы №1 позволил предположить, что если новые аугментации будет находиться близко к вектор-центрам каждой категории, то точность модели значительно не увеличится при расширении тренировочного набора. Это выявляет необходимость введения параметров регулирующих дистанцированность вектором аугментаций от вектор-центра реальной категории. Иными словами если аугментированный пример находится рядом с вектор-центром одной из категорий, он вряд ли сделает в модель более устойчивой к новым примерам, а если слишком далеко, например в границах другой категории, то приведен к неверной аппроксимации и точность модели уменьшится. Таким образом нужно выявить границы, при которых псевдо лейблинг расширяет границы значения категории, но не перемешивает их между собой.

Схема №3. Визуализация векторного пространства скрытых представлений предложений тренировочной подвыборки Trec-50 (5000 примеров) моделью BERT c помощью технологии снижения размерности TSNE

Визуализация совместного расположение классов на Схеме №3 показала, что дистанции между соседними классами варьируются. Это не дает возможность использовать единый гипер параметр «дистанция аргументированного примера до вектор-центра класса» для всех классов.

Схема №3 отображает распределение расстояний от вектор-центра каждого класса до всех векторов-примеров, относящихся к этому классу на тренировочной выборке Trec-50 (5000 вопросов).

Схема №4. Распределение расстояний от вектор-центра каждого класса до всех векторов-примеров, относящихся к этому классу на тренировочной выборке Trec-50 (5000 вопросов) полученных с помощью BERT

Анализ Схемы №4 позволил определить примерные наборы промежутков, которые стоит проверить как наиболее эффективные с точки зрения аугментации. Также были зафиксированы условия постановки эксперимента.

Для каждого класса был рассчитан следующий набор параметров: минимальная дистанция от вектор-центра категории до любого примера (принадлежащего к этой категории), среднее расстояние, максимальное расстояние. Количество параметров было искусственно расширено с помощью коэффициентов к каждому вышеописанных. Таким образом алгоритм сэмплирования примеров можно представить следующим набором шагов:

? Получить векторное представление примера аугментации c помощью обученной на исходной тренировочной выборке модели BERT

? Назначить примеру категорию в соответствии с предсказанием модели при условии преодоления порога «уверенности модели»

? Рассчитать расстояние между векторным представлением примера и вектор-центром предсказанной категории

? Включить пример в новую обучающую выборку, если расстояние находится в некотором заданном диапазоне для конкретного класса.

Так например одним уникальным набором условий для эксперимента считались следующие параметры:

? Степень уверенности модели - 0.3

? Нижняя граница - два минимальных расстояния на тренировочной выборке от любого примера до вектор-центра категории

? Верхняя граница - половина максимального расстояния на тренировочной выборке от любого примера до вектор-центра категории

В результате комбинирования этих гипер параметров и коэффициентов к ним было рассчитано 48 различных наборов аугментации с их помощью обучена базовая модель:

График №2. Зависимость между точностью базовой модели и размером аугментированной выборки

Результаты, отраженные на графике №2 подтверждают гипотезу о необходимости большого тренировочного корпуса для решения задачи классификации Trec-50. Кроме того можно предположить, что если еще увеличить аугментрованную выборку (при постоянной высокой точности псевдолейблинга) значение Ф-мера на базовой модели может еще вырасти.

Стоит также отметить, что одну из наиболее качественных аугментированных выборок удалось получить со следующими параметрами:

? Степень уверенности модели - 0.7

? Нижняя граница - половина минимальных расстояния на тренировочной выборке от любого примера до вектор-центра категории

? Верхняя граница - два максимального расстояния на тренировочной выборке от любого примера до вектор-центра категории

Ф-мера базовой модели при обучении на аугментированной и тренировочной выборке одновременно достигла показателя 85.4 при добавлении 114 тысяч примеров. Эти показатели практически идентичны обычному использованию псевдолейблинга со степенью уверенности модели 0.7. В дальнейших экспериментах принято ускорить процесс поиска аугментаций посредствам использования только псевдолейблинга со параметром степень уверенности.

Эксперимент №6. Аугментирование с помощью псевдолейблинга моделью BERT примеров из датасетов SQuAD, AmazonQA

Для объективной проверки эффективности метода и гипотезы об увеличении точности модели при расширении аугментированной выборки были выполнены следующие шаги:

A. эксперимент проводился на трех датасетах SST-2, Trec-6, Trec-50

B. из каждого датасета была сделана выборка 3000, 4000 и 5000 примеров (таким образом 9 наборов данных для классификации)

C. Ф-мера и точность рассчитывались не только на базовой модели MLP, но и на моделях LSTM и CNN (архитектуры взяты из исследования EDA)

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

Таким образом, алгоритм аугментации можно описать следующим образом:

? Дообучить модель BERT на выборке из датасета

? Произвести псевдо лейблинг с значением «степень уверенности» - 0.7

? Отфильтровать примеры по длине (количество токенов не более максимального значения длины примеры в тренировочной выборке)

? Обучить одну эпоху результирующую модели

? Дообучить результирующую модели на исходной выборке

Таблица №10. Показатели Ф-меры и точности для датасета Trec-50.

Модель / Размер выборки

LSTM

CNN

MLP

5000

F1 - 0.830

Acc - 0.810

F1 - 0.906

Acc - 0.906

F1 - 0.8628

Acc - 0.8700

4000

F1 - 0.847

Acc - 0.838

F1 - 0.908

Acc - 0.906

F1 - 0.8601

Acc - 0.8700

3000

F1 - 0.814

Acc - 0.802

F1 - 0.916

Acc - 0.916

F1 - 0.8344

Acc - 0.8440

Таблица №11. Показатели Ф-меры и точности для датасета Trec-6

Модель / Размер выборки

LSTM

CNN

MLP

5000

F1 - 0.934

Acc - 0.932

F1 - 0.973

Acc - 0.974

F1 - 0.9397

Acc - 0.9400

4000

F1 - 0.922

Acc - 0.924

F1 - 0.962

Acc - 0.964

F1 - 0.9458

Acc - 0.9460

3000

F1 - 0.934

Acc - 0.930

F1 - 0.961

Acc - 0.960

F1 - 0.9440

Acc - 0.9440

Таблица №12. Показатели Ф-меры и точности для датасета SST-2

Модель / Размер выборки

LSTM

CNN

MLP

5000

F1 - 0.823

Аcc - 0.824

F1 - 0.850

Аcc - 0.851

F1 - 0.8550

Aсс - 0.8550

4000

F1 - 0.825

Аcc - 0.825

F1 - 0.848

Аcc - 0.847

F1 - 0.8567

Aсс - 0.8567

3000

F1 - 0.812

Аcc - 0.816

F1 - 0.856

Аcc - 0.855

F1 - 0.8424

Aсс - 0.8424

Результаты применения данного подхода аугментации показывают увеличение точности всех моделей на всех наборах данных. Наиболее эффективной моделью для решения этих задач классификации стала модель CNN, на выборках Trec-6 (5000 примеров) и Trec-50 (3000 примеров) она показала точность близкую в модели BERT: F1 cnn - 0.973, F1 bert - 0.9737; F1 cnn - 0.916, F1 bert - 0.915 соответственно. Что касается датасета SST-2, то прирост в качестве для моделей LSTM и CNN менее значительный - от 1 до 3 пунктов, и более 5 пунктов для модели MLP.

Эксперимент №7. Псевдолеблинг моделью BERT и поиск ближайших соседей

Кроме модели универсального энкодера для предложений с архитектурой DAN существует и модель предбученная на архитектуре Transformer. Как показывают эксперименты она является наиболее точной, но при этом более медленной. В данном эксперименте к предыдущему алгоритму добавляется еще два шага:

? Векторизовать примеры с помощью Transformer и найти 3 ближайших соседа к каждому из тренировочной выборке

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

Результаты оценки моделей представлены в таблицах №10 и №11:

Таблица №13. Показатели Ф-меры и точности для датасета Trec-50 с использованием псевдолеблинга и поиска ближайших соседей

Модель / Размер выборки

LSTM

CNN

MLP

5000

F1 - 0.872

Acc - 0.872

F1 - 0.909

Acc - 0.908

F1 - 0.8566

Aсс - 0.8580

4000

F1 - 0.880

Acc - 0.874

F1 - 0.892

Acc - 0.896

F1 - 0.8467

Aсс - 0.8540

3000

F1 - 0.867

Acc - 0.864

F1 - 0.903

Acc - 0.898

F1 - 0.8423

Acc - 0.8540

Таблица №14. Показатели Ф-меры и точности для датасета Trec-6 с использованием псевдолеблинга и поиска ближайших соседей

Модель / Размер выборки

LSTM

CNN

MLP

5000

F1:0.953

Acc - 0.950

F1 - 0.967

Acc - 0.968

F1 - 0.9436

Aсс - 0.944

4000

F1 - 0.954

Acc - 0.954

F1 - 0.98

Acc - 0.980

F1 - 0.9358

Acct - 0.936

3000

F1 - 0.936

Acc - 0.936

F1 - 0.958

Acc - 0.958

F1 - 0.928

Acct - 0.928

3.2 Сравнение с методом аугментации EDA

В статье EDA представлены методы аугментации данных, которые также должны обеспечивать прирост в качестве. Используя исходный код статьи мы расширили данные и оценили с помощью базовой модели, а также моделей LSTM и CNN. Результаты представлены в Таблице №12. В качестве гипер параметров использованы рекомендованные n = 4 (количество аугментаций на исходный пример), а = 0.1 (параметр, отвечающий за количество изменений в зависимости от длины предложения). Так как размеры наборов тренировочных данных не превышают 20 тысяч примеров, для большей объективности и снижения влияние случайной инициализации весов на результат, каждая модель обучалась трижды. В таблице представлены показатели среднего значения Ф-меры и точности с их стандартным отклонением.

Таблица №12. Результаты моделей LSTM, CNN, MLP на различных выборках датасета Trec-6 с применением метода аугментации EDA

Модель / Размер выборки

LSTM

CNN

MLP

5000

F1 - 0.861 ±0.006

Acc - 0.86±0.01

F1 - 0.9±0.001

Acc - 0.895±0.004

F1 - 0.889±0.007

Acc - 0.88±0.006

4000

F1 - 0.85±0.005

Acc - 0.852±0.005

F1 - 0.883±0.008

Acc - 0.884±0.01

F1 - 0.878±0.003

Acc - 0.879±0.003

3000

F1 - 0.794±0.005

Acc - 0.796±0.007

F1 - 0.853±0.01

Acc - 0.849±0.009

F1 - 0.788±0.046

Acc - 0.770±0.06

Таблица №13. Результаты моделей LSTM, CNN, MLP на различных выборках датасета Trec-50 с применением метода аугментации EDA

Модель / Размер выборки

LSTM

CNN

MLP

5000

F1 - 0.79±0.006

Acc - 0.780±0.002

F1 - 0.835±0.002

Acc - 0.824±0.005

F1 - 0.746±0.04

Acc - 0.75±0.05

4000

F1 - 0.78±0.0007

Acc - 0.77±0.006

F1 - 0.843±0.004

Acc - 0.834±0.001

F1 - 0.76±0.009

Acc - 0.774±0.012

3000

F1 - 0.741±0.011

Acc - 0.716±0.016

F1 - 0.828±0.008

Acc - 0.82±0.009

F1 - 0.742±0.012

Acc - 0.745±0.009

Таблица №14. Результаты моделей на различных подвыборках датасета SST-2 с применением метода аугментации EDA

Модель / Размер выборки

LSTM

CNN

MLP

5000

F1 - 0.692±0.006

Acc - 0.689±0.005

F1 - 0.772±0.007

Acc - 0.77±0.006

F1 - 0.793±0.005

Acc - 0.794±0.005

4000

F1 - 0.684±0.007

Acc - 0.68±0.005

F1 - 0.76±0.003

Acc - 0.758±0.003

F1 - 0.782±0.001

Acc - 0.783±0.002

3000

F1 - 0.658±0.009

Acc - 0.657±0.01

F1 - 0.744±0.005

Acc - 0.743±0.005

F1 - 0.765±0.006

Acc - 0.766±0.005

Результаты, отраженные в таблицах №12, 13 и 14, показывают, что метод, описанный в статье Easy Data Augmentation положительно не повлиял на значение точности моделей, несмотря на использование рекомендованных параметров. Скорее всего дело в том, что гипотезы были проверены для наборов данных, не включающих более 500 примеров, в нашем же случае, выборки превышали 3000 предложений. Кроме того стоит отметить, что данный метод отрицательно повлиял на результаты обучения на датасете SST-2. Это позволяет сделать вывод о том, что техники EDA могут изменить тональность предложения. Возможно эффект был бы менее заметным, если бы классификация была не бинарной.

Таким образом, результаты экспериментов №1, 3 показали, что использование недообученных универсальных энкодеров для предложений и назначение класса аугментированному примеру с помощью алгоритма поиска ближайших соседей с увеличении тренировочной выборки в 2-4 раза не является эффективным методом аугментации. Однако использование пред обученных моделей, типа BERT совместно с техни...


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.