TG Telegram Group & Channel
gonzo-обзоры ML статей | United States America (US)
Create: Update:

An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale
Alexey Dosovitskiy, Lucas Beyer, Alexander Kolesnikov, Dirk Weissenborn, Xiaohua Zhai, Thomas Unterthiner, Mostafa Dehghani, Matthias Minderer, Georg Heigold, Sylvain Gelly, Jakob Uszkoreit, Neil Houlsby
Статья: https://arxiv.org/abs/2010.11929
Код: https://github.com/google-research/vision_transformer
Ещё код: https://paperswithcode.com/paper/an-image-is-worth-16x16-words-transformers-1
Модели: https://console.cloud.google.com/storage/browser/vit_models

Знаковая работа от позавчера.

Можно было бы дать кликбейтовый заголовок “Новый ImageNet moment в распознавании изображений!”, но оставим попсу для других. Свежий Vision Transformer (ViT), предобученный на больших датасетах, демонстрирует SoTA и вообще интересное поведение на картинках и наверняка станет громким аналогом BERT’а в работе с изображениями, потеснив давно уже там доминирующие резнеты. Кажется, это таки знаменует пришествие self-attention’а в работу с изображениями.

Исторически это, конечно, далеко не первый подход к снаряду — было много попыток применить трансформеры к работе с картинками, начиная с Image Transformer и Sparse Transformer, к более поздним Axial Attention и multidimensional transformers (которые в принципе по-прежнему интересны), а также в наличии большой пласт работ, которые не то чтобы делают очередной трансформер, а скорее собирают аналоги свёрточных сетей на блоках с разными вариантами реализации self-attention (которые тоже интересны).

Данная работа выделяется в нескольких моментах:

1) Взята практически стандартная архитектура трансформера, для которой картиночные данные на входе адаптируют в более понятный для трансформера вид. В этом смысле это очень похоже на недавний Image GPT от OpenAI (iGPT, https://openai.com/blog/image-gpt/), также применявший стандартную в NLP архитектуру (языковую модель построенную на декодере трансформера) к последовательности пикселей (ну то есть вообще почти не адаптировали кроме как растянули картинку в строку). Предыдущие упомянутые варианты трансформеров для изображений уходили в более кастомные архитектуры (локальные или разреженные ядра и т.п.). Плюс текущего подхода в том, что в такую модель легко инкорпорировать все другие свежие достижения, показавшие профит на языковых задачах.

2) Модель предобучена на очень больших датасетах, стандартный ImageNet из них самый маленький и неинтересный. И хоть на малых датасетах (включая обычный ImageNet) рулили резнеты, на большом масштабе случается переход количества в качество и новая модель уделывает свёрточные архитектуры. И видно, что это ещё далеко не предел, есть серьёзный задел на будущее.

3). Предобученная модель (ну, одна из) выложена и её можно использовать для своих задач в режиме файнтюнинга. В таком режиме она вполне себе бьёт весь остальной имеющийся на данный момент state-of-the-art даже на старых добрых датасетах типа CIFAR-100. Научные результаты в DL безусловно важны, но часто для прогресса не менее важна трансляция научных результатов в практическую плоскость, и данная модель может стать тем же, чем стал BERT для NLP (и чем лишь очень ограниченно пока стал GPT-x).

Более детально про то, что сделано.

Как я говорил, взята практически стандартная архитектура трансформера. Для того, чтобы она работала с картинками, их специальным образом готовят: нарезают на патчи (например, размера 16x16 пикселей) и для каждого делают flatten, то есть переводят в одномерную последовательность, а затем её переводят в эмбеддинг фиксированной размерности через обучаемое линейное преобразование. Получается последовательность патчей. К ним добавляют позиционные эмбеддинги (в данном случае даже не синусоидальные как в дефолтном трансформере, а простые обучаемые). Ну и дополнительно в начало добавляют дополнительный токен [class] по аналогии с бертовым [CLS]. Эта позиция будет использоваться на выходе энкодера для классификации.

Есть ещё минорная разница с дефолтным трансформером, что слои нормализации стоят до self-attention и ffn, но это в целом мелочи.

