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

Связь: @dropout05 (рекламы нет)
加入频道
Недавно видел курс, в котором NLP начинают с трансфомеров и хотел его сюда запостить. Но потерял 😶

Вместо него подборка твитов (а где ещё новости находить)
1. Тред по unsupervised MT от человека, фамилию которого я почти понял как произносить
1. В AI Dungeon теперь есть мультиплеер и более тонкая настройка генерации вашей истории
1. Статья о том, что BERT на удивление хорошо генерализует на out-of-distribution примеры
1. Я бы назвал это тизер-трейлером статьи - картинка безумной нейросети от команды Ричарда Сохера, которая делает conversational machine reading
Forwarded from addmeto
Майкрософт тут утверждает, что они с помощью машинлернинга научились различать важность и категорию найденной в коде ошибки с вероятностью выше 97%. Нет, в данном случае никакого "понимания" кода конечно нет, есть просто категоризация "на глаз" - не очень сложная задача, к которой майкрософт применил голову https://www.microsoft.com/security/blog/2020/04/16/secure-software-development-lifecycle-machine-learning/
Я тут решил почитать эту статью. Почувствовал себя немного в 2016 (Logistic Regression, Naive Bayes, Adaboost, ух) и немного ужаснулся с того, что они accuracy репортят в такой несбалансированной задаче (это она 97%). Но TPR FPR сходу выглядят адекватно (по крайней мере не константа предсказывается), так что забавно (и очень странно) что можно вот так просто с помощью логрега можно детектить баги.

