BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension

Mike Lewis, Yinhan Liu, Naman Goyal, Marjan Ghazvininejad, Abdelrahman Mohamed, Omer Levy, Ves Stoyanov, Luke Zettlemoyer

Facebook AI



#NLP #BERT #GPT2 #BART #denoising



Статья: https://arxiv.org/abs/1910.13461



По большому счёту, делают аналог denoising автоэнкодера на трансформерах. А именно, в качестве энкодера используют BERT, в качестве декодера GPT-2, общая схема -- классический seq2seq.



Экспериментируют со следующими видами шума на этапе предобучения:

- Token Masking -- замена токенов на [mask] -- MLM, как в BERT;

- Token Deletion -- удаление случайных токенов (без указания места удаления);

- Text Infilling -- замена нескольких слов на один символ [mask];

- Sentence Permutation -- случайная перестановка входных предложений местами;

- Document Rotation -- рубим входную строку в случайном месте и переставляем две части местами.



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



На сравнении с бертом тестировали эффективность разных стратегий зашумления на этапе предобучения. В целом, вышло, что чаще всего Text Infilling даёт SOTA в одиночку или в комбинации с другими, но, вообще говоря, это зависит от задачи.



Далее сравнивались с разными бейзлайнами на разных задачах:

- на дискриминативных задачах местами уступили RoBERTa,

- на задачах суммаризации -- получили SOTA,

- на некоторых других тоже, но не везде.



Общий вывод я бы сформулировал так:

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

- Text Infilling как обобщение MLM -- хорошая идея, а вообще из работы следует, что оптимальная схема предобучения определяется финальной задачей (что печально),

- какого-то большого прорыва не вышло, но на отдельных задачах полулось заметно улучшить SOTA.