Thomas Wolf из 🤗, как и вам, скучно сидеть дома и он решил записать видео о Future of NLP. А ещё у него забавный акцент, так что всем смотреть. Рассказывает о размере моделек, out-of-domain генерализации, о низкой робастности текущих моделек и других интересных вещах. Если у вас нету времени смотреть, то вот слайды.
YouTube
The Future of Natural Language Processing
Transfer Learning in Natural Language Processing (NLP): Open questions, current trends, limits, and future directions. Slides: https://tinyurl.com/FutureOfNLP
A walk through interesting papers and research directions in late 2019/early-2020 on:
- model size…
A walk through interesting papers and research directions in late 2019/early-2020 on:
- model size…
FAIR только что опубликовал пост в своём блоге по Training with Quantization Noise for Extreme Model Compression.
Идея топовая - чтобы модели лучше квантизовались, давайте эмулировать квантизацию во время тренировки. Тогда обученные веса будут более робастны к ней. Но чтобы не было серьёзных ошибок во время обучения будем квантизовать случайные веса, а не всю сетку. А-ля dropout. Ещё их блог славится милыми анимациями.
Статья и код тоже доступны.
Идея топовая - чтобы модели лучше квантизовались, давайте эмулировать квантизацию во время тренировки. Тогда обученные веса будут более робастны к ней. Но чтобы не было серьёзных ошибок во время обучения будем квантизовать случайные веса, а не всю сетку. А-ля dropout. Ещё их блог славится милыми анимациями.
Статья и код тоже доступны.
Facebook
Training with quantization noise for extreme model compression
Quant-Noise is a new technique to enable extreme compression of state-of-the-art NLP and CV models without significantly affecting performance.
Спасибо @someotherusername за то, что помог с выковыриванием анимашки
Я решил по фану посмотреть на MindSpore - DL фреймворк от Huawei и оказалось что
1. это смесь практик TF и PyTorch, причём не самая плохая
1. документация на первый взгляд лучше, чем у TF 😂
1. есть поддержка "TPU" от Huawei
Выглядит это чудо на удивление готово, я думал что увижу какую-то выполненную на коленке поделку. Единственно, что раздражает - уж очень многословные и страшные туториалы. Непонятно, какие у него перспективы вне Китая, но будет интересно посмотреть, если он составит конкуренцию торчу и tf.
1. это смесь практик TF и PyTorch, причём не самая плохая
1. документация на первый взгляд лучше, чем у TF 😂
1. есть поддержка "TPU" от Huawei
Выглядит это чудо на удивление готово, я думал что увижу какую-то выполненную на коленке поделку. Единственно, что раздражает - уж очень многословные и страшные туториалы. Непонятно, какие у него перспективы вне Китая, но будет интересно посмотреть, если он составит конкуренцию торчу и tf.
Attention Module is Not Only a Weight: Analyzing Transformers with Vector Norms
Kobayashi et al. [Tohoku University]
arxiv.org/abs/2004.10102
Мы с вами уже видели десятки статей, которые пытаются понять, куда смотрит attention. Для этого анализа типично использовать нормализованные attention-скоры i.e.
Новый метод даёт более интерпретируемые результаты - например теперь BERT не смотрит на SEP и CLS. Это очень хорошо укладывается в гипотезу о том, что BERT учится смотреть на SEP и CLS тогда, когда голова хочет "отключиться". Также в эксперименте по машинному переводу показали, что ||att(x)|| гораздо сильнее коррелирует с алайнментом перевода, чем
Что нашли нового?
1. корреляция спирмена величин \alpha и ||att(x)|| заметно отрицательная на SEP (-0.7), CLS (-0.3) и точках с зяпятыми (-0.25) по сравнению с обычными токенами (-0.06). Получается что сетка учит эти эмбеддинги так, чтобы в них не было полезной инфы XOR чтобы на них мало смотрели.
1. BERT учит ||att(x)|| так, что у более редких токенов более высокие значения (спирмен 0.75), в некотором смысле он делает себе TF-IDF.
Kobayashi et al. [Tohoku University]
arxiv.org/abs/2004.10102
Мы с вами уже видели десятки статей, которые пытаются понять, куда смотрит attention. Для этого анализа типично использовать нормализованные attention-скоры i.e.
α = softmax(QK)
. Авторы этой статьи предлагают альтернативный подход - посмотреть на норму взвешенного value = ||att(x)|| = || V softmax(QK) ||, что в принцпе логично, потому что если attention имеет большой вес для элемента, значение которого равно нулю это всё равно что он никуда не смотрит.Новый метод даёт более интерпретируемые результаты - например теперь BERT не смотрит на SEP и CLS. Это очень хорошо укладывается в гипотезу о том, что BERT учится смотреть на SEP и CLS тогда, когда голова хочет "отключиться". Также в эксперименте по машинному переводу показали, что ||att(x)|| гораздо сильнее коррелирует с алайнментом перевода, чем
α
.Что нашли нового?
1. корреляция спирмена величин \alpha и ||att(x)|| заметно отрицательная на SEP (-0.7), CLS (-0.3) и точках с зяпятыми (-0.25) по сравнению с обычными токенами (-0.06). Получается что сетка учит эти эмбеддинги так, чтобы в них не было полезной инфы XOR чтобы на них мало смотрели.
1. BERT учит ||att(x)|| так, что у более редких токенов более высокие значения (спирмен 0.75), в некотором смысле он делает себе TF-IDF.
Experience Grounds Language
Bisk et al.
arxiv.org/abs/2004.10151
автоматическое саммари
Философская работа на тему NLP. И довольно интересная. Мы сейчас все свыклись с парадигмой pre-train/fune-tune да и вообще с самой идеей тренировки моделей для решения задач NLP. Но так было не всегда. Авторы предлагают разделить решение задачи NLP на несколько шагов (World Scopes) и одновременно спекулируют о будущем области.
Пост показался слишком длинным, поэтому вот telegraph
Bisk et al.
arxiv.org/abs/2004.10151
автоматическое саммари
Философская работа на тему NLP. И довольно интересная. Мы сейчас все свыклись с парадигмой pre-train/fune-tune да и вообще с самой идеей тренировки моделей для решения задач NLP. Но так было не всегда. Авторы предлагают разделить решение задачи NLP на несколько шагов (World Scopes) и одновременно спекулируют о будущем области.
Пост показался слишком длинным, поэтому вот telegraph
IBM Science Summarizer
Experience Grounds Language
Successful linguistic communication relies on a shared experience of the world, and it is this shared experience that makes utterances meaningful. Despite the incredible effectiveness of language processing models trained on text alone, today's best systems…
Scheduled DropHead: A Regularization Method for Transformer Models
Zhou et al. [Misrosoft Research and Beihang University]
arxiv.org/abs/2004.13342
Регуляризация трансформеров через дропаут голов. Дропайте головы во время тренировки и получайте бесплатный пункт на тесте. Если и rate менять во время тренировки à la inverse one-cycle, то ещё лучше. В общем вот и вся статья. Давно не было чего-то полезного, что можно описать в одну строчку, а закодить - в 5.
Zhou et al. [Misrosoft Research and Beihang University]
arxiv.org/abs/2004.13342
Регуляризация трансформеров через дропаут голов. Дропайте головы во время тренировки и получайте бесплатный пункт на тесте. Если и rate менять во время тренировки à la inverse one-cycle, то ещё лучше. В общем вот и вся статья. Давно не было чего-то полезного, что можно описать в одну строчку, а закодить - в 5.
Мне тут напомнили про einops. Такой NamedTensor, но работающий уже сейчас. Помогает меньше путаться в размерностях и уменьшает количество
.transpose
и .view
в вашем коде. На первый взгляд удобно, попробуем. Кстати автор либы - @arogozhnikov есть в чате, можете задать ему свои вопросы.Немножко контекста: "Every time I fire a linguist, the performance of the speech recognizer goes up" (Jelinek, IBM)
On Identifiability in Transformers
Brunner et al. [ETH Zurich]
arxiv.org/abs/1908.04211
Вторая волна анализа attentiion пошла! :parrot:
В этой статье авторы тоже говорят, что использовать attention weights для интерпретации - это плохая идея и даже дают формальное описание почему (но как по мне их определениие "идентифицируемости" слишком строгое и поэтому далеко от реальности). Из интересного тут то, что они предлагают ещё один метод анализа attention, который, аналогично Attention Module is Not Only a Weight показывает, что CLS и SEP токены не так важны.
Дальше интереснее: их эксперименты показывают две на первый взгляд противоречащих штуки.
1. Токен достаточно хорошо сопоставляется его эмбеддингу в том числе в последних слоях трансформера
2. Эмбеддинги различных слов сильно смешиваются внутри трансформера
То есть с одной стороны мы можем сказать, что 4 токен действительно соответствует 4 слову, но с другой - в нём очень много информации про другие слова. В принципе это ровно то, что мы имеем в виду под контекстуализированными эмбеддингами, но зато теперь мы имеем экспериментальное подтверждение этого.
Brunner et al. [ETH Zurich]
arxiv.org/abs/1908.04211
Вторая волна анализа attentiion пошла! :parrot:
В этой статье авторы тоже говорят, что использовать attention weights для интерпретации - это плохая идея и даже дают формальное описание почему (но как по мне их определениие "идентифицируемости" слишком строгое и поэтому далеко от реальности). Из интересного тут то, что они предлагают ещё один метод анализа attention, который, аналогично Attention Module is Not Only a Weight показывает, что CLS и SEP токены не так важны.
Дальше интереснее: их эксперименты показывают две на первый взгляд противоречащих штуки.
1. Токен достаточно хорошо сопоставляется его эмбеддингу в том числе в последних слоях трансформера
2. Эмбеддинги различных слов сильно смешиваются внутри трансформера
То есть с одной стороны мы можем сказать, что 4 токен действительно соответствует 4 слову, но с другой - в нём очень много информации про другие слова. В принципе это ровно то, что мы имеем в виду под контекстуализированными эмбеддингами, но зато теперь мы имеем экспериментальное подтверждение этого.
WandB всё больше хотят в enterprise.
Во-первых увидел у них WandB Artifacts, про который пока известна только одна картинка, но вообще ML-ориентированное хранилище артефактов звучит отлично для прода. Скорее всего, конечно, у вас уже своё наколеночное решение, но всё же.
Во-вторых, оказывается их self-hosted решение работает даже на бесплатных аккаунтах. Всё что вам нужно - это докер. Тайпаете в терминал
UPD: чтобы потом вернуться обратно на облачное решение:
Во-первых увидел у них WandB Artifacts, про который пока известна только одна картинка, но вообще ML-ориентированное хранилище артефактов звучит отлично для прода. Скорее всего, конечно, у вас уже своё наколеночное решение, но всё же.
Во-вторых, оказывается их self-hosted решение работает даже на бесплатных аккаунтах. Всё что вам нужно - это докер. Тайпаете в терминал
wandb local
и получаете wandb.ai на localhost:8080 (документация). Не могу понять - баг это или фича, но я теперь вообще не вижу минусов в wandb.UPD: чтобы потом вернуться обратно на облачное решение:
wandb login --host=https://api.wandb.ai
Weights & Biases
W&B Artifacts: Lightweight dataset and model versioning
With W&B Artifacts you can save every step of your pipeline, manage dataset versioning without deduplication, and save model checkpoints to easily compare versions.
Lite Transformer with Long-Short Range Attention
Wu et al. MIT
arxiv.org/abs/2004.11886
Статья про трюки, которые позволяют уменьшить трансформер в разы, ускорить его в разы (что не всегда совпрадает с уменьшением - см. ALBERT) и при этом почти не потерять (или даже приобрести) в метриках. Также много говорили про то, как запихать это в мобильный.
Трюки:
1. Не расширять пространство в FFN
2. Вместо одного self-attention обрабатывать половину вектора self-attention, а вторую - свёрткой
Код зарелижен, но мне читать его не понравилось
Wu et al. MIT
arxiv.org/abs/2004.11886
Статья про трюки, которые позволяют уменьшить трансформер в разы, ускорить его в разы (что не всегда совпрадает с уменьшением - см. ALBERT) и при этом почти не потерять (или даже приобрести) в метриках. Также много говорили про то, как запихать это в мобильный.
Трюки:
1. Не расширять пространство в FFN
2. Вместо одного self-attention обрабатывать половину вектора self-attention, а вторую - свёрткой
Код зарелижен, но мне читать его не понравилось
GitHub
GitHub - mit-han-lab/lite-transformer: [ICLR 2020] Lite Transformer with Long-Short Range Attention
[ICLR 2020] Lite Transformer with Long-Short Range Attention - mit-han-lab/lite-transformer