DL in NLP
12.5K subscribers
547 photos
13 videos
27 files
1.1K links
Новости и обзоры статей на тему обработки естественного языка, нейросетей и всего такого.

Связь: @dropout05 (рекламы нет)
加入频道
Forwarded from Yaroslav Emelianov
Thieves on Sesame Street! Model Extraction of BERT-based APIs
Krishna et al.
https://arxiv.org/abs/1910.12366

TL;DR
Авторы предлагают делать дистилляцию берта на полностью синтетических данных. Для двух задач (NLI и QA) с помощью эвристик, основанных на n-грамах, они формируют искусственные датасеты, на которых файнтьюнят модели на основе BERT, используя в качестве таргета предикты настоящей модели, которая сама на основе BERT. Удается добиться приличного качества даже для дистилляции BERTlarge-модели в BERTbase. Таким образом, авторам удается эффективно "красть" модели посредством black-box атаки, не имея оригинальных обучающих данных.

Далее авторы обсуждают 2 метода защиты, каждый из которых имеет ограниченную эффективность. В первом из них модель-жертва снабжается классификатором для OOD данных или неотвечаемого вопроса, а во втором — модель-жертва обучается на "загрязненных" данных, после чего становится возможным в теории доказать факт кражи, хотя ей по-прежнему нельзя помешать.

В целом — интересная статья о том, что берт "настолько сильно обобщает", что через nonsensical inputs можно получить довольно хорошее представление о модели и сделать через это дистилляцию.
Языковые модели прекрасны и люди находят все больше способов их применить.
На этот раз GPT-2 научили играть в шахматы.

slatestarcodex.com/2020/01/06/a-very-unlikely-chess-game

За ссылку спасибо @vaklyuenkov
Forwarded from исследовано
Всем привет! До 13 марта продолжается набор в аспирантскую школу по компьютерным наукам ВШЭ. Мы, как начинающая исследовательская группа по NLP, готовы принять 1-2 аспирантов. Если вам интересна исследовательская работа и вы готовы к поступлению в аспирантуру, пишите Кате Артемовой (тлг: @eartemova, почта: [email protected]) .

Ссылка на аспирантскую школу: https://aspirantura.hse.ru/cs/news/323871305.html

Страница группы: https://cs.hse.ru/ai/computational-pragmatics/
Пожалуйста, не пишите @dropout05 вопросы по курсу. Пишите их в форум курса или организаторам. Их контакты и остальные подробности есть в канале курса @dlinnlp2020spring
DL in NLP pinned «Пожалуйста, не пишите @dropout05 вопросы по курсу. Пишите их в форум курса или организаторам. Их контакты и остальные подробности есть в канале курса @dlinnlp2020spring»
From English To Foreign Languages: Transferring Pre-trained Language Models
Tran [Amazon Alexa AI]
arxiv.org/abs/2002.07306

Когда ты видишь статью с одним автором - это либо полный трэш, либо что-то действительно интересное. В случае с этой статьёй:
With a single GPU, our approach can obtain a foreign BERTbase model within a day and a foreign BERTlarge within two days

Основная идея:
1. Инициализировать эмбеддинги нового языка (L2) с помощью эмбеддингов старого языка (L1). Каждый эмбеддинг L2 - это взвешенная сумма некоторых эмбеддингов L1. Веса находят либо с помощью word transition probability (см. статистический MT) либо с помощью unsupervised embedding alignment (см. Artexe 2018)
2. Обучить эмбеддинги BERT на данных L2 (остальные веса заморожены)
3. Обучить BERT на данных L1 + L2

Результаты заметно лучше mBERT на XNLI и немножко лучше на dependency parsing. Абляционные исследования показывают, что инициализация критически важна.
Multi-Sample Dropout for Accelerated Training and Better Generalization
Inoue [IBM Research]
arxiv.org/abs/1905.09788

Main idea: instead of one dropout mask use a couple of them.

1. Can be easily implemented
1. Significantly accelerates training by reducing the number of iterations
1. Does not significantly increase computation cost per iteration
1. Lower error rates and losses for both the training set and validation set
The Annotated GPT-2
amaarora.github.io/2020/02/18/annotatedGPT2.html

