Так как опять нет времени на более подробное описание, вот подборка статей/постов/новостей которые меня заинтересовали за последние пару недель
Блоги/новости:
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
Наткнулся на блогпост к уже довольно старой статье (How Does Batch Normalization Help Optimization? Santurkar et al., 2018). В посте довольно хорошо описывается интуиция за статьёй. Немножко матана прилагается - всё как вы любите.
И почему эта статья вообще важная: она показывает, что наша интуиция иногда ведёт к неправильным выводам и нужно всегда её проверять.
blog.paperspace.com/busting-the-myths-about-batch-normalization
И почему эта статья вообще важная: она показывает, что наша интуиция иногда ведёт к неправильным выводам и нужно всегда её проверять.
blog.paperspace.com/busting-the-myths-about-batch-normalization
Paperspace by DigitalOcean Blog
Intro to Optimization in Deep Learning: Busting the Myth About Batch Normalization
Batch Normalisation does NOT reduce internal covariate shift. This posts looks into why internal covariate shift is a problem and how batch normalisation is used to address it.
Deep Learning Memory Usage and Pytorch Optimization Tricks
www.sicara.ai/blog/2019-28-10-deep-learning-memory-usage-and-pytorch-optimization-tricks
Хороший пост как для новичков, так и для тех, кто уже немножко погружён в DL. Рассказывает о том, почему нейросетки (конкретно бэкпроп) потребляют столько памяти и как с этим жить.
www.sicara.ai/blog/2019-28-10-deep-learning-memory-usage-and-pytorch-optimization-tricks
Хороший пост как для новичков, так и для тех, кто уже немножко погружён в DL. Рассказывает о том, почему нейросетки (конкретно бэкпроп) потребляют столько памяти и как с этим жить.
🔥 пост с обзором на ряд недавних NLP публикаций
Тык
Тык
Medium
NLP Research Highlights — Issue #1
Introducing a new dedicated series to highlight the latest interesting natural language processing (NLP) research.
Automatically Neutralizing Subjective Bias in Text
Pryzant et al.
arxiv.org/abs/1911.09709
Забавная новая задача повышения объективности текста. Датасет намайнили из правок Википедии, в качестве модельки используют систему из двух моделей: BERT детектирует субъективные выражения, а LSTM их исправляет.
Интересно, что будет, если применить эту модель к моей ленте твиттера.
Pryzant et al.
arxiv.org/abs/1911.09709
Забавная новая задача повышения объективности текста. Датасет намайнили из правок Википедии, в качестве модельки используют систему из двух моделей: BERT детектирует субъективные выражения, а LSTM их исправляет.
Интересно, что будет, если применить эту модель к моей ленте твиттера.
Fine-Tuning Pretrained Language Models: Weight Initializations, Data Orders, and Early Stopping
Dodge et al.
arxiv.org/abs/2002.06305
Мы с другом шутили, что random seed - это тоже гиперпараметр. Ещё никогда мы не были так правы.
Взяв обычный BERT и правильно подобрав random seed (на valid) можно получить результаты лучше, чем у RoBERTa, XLNet и др (на valid ???). Давайте допустиим, что авторы не просто переобучились (что вообще весьма вероятно - статьи с Архива такие статьи с Ахрива). Random seed определяет две важные вещи - инициализацию и порядок данных при обучении. Мы издревле знаем, что инициализация критически важна для нейросеток - если инициализируете из неправильного распределения может вообще не сойтись, а если из правильного - сможете обучить хоть CNN в 10 000 слоёв без skip-connection. По важности порядка данных гуглите curriculum learning. Также, если использовать seed только для инициализации, можно найти такие, которые будут трансфериться (показывать хорошие результататы) между датасетами, что забавно и даже логично.
Dodge et al.
arxiv.org/abs/2002.06305
Мы с другом шутили, что random seed - это тоже гиперпараметр. Ещё никогда мы не были так правы.
Взяв обычный BERT и правильно подобрав random seed (на valid) можно получить результаты лучше, чем у RoBERTa, XLNet и др (на valid ???). Давайте допустиим, что авторы не просто переобучились (что вообще весьма вероятно - статьи с Архива такие статьи с Ахрива). Random seed определяет две важные вещи - инициализацию и порядок данных при обучении. Мы издревле знаем, что инициализация критически важна для нейросеток - если инициализируете из неправильного распределения может вообще не сойтись, а если из правильного - сможете обучить хоть CNN в 10 000 слоёв без skip-connection. По важности порядка данных гуглите curriculum learning. Также, если использовать seed только для инициализации, можно найти такие, которые будут трансфериться (показывать хорошие результататы) между датасетами, что забавно и даже логично.
Introducing BART
Блогпост, рассказывающий о ещё одной бертоподобной модели и её интеграции в 🤗.
Если кто пропустил, в канале тоже был пост о ней.
Блогпост, рассказывающий о ещё одной бертоподобной модели и её интеграции в 🤗.
Если кто пропустил, в канале тоже был пост о ней.
TensorGoose
Introducing BART
Episode 1 – a mysterious new Seq2Seq model with state of the art summarization performance visits a popular open source library