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 можно получить довольно хорошее представление о модели и сделать через это дистилляцию.
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
На этот раз GPT-2 научили играть в шахматы.
slatestarcodex.com/2020/01/06/a-very-unlikely-chess-game
За ссылку спасибо @vaklyuenkov
Slate Star Codex
A Very Unlikely Chess Game
Almost 25 years after Kasparov vs. Deep Blue, another seminal man vs. machine matchup: Neither competitor has much to be proud of here. White has a poor opening. Black screws up and loses his queen…
Forwarded from исследовано
Всем привет! До 13 марта продолжается набор в аспирантскую школу по компьютерным наукам ВШЭ. Мы, как начинающая исследовательская группа по NLP, готовы принять 1-2 аспирантов. Если вам интересна исследовательская работа и вы готовы к поступлению в аспирантуру, пишите Кате Артемовой (тлг: @eartemova, почта: [email protected]) .
Ссылка на аспирантскую школу: https://aspirantura.hse.ru/cs/news/323871305.html
Страница группы: https://cs.hse.ru/ai/computational-pragmatics/
Ссылка на аспирантскую школу: https://aspirantura.hse.ru/cs/news/323871305.html
Страница группы: https://cs.hse.ru/ai/computational-pragmatics/
aspirantura.hse.ru
Начался прием документов для поступления в Аспирантскую школу по компьютерным наукам
Пожалуйста, не пишите @dropout05 вопросы по курсу. Пишите их в форум курса или организаторам. Их контакты и остальные подробности есть в канале курса @dlinnlp2020spring
DeepPavlov Community Forum
About the Deep Learning in NLP 2020 Spring category
An official channel for questions to lecturers of Deep Learning in NLP 2020 course (Spring). You can find all important information at the following links: Course channel : https://yangx.top/dlinnlp2020spring Course discussion group : https://yangx.top/dlinnlp_discuss…
Забавный EDA данных русской английской и французской Википедий.
twitter.com/mizvladimir/status/1229795429925163009
twitter.com/mizvladimir/status/1229795429925163009
Twitter
Volodymyr Miz
Studying viewership trends across English, French, and Russian Wikipedia editions. Paper: https://t.co/iaQjQyCrSZ Data: https://t.co/qciWvcPeqP Interactive visualizations will be available soon, so stay tuned. @WikiResearch @wikiworkshop @TheWebConf #DataScience…
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. Абляционные исследования показывают, что инициализация критически важна.
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
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 с кодом. А чем больше объяснений трансформера есть - тем лучше.
amaarora.github.io/2020/02/18/annotatedGPT2.html
Не знаю, при чём тут GPT-2, но в посте неплохо и довольно подробно описан transformer с кодом. А чем больше объяснений трансформера есть - тем лучше.
Committed towards better future
The Annotated GPT-2
Introduction Prerequisites Language Models are Unsupervised Multitask Learners Abstract Model Architecture (GPT-2) Model Specifications (GPT) Imports Transformer Decoder inside GPT-2 CONV1D Layer Explained FEEDFORWARD Layer Explained ATTENTION Layer Explained…
Если вы студент, вам интересно контрибьютить в opensource и вы хотите немного на этом подзаработать (~$4K / лето), то аплайтись на Google Summer of Code. Там много интересных проектов, включая TensorFlow.
Только начинайте уже сейчас, потому что вам в том числе нужно составить proposal проекта и согласовать его с потенциальными менторами.
summerofcode.withgoogle.com
Только начинайте уже сейчас, потому что вам в том числе нужно составить 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)
Блоги/новости:
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)
huggingface.co
How to train a new language model from scratch using Transformers and Tokenizers
We’re on a journey to advance and democratize artificial intelligence through open source and open science.
В подборку must study курсов прибыло.
Stanford CS330 Deep Multi-Task and Meta Learning
cs330.stanford.edu
Ведёт его Chelsea Finn, которая очень известна в мире meta-learning (MAML, PEARL, unsupervised meta RL).
Видео лекций, домашки - всё уже доступно. Syllabus на первый взгляд тоже очень интересный.
Stanford CS330 Deep Multi-Task and Meta Learning
cs330.stanford.edu
Ведёт его Chelsea Finn, которая очень известна в мире meta-learning (MAML, PEARL, unsupervised meta RL).
Видео лекций, домашки - всё уже доступно. Syllabus на первый взгляд тоже очень интересный.
cs330.stanford.edu
CS 330 Deep Multi-Task and Meta Learning
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 влияет очень слабо (на уровне посмотреть в начало предложения).
По-моему это показывает то, что мы дествительно совершили скачок в понимании внутренних представлений трансформеров в прошлом году.
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
Спойлер: вы узнаете, чем call() отличается от forward()
twitter.com/jeremyphoward/status/1233007425763991558
Twitter
Jeremy Howard
Ever wondered what @PyTorch nn.Module and nn.Parameter do really? And how hooks actually work? Here's a working implementation from scratch of their key functionality, in one tweet! From our upcoming book and course: - https://t.co/bLd3sEXTpV - https://t.co/guKT7y9VfM
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 итд.
Делать обзор обзорной статьи как-то неразумно, так что действительно просто рекомендую выбрать ту часть статьи, которая интересна вам больше всего и прочитать.
Rogers, Kovaleva and Rumshisky [UMass Lowell]
arxiv.org/abs/2002.12327
Новая статья от нашей лабы! И одновременно статья, которую вы, вероятно, ждали - обзор взякой бертятины: какие BERT-like модели существуют, какие синтаксические/семантические свойства содержатся в хидденах этих моделей, какие есть методы сжатия, мультиязычные модели на основе BERT итд.
Делать обзор обзорной статьи как-то неразумно, так что действительно просто рекомендую выбрать ту часть статьи, которая интересна вам больше всего и прочитать.
Пример использования PyTorch TPU для NER (сам код по ссылке на гитхабе, в колабе только вызывалка этого).
Всё ещё выглядит кривовато, но в прошлом году на подъём всего окружения нужно было потратить больше часа, а теперь всё работает за пару минут, так что советую почитать код и запустить колаб.
Интересно, что Lightning уже поддерживает TPU в две строчки:
1. При создании Trainer указать
1. Делать шаг оптимизатора с помощью
twitter.com/srush_nlp/status/1233161898268467206
Всё ещё выглядит кривовато, но в прошлом году на подъём всего окружения нужно было потратить больше часа, а теперь всё работает за пару минут, так что советую почитать код и запустить колаб.
Интересно, что Lightning уже поддерживает TPU в две строчки:
1. При создании Trainer указать
num_tpu_cores
1. Делать шаг оптимизатора с помощью
torch_xla.core.xla_model.optimizer_step(optimizer)
вместо обычного optimizer.step()
twitter.com/srush_nlp/status/1233161898268467206
Twitter
Sasha Rush
Multi-core TPU 🤗 NER demo now in master. Runs <1 min per epoch. (Thanks to the torch_xla team.) Colab: https://t.co/h2qPhJWb5O Code (runs on CPU/GPU/DDP): https://t.co/nSwWSWN8cm https://t.co/FDlkedvo7V