Не знаю, при чём тут GPT-2, но в посте неплохо и довольно подробно описан transformer с кодом. А чем больше объяснений трансформера есть - тем лучше.
Если вы студент, вам интересно контрибьютить в opensource и вы хотите немного на этом подзаработать (~$4K / лето), то аплайтись на Google Summer of Code. Там много интересных проектов, включая TensorFlow.
Только начинайте уже сейчас, потому что вам в том числе нужно составить proposal проекта и согласовать его с потенциальными менторами.

summerofcode.withgoogle.com
Так как опять нет времени на более подробное описание, вот подборка статей/постов/новостей которые меня заинтересовали за последние пару недель

Блоги/новости:
1. How to train a new language model from scratch using Transformers and Tokenizers
1. Simple AI shortcuts speed up simulations by billions of times - нейросети могут ускорять физические вычисления
1. Matrix Compression Operator - про сжатие нейросеток

Статьи:
1. Revisiting Self-Training for Neural Sequence Generation
1. Conditional Self-Attention for Query-based Summarization
1. Does syntax need to grow on trees? Sources of hierarchical inductive bias in sequence-to-sequence networks (статья, блог) - исследование inductive bias различных нейросеток в контексте синтаксиса и иерархии
1. Neural Machine Translation with Joint Representation (статья, код) - новая хитрая архитектура, альтернатива трансформеру (+1 BLEU на NIST12)
В подборку must study курсов прибыло.
Stanford CS330 Deep Multi-Task and Meta Learning
cs330.stanford.edu

Ведёт его Chelsea Finn, которая очень известна в мире meta-learning (MAML, PEARL, unsupervised meta RL).

Видео лекций, домашки - всё уже доступно. Syllabus на первый взгляд тоже очень интересный.
Fixed Encoder Self-Attention Patterns in Transformer-Based Machine Translation
Raganato et al [University of Helsinki]
arxiv.org/abs/2002.10260

Весь прошлый год был полон статей по анализу BERT и трансформеров в общем. Одним из главных выводов было то, что self-attention не сильно умненький и в основном смотрит на предыдущее/следующее слово, начало/конец предложения, объединяет BPE в слова. Raganato et al. решили проверить, можно ли использовать несколько захардкоженых паттернов attention (вместо того, чтобы учить их)и получить хороший результат на MT. Ответ - да!

Абляционные исследования показывают, что самые важные паттерны: previous word, next word, left context. Что в общем ожидаемо. На удивление паттерн current word влияет очень слабо (на уровне посмотреть в начало предложения).

По-моему это показывает то, что мы дествительно совершили скачок в понимании внутренних представлений трансформеров в прошлом году.
Визуалиция паттернов
Полезный трэд от Geremy Howard, в котором (в 2 твита!) рассказывается о фундаменте интерфейса PyTorch - nn.Module и nn.Parameter.

Спойлер: вы узнаете, чем call() отличается от forward()

twitter.com/jeremyphoward/status/1233007425763991558
A Primer in BERTology: What we know about how BERT works
Rogers, Kovaleva and Rumshisky [UMass Lowell]
arxiv.org/abs/2002.12327

Новая статья от нашей лабы! И одновременно статья, которую вы, вероятно, ждали - обзор взякой бертятины: какие BERT-like модели существуют, какие синтаксические/семантические свойства содержатся в хидденах этих моделей, какие есть методы сжатия, мультиязычные модели на основе BERT итд.
Делать обзор обзорной статьи как-то неразумно, так что действительно просто рекомендую выбрать ту часть статьи, которая интересна вам больше всего и прочитать.
Пример использования PyTorch TPU для NER (сам код по ссылке на гитхабе, в колабе только вызывалка этого).
Всё ещё выглядит кривовато, но в прошлом году на подъём всего окружения нужно было потратить больше часа, а теперь всё работает за пару минут, так что советую почитать код и запустить колаб.

Интересно, что Lightning уже поддерживает TPU в две строчки:
1. При создании Trainer указать num_tpu_cores
1. Делать шаг оптимизатора с помощью torch_xla.core.xla_model.optimizer_step(optimizer) вместо обычного optimizer.step()

twitter.com/srush_nlp/status/1233161898268467206