An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale
Alexey Dosovitskiy, Lucas Beyer, Alexander Kolesnikov, Dirk Weissenborn, Xiaohua Zhai, Thomas Unterthiner, Mostafa Dehghani, Matthias Minderer, Georg Heigold, Sylvain Gelly, Jakob Uszkoreit, Neil Houlsby
Статья: https://arxiv.org/abs/2010.11929
Код: https://github.com/google-research/vision_transformer
Ещё код: https://paperswithcode.com/paper/an-image-is-worth-16x16-words-transformers-1
Модели: https://console.cloud.google.com/storage/browser/vit_models

Знаковая работа от позавчера.

Можно было бы дать кликбейтовый заголовок “Новый ImageNet moment в распознавании изображений!”, но оставим попсу для других. Свежий Vision Transformer (ViT), предобученный на больших датасетах, демонстрирует SoTA и вообще интересное поведение на картинках и наверняка станет громким аналогом BERT’а в работе с изображениями, потеснив давно уже там доминирующие резнеты. Кажется, это таки знаменует пришествие self-attention’а в работу с изображениями.

Исторически это, конечно, далеко не первый подход к снаряду — было много попыток применить трансформеры к работе с картинками, начиная с Image Transformer и Sparse Transformer, к более поздним Axial Attention и multidimensional transformers (которые в принципе по-прежнему интересны), а также в наличии большой пласт работ, которые не то чтобы делают очередной трансформер, а скорее собирают аналоги свёрточных сетей на блоках с разными вариантами реализации self-attention (которые тоже интересны).

Данная работа выделяется в нескольких моментах:

1) Взята практически стандартная архитектура трансформера, для которой картиночные данные на входе адаптируют в более понятный для трансформера вид. В этом смысле это очень похоже на недавний Image GPT от OpenAI (iGPT, https://openai.com/blog/image-gpt/), также применявший стандартную в NLP архитектуру (языковую модель построенную на декодере трансформера) к последовательности пикселей (ну то есть вообще почти не адаптировали кроме как растянули картинку в строку). Предыдущие упомянутые варианты трансформеров для изображений уходили в более кастомные архитектуры (локальные или разреженные ядра и т.п.). Плюс текущего подхода в том, что в такую модель легко инкорпорировать все другие свежие достижения, показавшие профит на языковых задачах.

2) Модель предобучена на очень больших датасетах, стандартный ImageNet из них самый маленький и неинтересный. И хоть на малых датасетах (включая обычный ImageNet) рулили резнеты, на большом масштабе случается переход количества в качество и новая модель уделывает свёрточные архитектуры. И видно, что это ещё далеко не предел, есть серьёзный задел на будущее.

3). Предобученная модель (ну, одна из) выложена и её можно использовать для своих задач в режиме файнтюнинга. В таком режиме она вполне себе бьёт весь остальной имеющийся на данный момент state-of-the-art даже на старых добрых датасетах типа CIFAR-100. Научные результаты в DL безусловно важны, но часто для прогресса не менее важна трансляция научных результатов в практическую плоскость, и данная модель может стать тем же, чем стал BERT для NLP (и чем лишь очень ограниченно пока стал GPT-x).

Более детально про то, что сделано.

Как я говорил, взята практически стандартная архитектура трансформера. Для того, чтобы она работала с картинками, их специальным образом готовят: нарезают на патчи (например, размера 16x16 пикселей) и для каждого делают flatten, то есть переводят в одномерную последовательность, а затем её переводят в эмбеддинг фиксированной размерности через обучаемое линейное преобразование. Получается последовательность патчей. К ним добавляют позиционные эмбеддинги (в данном случае даже не синусоидальные как в дефолтном трансформере, а простые обучаемые). Ну и дополнительно в начало добавляют дополнительный токен [class] по аналогии с бертовым [CLS]. Эта позиция будет использоваться на выходе энкодера для классификации.

Есть ещё минорная разница с дефолтным трансформером, что слои нормализации стоят до self-attention и ffn, но это в целом мелочи.


>>Click here to continue<<

gonzo-обзоры ML статей






Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)