BioBERT: a pre-trained biomedical language representation model for biomedical text mining
Jinhyuk Lee, Wonjin Yoon, Sungdong Kim, Donghyeon Kim, Sunkyu Kim, Chan Ho So, Jaewoo Kang
Статья: https://arxiv.org/abs/1901.08746
BioBERT pre-trained weights: https://github.com/naver/biobert-pretrained
Код для fine-tuning на NER/RE/QA: https://github.com/dmis-lab/biobert
Работа из серии “давайте прикрутим BERT ещё к какой-нибудь задаче и сделаем новый state-of-the-art”. Прикрутили BERT для анализа биомедицинских текстов.
Причём прикрутили не просто BERT, а дообученный на биомед текстах (BioBERT).
BioBERT = 1) BERT (претренированный на general domain типа En-Wikipedia, BookCorpus) + 2) претренировка на биомед текстах (PubMed abstracts, PMC full texts) + 3) fine-tuning на конкретную задачу.
Проверяли на задачах: Named Entity Extraction, Relation Extraction, Question Answering.
Что интересно, некоторые из задач с крайне маленькими датасетами (QA дообучался на 327, 486 или 618 примерах; NER и RE максимум на нескольких десятках тысяч, 30681 -- самый крупный датасет).
В общем, как полагается, хорошо побили предыдущие результаты.
Поразительно, как хорошо работает на мелких датасетах в QA.
В итоге новый кубик в копилку тех, кто работает с биомед текстами.
Использовали свою платформу NSML (NAVER Smart Machine Learning, подробнее тут: https://arxiv.org/abs/1712.05902, NSML: A Machine Learning Platform That Enables You to Focus on Your Models).
Jinhyuk Lee, Wonjin Yoon, Sungdong Kim, Donghyeon Kim, Sunkyu Kim, Chan Ho So, Jaewoo Kang
Статья: https://arxiv.org/abs/1901.08746
BioBERT pre-trained weights: https://github.com/naver/biobert-pretrained
Код для fine-tuning на NER/RE/QA: https://github.com/dmis-lab/biobert
Работа из серии “давайте прикрутим BERT ещё к какой-нибудь задаче и сделаем новый state-of-the-art”. Прикрутили BERT для анализа биомедицинских текстов.
Причём прикрутили не просто BERT, а дообученный на биомед текстах (BioBERT).
BioBERT = 1) BERT (претренированный на general domain типа En-Wikipedia, BookCorpus) + 2) претренировка на биомед текстах (PubMed abstracts, PMC full texts) + 3) fine-tuning на конкретную задачу.
Проверяли на задачах: Named Entity Extraction, Relation Extraction, Question Answering.
Что интересно, некоторые из задач с крайне маленькими датасетами (QA дообучался на 327, 486 или 618 примерах; NER и RE максимум на нескольких десятках тысяч, 30681 -- самый крупный датасет).
В общем, как полагается, хорошо побили предыдущие результаты.
Поразительно, как хорошо работает на мелких датасетах в QA.
В итоге новый кубик в копилку тех, кто работает с биомед текстами.
Использовали свою платформу NSML (NAVER Smart Machine Learning, подробнее тут: https://arxiv.org/abs/1712.05902, NSML: A Machine Learning Platform That Enables You to Focus on Your Models).
arXiv.org
BioBERT: a pre-trained biomedical language representation model...
Biomedical text mining is becoming increasingly important as the number of biomedical documents rapidly grows. With the progress in natural language processing (NLP), extracting valuable...
Do we train on test data? Purging CIFAR of near-duplicates
Björn Barz, Joachim Denzler
Статья: https://arxiv.org/abs/1902.00423
Исправленный CIFAR, ciFAIR: https://cvjena.github.io/cifair/
Забавная статья про то, как в обоих картиночных датасетах CIFAR (10 и 100) обнаружили дубликаты между трейн и тест сетами, а также внутри тест сетов. И соответственно все оценки качества моделей на CIFAR завышены и могут быть перекошены в сторону запоминания вместо обобщения.
Проблема в том, что датасеты отфильтрованы недостаточно хорошо. Попиксельные дубликаты из них убраны, но остались другие дубликаты (near-duplicates) типа картинок с небольшими сдвигами или кропами, изменениями яркости и просто очень похожие объекты, различить которые можно только внимательно вглядываясь.
Найдено 3.3% дубликатов в CIFAR-10 и 10% (!) дубликатов в CIFAR-100. Рассматривается только кейс, когда для картинок из тест сета есть дубликаты в соответствующих трейн сетах. Дубликаты внутри самих трейн сетов не рассматриваются, потому что bias конечно вносят (на каких-то картинках сеть обучается больше), но оценку качества не смещают.
Дубликаты обнаруживают автоматизированной процедурой. Для каждого объекта находится ближайший в пространстве эмбеддингов из обученной на трейн сете CNN (взяты L2 нормализованные фичи с одного из верхних слоёв), а затем все пары отсматриваются вручную и размечаются людьми.
Все найденные дубликаты вычищены, заменены на картинки аналогичных классов, взятые из того же датасета-предшественника, из которого был собран CIFAR (это датасет Tiny Images, http://groups.csail.mit.edu/vision/TinyImages/, собранный из картиночной поисковой выдачи по запросам для synset’ов WordNet). Получился честный CIFAR (Fair CIFAR, ciFAIR), который можно взять по ссылке из начала поста.
Результаты моделей пересчитали (есть сложность, обученных на CIFAR моделей не опубликовано, поэтому обучали заново на референсных архитектурах), посчитали разницу в качестве (в среднем ошибка возросла на 0.41% для CIFAR-10 и на 2.73% на CIFAR-100; порядок лидеров не поменялся кроме одной пары на CIFAR-10). На сайте с датасетом есть лидерборд.
Вывод: в целом оферфита на дубликаты не произошло, и это хорошо (при этом модели, на которых проверялись, обладают достаточной capacity, чтобы тупо всё запомнить). Но всё-таки как-то неаккуратненько!
Следите за своими датасетами.
Björn Barz, Joachim Denzler
Статья: https://arxiv.org/abs/1902.00423
Исправленный CIFAR, ciFAIR: https://cvjena.github.io/cifair/
Забавная статья про то, как в обоих картиночных датасетах CIFAR (10 и 100) обнаружили дубликаты между трейн и тест сетами, а также внутри тест сетов. И соответственно все оценки качества моделей на CIFAR завышены и могут быть перекошены в сторону запоминания вместо обобщения.
Проблема в том, что датасеты отфильтрованы недостаточно хорошо. Попиксельные дубликаты из них убраны, но остались другие дубликаты (near-duplicates) типа картинок с небольшими сдвигами или кропами, изменениями яркости и просто очень похожие объекты, различить которые можно только внимательно вглядываясь.
Найдено 3.3% дубликатов в CIFAR-10 и 10% (!) дубликатов в CIFAR-100. Рассматривается только кейс, когда для картинок из тест сета есть дубликаты в соответствующих трейн сетах. Дубликаты внутри самих трейн сетов не рассматриваются, потому что bias конечно вносят (на каких-то картинках сеть обучается больше), но оценку качества не смещают.
Дубликаты обнаруживают автоматизированной процедурой. Для каждого объекта находится ближайший в пространстве эмбеддингов из обученной на трейн сете CNN (взяты L2 нормализованные фичи с одного из верхних слоёв), а затем все пары отсматриваются вручную и размечаются людьми.
Все найденные дубликаты вычищены, заменены на картинки аналогичных классов, взятые из того же датасета-предшественника, из которого был собран CIFAR (это датасет Tiny Images, http://groups.csail.mit.edu/vision/TinyImages/, собранный из картиночной поисковой выдачи по запросам для synset’ов WordNet). Получился честный CIFAR (Fair CIFAR, ciFAIR), который можно взять по ссылке из начала поста.
Результаты моделей пересчитали (есть сложность, обученных на CIFAR моделей не опубликовано, поэтому обучали заново на референсных архитектурах), посчитали разницу в качестве (в среднем ошибка возросла на 0.41% для CIFAR-10 и на 2.73% на CIFAR-100; порядок лидеров не поменялся кроме одной пары на CIFAR-10). На сайте с датасетом есть лидерборд.
Вывод: в целом оферфита на дубликаты не произошло, и это хорошо (при этом модели, на которых проверялись, обладают достаточной capacity, чтобы тупо всё запомнить). Но всё-таки как-то неаккуратненько!
Следите за своими датасетами.
arXiv.org
Do We Train on Test Data? Purging CIFAR of Near-Duplicates
The CIFAR-10 and CIFAR-100 datasets are two of the most heavily benchmarked datasets in computer vision and are often used to evaluate novel methods and model architectures in the field of deep...
👍1
Semantic Redundancies in Image-Classification Datasets: The 10% You Don't Need
Vighnesh Birodkar, Hossein Mobahi, Samy Bengio
Статья: https://arxiv.org/abs/1901.11409
Ещё одна статья про избыточность датасетов, идейно перекликающаяся со статьёй из предыдущего поста.
Идея в том, чтобы посмотреть, можно ли в датасете выделить подмножество примеров, на котором с одной стороны результат обучения будет лучше, чем на случайно выбранном подмножестве такого же размера, а с другой — сопоставим с полным датасетом.
Это удалось на CIFAR-10 и ImageNet, и таким образом авторы показывают избыточность этих датасетов (порядка 10%). То есть эти самые 10% можно найти простой техникой агломеративной кластеризации.
Для этого на полном датасете обучается модель (ResNet-32 на CIFAR-10/100, ResNet-101 на ImageNet), затем с предпоследнего слоя берутся представления данных и на них проводится процедура агломеративной кластеризации, где в качестве меры близости берётся косинусная мера (вернее 1 минус косинусная близость в качестве меры непохожести). Кластеризацию проводят до образования группы кластеров нужного размера (объединяют наименее непохожие). Затем из каждого кластера оставляют точку наиболее близкую к центроиду и выбрасывают остальные. Так получаем сокращённый датасет.
Затем на сокращённом датасете обучают сетку и оценивают её качество. Сравнивают с сеткой, обученной на рандомном подмножестве такого же размера, взятого из оригинального датасета.
На CIFAR-10 оказывается, что отобранные таким образом 90% точек дают качество полного датасета. То же самое на ImageNet.
Главная интрига — CIFAR-100. На нём предложенный метод не обнаружил избыточности! И отобранный кластеризацией датасет был лишь чуть лучше рандомного. Что входит в противоречие с предыдущей статьёй, где нам явно показали, что в этом датасете полно почти-дубликатов и есть даже почти полные дубликаты, в отличие от CIFAR-10 (там в статье было также написано, что при составлении CIFAR-100, похоже, были ослаблены строгие критерии фильтрации). Там на CIFAR-100 нашли как раз порядка 10% разных дубликатов, которых не нашли здесь.
Получается серьёзная нестыковка.
Интересно, проблема в различии функций близости (здесь косинусная мера, там евклидово расстояние) или в особенности агломеративной процедуры (где в качестве меры непохожести двух кластеров берётся максимальная непохожесть между всеми парами точек этих кластеров)?
В общем всё это подозрительно!
P.S. Хотя я не совсем корректен, в предыдущей статье искали дубликаты в тесте относительно трейна, здесь же работали с трейн. Но всё равно как-то не верится.
Vighnesh Birodkar, Hossein Mobahi, Samy Bengio
Статья: https://arxiv.org/abs/1901.11409
Ещё одна статья про избыточность датасетов, идейно перекликающаяся со статьёй из предыдущего поста.
Идея в том, чтобы посмотреть, можно ли в датасете выделить подмножество примеров, на котором с одной стороны результат обучения будет лучше, чем на случайно выбранном подмножестве такого же размера, а с другой — сопоставим с полным датасетом.
Это удалось на CIFAR-10 и ImageNet, и таким образом авторы показывают избыточность этих датасетов (порядка 10%). То есть эти самые 10% можно найти простой техникой агломеративной кластеризации.
Для этого на полном датасете обучается модель (ResNet-32 на CIFAR-10/100, ResNet-101 на ImageNet), затем с предпоследнего слоя берутся представления данных и на них проводится процедура агломеративной кластеризации, где в качестве меры близости берётся косинусная мера (вернее 1 минус косинусная близость в качестве меры непохожести). Кластеризацию проводят до образования группы кластеров нужного размера (объединяют наименее непохожие). Затем из каждого кластера оставляют точку наиболее близкую к центроиду и выбрасывают остальные. Так получаем сокращённый датасет.
Затем на сокращённом датасете обучают сетку и оценивают её качество. Сравнивают с сеткой, обученной на рандомном подмножестве такого же размера, взятого из оригинального датасета.
На CIFAR-10 оказывается, что отобранные таким образом 90% точек дают качество полного датасета. То же самое на ImageNet.
Главная интрига — CIFAR-100. На нём предложенный метод не обнаружил избыточности! И отобранный кластеризацией датасет был лишь чуть лучше рандомного. Что входит в противоречие с предыдущей статьёй, где нам явно показали, что в этом датасете полно почти-дубликатов и есть даже почти полные дубликаты, в отличие от CIFAR-10 (там в статье было также написано, что при составлении CIFAR-100, похоже, были ослаблены строгие критерии фильтрации). Там на CIFAR-100 нашли как раз порядка 10% разных дубликатов, которых не нашли здесь.
Получается серьёзная нестыковка.
Интересно, проблема в различии функций близости (здесь косинусная мера, там евклидово расстояние) или в особенности агломеративной процедуры (где в качестве меры непохожести двух кластеров берётся максимальная непохожесть между всеми парами точек этих кластеров)?
В общем всё это подозрительно!
P.S. Хотя я не совсем корректен, в предыдущей статье искали дубликаты в тесте относительно трейна, здесь же работали с трейн. Но всё равно как-то не верится.
arXiv.org
Semantic Redundancies in Image-Classification Datasets: The 10%...
Large datasets have been crucial to the success of deep learning models in the recent years, which keep performing better as they are trained with more labelled data. While there have been...
Как известно, большая часть уловок в современном NLP строится вокруг unsupervised learning -- данных у нас много, а разметки мало, и она дорогая (а качественной -- так и вообще почти нет). Одним из интересных ходов является использование смайлов и эмоджи в качестве нативной разметки для сетевой коммуникации. Сегодня пара небольших работ на эту тему.
Interpretable Emoji Prediction via Label-Wise Attention LSTMs
Francesco Barbieri, Luis Espinosa-Anke, Jose Camacho-Collados, Steven Schockaert, Horacio Saggion
#NLP, #emoji, #attention, #EMNLP 2018
Статья: https://aclweb.org/anthology/D18-1508
Репозиторий: https://github.com/fvancesco/Semeval2018-Task2-Emoji-Detection
Сопроводительные материалы: https://fvancesco.github.io/label_wise_attention/
Небольшой, но забавный постер с EMNLP 2018. Авторы используют энкодер в виде двухслойного bi-LSTM со skip connections между слоями, дальше, поверх энкодера они применяют механизм внимания и его результат превращают, через проекцию и софтмакс, в предсказание эмоджи. В качестве вариации архитектуры они используют структуру, в которой на каждый эмоджи учится отдельная матрица внимания, что даёт доп. профит в качестве предсказания эмоджи. Лично я не уверен, что профит от этого больше, чем просто от кратного увеличения матрицы внимания, но так проще интерпретировать результаты. Собственно, вся идея в том, что дальше эти матрицы внимания можно использовать не только для предсказания эмоджи, но и для анализа того, от каких слов и конструкций зависит выбор эмоджи. Далее см. картинки.
И, чтоб два раза не вставать.
MOJITALK: Generating Emotional Responses at Scale
Xianda Zhou, William Yang Wang
#NLP, #emoji, #ACL 2018
Статья: https://arxiv.org/pdf/1711.04090.pdf
Код и датасет: https://github.com/Claude-Zhou/MojiTalk
Делают диалоговую RNN-модуль, учитывающую эмоджи. Точнее, используют seq2seq+attn с кондишенингом генерации ответа на конкретный символ эмоджи.
Учат три варианта диалоговой модели, отличия моделей такие: бейзлайн -- обычный seq2seq с вниманием, вторая модель -- СVAE, третья -- СVAE с REINFORCE обратной связью от предобученного классификатора эмоджи (с замороженными весами). По результатам -- СVAE всюду лучше бейзлайна, Reinforced CVAE обгоняет обычный CVAE на редких эмоджи, а на частных они работают примерно с одинаковым качеством. Отдельно делали человеческую оценку результатов, но результаты её приводят довольно странным образом. Но на приводимых cherry-picked примерах всё достаточно неплохо.
Interpretable Emoji Prediction via Label-Wise Attention LSTMs
Francesco Barbieri, Luis Espinosa-Anke, Jose Camacho-Collados, Steven Schockaert, Horacio Saggion
#NLP, #emoji, #attention, #EMNLP 2018
Статья: https://aclweb.org/anthology/D18-1508
Репозиторий: https://github.com/fvancesco/Semeval2018-Task2-Emoji-Detection
Сопроводительные материалы: https://fvancesco.github.io/label_wise_attention/
Небольшой, но забавный постер с EMNLP 2018. Авторы используют энкодер в виде двухслойного bi-LSTM со skip connections между слоями, дальше, поверх энкодера они применяют механизм внимания и его результат превращают, через проекцию и софтмакс, в предсказание эмоджи. В качестве вариации архитектуры они используют структуру, в которой на каждый эмоджи учится отдельная матрица внимания, что даёт доп. профит в качестве предсказания эмоджи. Лично я не уверен, что профит от этого больше, чем просто от кратного увеличения матрицы внимания, но так проще интерпретировать результаты. Собственно, вся идея в том, что дальше эти матрицы внимания можно использовать не только для предсказания эмоджи, но и для анализа того, от каких слов и конструкций зависит выбор эмоджи. Далее см. картинки.
И, чтоб два раза не вставать.
MOJITALK: Generating Emotional Responses at Scale
Xianda Zhou, William Yang Wang
#NLP, #emoji, #ACL 2018
Статья: https://arxiv.org/pdf/1711.04090.pdf
Код и датасет: https://github.com/Claude-Zhou/MojiTalk
Делают диалоговую RNN-модуль, учитывающую эмоджи. Точнее, используют seq2seq+attn с кондишенингом генерации ответа на конкретный символ эмоджи.
Учат три варианта диалоговой модели, отличия моделей такие: бейзлайн -- обычный seq2seq с вниманием, вторая модель -- СVAE, третья -- СVAE с REINFORCE обратной связью от предобученного классификатора эмоджи (с замороженными весами). По результатам -- СVAE всюду лучше бейзлайна, Reinforced CVAE обгоняет обычный CVAE на редких эмоджи, а на частных они работают примерно с одинаковым качеством. Отдельно делали человеческую оценку результатов, но результаты её приводят довольно странным образом. Но на приводимых cherry-picked примерах всё достаточно неплохо.
On Evaluation of Adversarial Perturbations for Sequence-to-Sequence Models
Paul Michel, Xian Li, Graham Neubig, Juan Miguel Pino
Language Technologies Institute, Carnegie Mellon University, Facebook AI
#NLP #NMT #adversarial #seq2seq #NAACL 2019
Статья: https://arxiv.org/abs/1903.06620
Код фреймворка: https://github.com/pmichel31415/teapot-nlp
Стандартный подход обучения на adversarial examples заключается в добавлении небольшого шума ко входу таким образом, чтобы вызвать неадекватные изменения выхода. Далее можно использовать такие примеры для более обучения более робастных моделей. Другими словами, можно учить сеть не слишком менять выход при небольших изменениях входа. Достаточно хорошо проработанный для изображений, этот подход в настоящее время активно переносят и на тексты. Здесь ключевым отличием является то, что для изображений можно легко генерировать слабый шум, не меняющий семантику, а для текстов как дискретных последовательностей это сложнее. Например, случайные замены букв выводят за пределы словаря, а случайные замены слов могут легко менять семантику.
Авторы статьи указывают на то, что в предшествующих работах по этой проблематике необходимость сохранения семантики при зашумлении входа в основном игнорировалась. Поэтому понятие adversarial examples они доопределяют (в контексте конкретной модели) как примеры изменения входа, сохраняющие семантику входа, но приводящие к изменению семантики выхода модели. В работе предлагается использовать поход к изменению входа с контролем сохранения семантики (на примере машинного перевода), авторы публикуют фреймворк для таких модификаций. Атака, т.е. поиск adversarial examples, проводится градиентным спуском с заменой одного слова входа на каждом шаге с сохранением семантики. Оптимизируется вероятность того, что модель ошибётся после замены.
Допустимые с точки зрения сохранения семантики замены описываются двумя стратегиями:
* kNN -- разрешается замена слова только на ближайшее из 10 в пространстве эмбеддингов,
* CharSwap -- разрешается перестановка букв, но только такая, которая гарантированно выводит из словаря (чтобы не попасть в слово с другой семантикой) -- для word-based моделей это приводит к замене слова на <unk>, если что.
Оценка успешности сохранения семантики осуществляется так:
* есть человеческая разметка (по шкале 0-5), она точнее, но дорогая и медленная, поэтому используется как способ контроля за автоматизированными метриками.
* в качестве автоматизированных метрик рассматривались BLEU, METEOR и chrF (based on character n-gram F-score)
Автоматизированные метрики оцениваются корреляцией с человеческой разметкой и, неожиданно, chrF вырывается вперёд, дальнейшие оценки приводятся в ней.
Сравниваются результаты для adversarial атак на разные NMT модели с/без ограничений на сохранение семантики. Понятно, что по chrF стратегия CharSwap будет давать наименьшую разницу входов по построению. Понятно также, что обе стратегии с ограничениями будут давать меньшую просадку в качестве выходов. Тем не менее, на основании этого выбирают CharSwap как лучшую стратегию, дальше работают с ней.
Затем показывают, что если доучивать NMT на примерах из CharSwap, то на стандартном тест-сете NMT-метрики (BLEU/charF) меняются незначительно, но на adversarial примерах из той же CharSwap, сюрприз, всё становится лучше.
Paul Michel, Xian Li, Graham Neubig, Juan Miguel Pino
Language Technologies Institute, Carnegie Mellon University, Facebook AI
#NLP #NMT #adversarial #seq2seq #NAACL 2019
Статья: https://arxiv.org/abs/1903.06620
Код фреймворка: https://github.com/pmichel31415/teapot-nlp
Стандартный подход обучения на adversarial examples заключается в добавлении небольшого шума ко входу таким образом, чтобы вызвать неадекватные изменения выхода. Далее можно использовать такие примеры для более обучения более робастных моделей. Другими словами, можно учить сеть не слишком менять выход при небольших изменениях входа. Достаточно хорошо проработанный для изображений, этот подход в настоящее время активно переносят и на тексты. Здесь ключевым отличием является то, что для изображений можно легко генерировать слабый шум, не меняющий семантику, а для текстов как дискретных последовательностей это сложнее. Например, случайные замены букв выводят за пределы словаря, а случайные замены слов могут легко менять семантику.
Авторы статьи указывают на то, что в предшествующих работах по этой проблематике необходимость сохранения семантики при зашумлении входа в основном игнорировалась. Поэтому понятие adversarial examples они доопределяют (в контексте конкретной модели) как примеры изменения входа, сохраняющие семантику входа, но приводящие к изменению семантики выхода модели. В работе предлагается использовать поход к изменению входа с контролем сохранения семантики (на примере машинного перевода), авторы публикуют фреймворк для таких модификаций. Атака, т.е. поиск adversarial examples, проводится градиентным спуском с заменой одного слова входа на каждом шаге с сохранением семантики. Оптимизируется вероятность того, что модель ошибётся после замены.
Допустимые с точки зрения сохранения семантики замены описываются двумя стратегиями:
* kNN -- разрешается замена слова только на ближайшее из 10 в пространстве эмбеддингов,
* CharSwap -- разрешается перестановка букв, но только такая, которая гарантированно выводит из словаря (чтобы не попасть в слово с другой семантикой) -- для word-based моделей это приводит к замене слова на <unk>, если что.
Оценка успешности сохранения семантики осуществляется так:
* есть человеческая разметка (по шкале 0-5), она точнее, но дорогая и медленная, поэтому используется как способ контроля за автоматизированными метриками.
* в качестве автоматизированных метрик рассматривались BLEU, METEOR и chrF (based on character n-gram F-score)
Автоматизированные метрики оцениваются корреляцией с человеческой разметкой и, неожиданно, chrF вырывается вперёд, дальнейшие оценки приводятся в ней.
Сравниваются результаты для adversarial атак на разные NMT модели с/без ограничений на сохранение семантики. Понятно, что по chrF стратегия CharSwap будет давать наименьшую разницу входов по построению. Понятно также, что обе стратегии с ограничениями будут давать меньшую просадку в качестве выходов. Тем не менее, на основании этого выбирают CharSwap как лучшую стратегию, дальше работают с ней.
Затем показывают, что если доучивать NMT на примерах из CharSwap, то на стандартном тест-сете NMT-метрики (BLEU/charF) меняются незначительно, но на adversarial примерах из той же CharSwap, сюрприз, всё становится лучше.