UPD: эта статья не про поиск багов в коде, а про определение типа бага (security issue или нет) по тексту issue. Так что результаты неудивительны, но и задача не такая интересная.
DL in NLP
Прочитал подробнее Translation Artifacts in Cross-lingual Transfer Learning и это выглядит как очень интересный подвид даталика. Даже скорее даталик наоборот. В чём проблема: мультиязычные датасеты в часто создаются с помощью машинного перевода (XNLI, XQUAD…
Внезапно статья обновилась (кстати о том, почему arxiv лучше конференций) и теперь включает в себя не только критику текущего подхода, но и новый датасет.

esXNLI интересен тем, что изначально сделан на испанском, а затем переведён (человеками) на английский. Позволит исследовать насколько артефакты машинного перевода влияют на трансфер да и много всего другого.
Чат становится для меня ещё одним источником годноты. Вы просто лучшие 😎
(спасибо @Cookie_thief, @someotherusername и @Vanshi87)

1. Tokenizers: How machines read - хороший пост описывающий путь от .split(' ') до BPE и sentencepiece
1. Просто огненная (и большая) лекция по self-supervised в NLP начиная от n-gram LM и заканчивая ELECTRA от Alec Radford (автор GPT). Слайды для тех, кто так больше любит. Нашёл там новые вещи и для себя.
2. В догонку предыдущему пункту - оказывается курс Deep Unsupervised Learning 2020 от Беркли идёт прямо сейчас и постит все свои материалы в открытый доступ
1. CUDA error 59: Device-side assert triggered - пост про ошибку которую встречали все и которая ничего не говорит тебе о том, как себя исправить (зато пост скажет)
1. Гугл запускает умный поиск по своим репозиториям (TensorFlow, Go, Angular, Basil, ...). Может быть теперь в коде TF можно будет разобраться?
Для тех, кто интересуется interpretability, bias, fairness и прочей важной чепухой - OpenAI в коллаборации с почти всеми выпустила отчёт отвечающий на скорее бизнесовые задачи, чем исследовательские. Он отвечает на вопросы:

1. Can I (as a user) verify the claims made about the level of privacy protection guaranteed by a new AI system?
1. Can I (as a regulator) trace the steps that led to an accident caused by an autonomous vehicle?
1. Can I (as an academic) conduct impartial research on the risks associated with large-scale AI systems when I lack the computing resources of industry?
1. Can I (as an AI developer) verify that my competitors in a given area of AI development will follow best practices rather than cut corners to gain an advantage?

У отчёта есть шансы повлиять на то, куда движется индустрия. Так что это не только ответы на вопросы "что и как мы можем сделать" но и на вопрос "что будет через 3-5 лет". Если лень читать всё, просто в каждой главе ищите пункты Problem и Recommendation.
Новостей за выходные как-то не было, поэтому держите мою небольшую заметочку по тому почему fairseq (seq2seq-фрейворк на основе pytorch от FAIR) классный и как его использовать.
Итак, вот вам большая подборка интересного чтива. Сначала просто всякие интересности:

1. NLP Newsletter #10
1. Тулза для красивой визуализации архитектуры сети - тык
1. Отличная презентация от Huggingface с обзором последних наработок в Open-Domain QA.

Теперь перейдем к статьям:

1. Are Natural Language Inference Models impressive? Learning Implicature and Presupposition - статья по задаче NLI. Из важного - авторы релизят новый датасет и делают много интересных экспериментов, советую глянуть.
1. Should All Cross-Lingual Embeddings Speak English? (blogpost). Есть большое количество статей, в которых пытаются мапить пространство эмбеддингов одного языка в другое. В чем заключается проблема, которую видят авторы - при валидации модели почти всегда языком, в который мапят, является английский, и в общем случае такой подход может давать неверную оценку качества.
1. Weight Poisoning Attacks on Pre-trained Models - статья, предлагающая способ "атаки" на предобученную языковую модель, чтобы управлять её предиктами. Авторы допускают, что у атакующего есть доступ к модели и известны данные, на которых её учили и на которых будут файнтюнить(или хотя бы задача, под которую будет тюнинг). Суть атаки - хитрое предобучение и создание слов-триггеров (каких-то слабочастотных токенов из словаря), эмбеддинги которых заменяются на взвешенную сумму эмбеддингов токенов, специфичных для конкретного класса.
1. ToD-BERT: Pre-trained Natural Language Understanding for Task-Oriented Dialogues - новый брат берта, на этот раз заточенный под диалоговые системы. Авторы добавляют два новых токена - [SYS] и [USR] для ответа системы и запроса юзера соответственно. Помимо этого они файнтюнят модель на нескольких даунстрим тасках - Intent classification, Dialogue state tracking, Dialogue act prediction, Response selection. Ожидаемо, модель аутперфомит берта на классификации интентов и нескольких (около)диалоговых задачах.
1. Cross-lingual Contextualized Topic Models with Zero-shot Learning - мультиязычное тематическое моделирование на нейросетях. Авторы тренеруют модель на английском, и она способна выделять выученные топики в документах на других языках без предварительного файнтюнинга под них (поэтому собственно cross-lingual и zero-shot).

Статей накопилось много, детально вчитываться в каждую не успевал. Если где-то напортачил, или вы просто хотите пообсуждать статьи - добро пожаловать в чат)
Хорошая презентация на тему ниизкоресурсных языков и штук (в основном multilingual-штук), которые должны помогать в таком сеттинге. По моему опыту русский язык зачастую можно считать низкоресурсным (не на все задачи есть большие датасеты), так что советую смотреть в эту сторону.
Thomas Wolf из 🤗, как и вам, скучно сидеть дома и он решил записать видео о Future of NLP. А ещё у него забавный акцент, так что всем смотреть. Рассказывает о размере моделек, out-of-domain генерализации, о низкой робастности текущих моделек и других интересных вещах. Если у вас нету времени смотреть, то вот слайды.
FAIR только что опубликовал пост в своём блоге по Training with Quantization Noise for Extreme Model Compression.

Идея топовая - чтобы модели лучше квантизовались, давайте эмулировать квантизацию во время тренировки. Тогда обученные веса будут более робастны к ней. Но чтобы не было серьёзных ошибок во время обучения будем квантизовать случайные веса, а не всю сетку. А-ля dropout. Ещё их блог славится милыми анимациями.

Статья и код тоже доступны.
Спасибо @someotherusername за то, что помог с выковыриванием анимашки
Я решил по фану посмотреть на MindSpore - DL фреймворк от Huawei и оказалось что

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. α = 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.