No Train No Gain: Revisiting Efficient Training
Algorithms For Transformer-based Language Models
[Статья][Код]
С течением времени запрос на обучение языковых моделях, основанных на Трансформерах, растет быстрее, чем имеющиеся в распоряжении вычислительные ресурсы. Потому и возникает запрос на эффективное обучение моделей.
Коллективный разум DL-сообщества предложил великое множество стратегий ускорения обучения: модификации процедуры обучения с использованием только части слоев, использованием части данных и алгоритмами отпимизации.
Каждая статья заявляет в той или иной форме, что предложенный метод эффективнее базового решения. Но что означает эффективнее? Ответ на этот вопрос не столь тривиален.
Сравнение эффективности алгоритмов
Количество шагов алгоритмов может быть плохим показателем - так как время одного шага может существенно различаться между алгоритмами. Алгоритм делающий в два раза меньше шагов, но с пятикратной стоимостью шага не слишком полезен.
Время работы зависит от используемой конфигурации вычислительных ресурсов.
Число операций с плавающей точкой зачастую не отражает специфику реализации математических операций на железе, время доступа к памяти, накладные расходы на коммуникацию….
Потому авторы предлагают использовать относительное время работы, привязанное к конкретному железу. Для некоторой конфигурации (видеокарты, CPU, ОЗУ) фиксируется вычислительный бюджет, и при запуске на другом сервере надо замерить отношение работы алгоритма к исходной конфигурации и с поправкой на этот фактор проводить все замеры. Т.е если новый сервер в 2 раза быстрее - то эксперимент должен быть в два раза короче.
Algorithms For Transformer-based Language Models
[Статья][Код]
С течением времени запрос на обучение языковых моделях, основанных на Трансформерах, растет быстрее, чем имеющиеся в распоряжении вычислительные ресурсы. Потому и возникает запрос на эффективное обучение моделей.
Коллективный разум DL-сообщества предложил великое множество стратегий ускорения обучения: модификации процедуры обучения с использованием только части слоев, использованием части данных и алгоритмами отпимизации.
Каждая статья заявляет в той или иной форме, что предложенный метод эффективнее базового решения. Но что означает эффективнее? Ответ на этот вопрос не столь тривиален.
Сравнение эффективности алгоритмов
Количество шагов алгоритмов может быть плохим показателем - так как время одного шага может существенно различаться между алгоритмами. Алгоритм делающий в два раза меньше шагов, но с пятикратной стоимостью шага не слишком полезен.
Время работы зависит от используемой конфигурации вычислительных ресурсов.
Число операций с плавающей точкой зачастую не отражает специфику реализации математических операций на железе, время доступа к памяти, накладные расходы на коммуникацию….
Потому авторы предлагают использовать относительное время работы, привязанное к конкретному железу. Для некоторой конфигурации (видеокарты, CPU, ОЗУ) фиксируется вычислительный бюджет, и при запуске на другом сервере надо замерить отношение работы алгоритма к исходной конфигурации и с поправкой на этот фактор проводить все замеры. Т.е если новый сервер в 2 раза быстрее - то эксперимент должен быть в два раза короче.
Архитектурные модификации
Layer stacking
Обучаем меньшую модель некоторое число шагов, а затем дублируем слои и обучаем далее уже вдвое большую модель.
Предполагаемый выигрыш за счет того, что меньшая модель делает большее число шагов при фиксированном размере.
Layer dropping
В архитектурах с residual connections в целях регуляризации иногда пропускают вычисления части слоев (например MHA или FeedForward block). Кроме того, сия процедура дает некоторую экономию в количестве вычислений. Обыкновенно в начале обучения
вероятность пропуска слоя равна нулю и с течением времени растет до некоторого максимального значения. Кроме того, вероятность растет от входа модели, к ее выходу (согласно народной мудрости в начале обучаются универсальные и общие представления, а ближе к выходу более специфичные).
Отбор данных
Selective backprop
На обратном проходе градиенты считаются только по примерам с наибольшим значением функции потерь. На прямом проходе считается лосс, а на обратном сэмплируются примеры отранжированные по недавней истории функции потерь.
RHO Loss
Предложенная в работе метод уменьшает вес примеров с большими значениями train лосса, так как они скорее всего соотвествуют шумным или некорректно размеченным данным.
Оптимизаторы
Lion
В качестве альтернативы общеупотребимому Adam-у в начале этого года был предложен отпимизатор Lion, найденный с помощью reinforcement learning. Теоретических гарантий на его превосходство нет, но в ряде работ утверждается, что он немного накидывает по сравнению с Adam. При этом сам алгоритм достаточно прост.
Sophia
Все новое - это хорошо забытое старое, как известно. Sophia - по существу тот же Adam, но использующий другой способ оценки кривизны для preconditioning. В исходной работе использовались две формулировки - через Hutchinson estimator и Gauss-Newton-Bartlett. В экспериментах здесь используется вторая, так как ее реализация была опубликована (и работала немного лучше в cтатье по Sophia).
Layer stacking
Обучаем меньшую модель некоторое число шагов, а затем дублируем слои и обучаем далее уже вдвое большую модель.
Предполагаемый выигрыш за счет того, что меньшая модель делает большее число шагов при фиксированном размере.
Layer dropping
В архитектурах с residual connections в целях регуляризации иногда пропускают вычисления части слоев (например MHA или FeedForward block). Кроме того, сия процедура дает некоторую экономию в количестве вычислений. Обыкновенно в начале обучения
вероятность пропуска слоя равна нулю и с течением времени растет до некоторого максимального значения. Кроме того, вероятность растет от входа модели, к ее выходу (согласно народной мудрости в начале обучаются универсальные и общие представления, а ближе к выходу более специфичные).
Отбор данных
Selective backprop
На обратном проходе градиенты считаются только по примерам с наибольшим значением функции потерь. На прямом проходе считается лосс, а на обратном сэмплируются примеры отранжированные по недавней истории функции потерь.
RHO Loss
Предложенная в работе метод уменьшает вес примеров с большими значениями train лосса, так как они скорее всего соотвествуют шумным или некорректно размеченным данным.
Оптимизаторы
Lion
В качестве альтернативы общеупотребимому Adam-у в начале этого года был предложен отпимизатор Lion, найденный с помощью reinforcement learning. Теоретических гарантий на его превосходство нет, но в ряде работ утверждается, что он немного накидывает по сравнению с Adam. При этом сам алгоритм достаточно прост.
Sophia
Все новое - это хорошо забытое старое, как известно. Sophia - по существу тот же Adam, но использующий другой способ оценки кривизны для preconditioning. В исходной работе использовались две формулировки - через Hutchinson estimator и Gauss-Newton-Bartlett. В экспериментах здесь используется вторая, так как ее реализация была опубликована (и работала немного лучше в cтатье по Sophia).
🔥2
Эксперименты
Для сравнения различных методик эффективного обучения авторы берут BERT и T5 модели, обучают на задачи MLM и span-corrupting MLM, соответственно. Для предобучения используется C4. Для каждого метода параметры подстраиваются на основе некоторой сетки.
Алгоритмы сравниваются на вычислительных бюджетах в 6,12,24 часов на одной RTX 3090 (A100 для Т5).
Для оценки качества модели BERT валидируют результат файтьюнинга BERT на задачах из GLUE/SuperGLUE бенчмарков. Кроме того, оценивается качество работы MLM на валидации для BERT и T5. И для T5 модель проверяют на Super Natural Instructions.
Как оказалось, ни один из перечисленных методов оптимизации процедуры обучения не дают стабильного выигрыша по сравнению со стандартной процедуро обучения (Adam без наворотов).
На коротких отрезках - 6-12 часов некоторый профит имеет место от Layer stacking, практически исчезающий при более длительном обучении. Остальные алгоритмы из рассмотренных не дают выигрыша против бейзлайна ни при каких бюджетах обучения. Методы отбора данных при заданном ограничении на время работают хуже и на MLM и на GLUE.
Новомодные отпимизаторы (Lion и T5) сходятся хуже по времени со сравнению с baseline.
Итоги
Результат данной статьи в очередной раз подтверждает важность аккуратного и честного сравнения методов друг с другом. Статьи по Deep Learning выходят все чаще и чаще, потому спрос на ‘санитаров’ леса будет только расти с течением времени.
Наука на то и наука, что фальсифицируема.
Для сравнения различных методик эффективного обучения авторы берут BERT и T5 модели, обучают на задачи MLM и span-corrupting MLM, соответственно. Для предобучения используется C4. Для каждого метода параметры подстраиваются на основе некоторой сетки.
Алгоритмы сравниваются на вычислительных бюджетах в 6,12,24 часов на одной RTX 3090 (A100 для Т5).
Для оценки качества модели BERT валидируют результат файтьюнинга BERT на задачах из GLUE/SuperGLUE бенчмарков. Кроме того, оценивается качество работы MLM на валидации для BERT и T5. И для T5 модель проверяют на Super Natural Instructions.
Как оказалось, ни один из перечисленных методов оптимизации процедуры обучения не дают стабильного выигрыша по сравнению со стандартной процедуро обучения (Adam без наворотов).
На коротких отрезках - 6-12 часов некоторый профит имеет место от Layer stacking, практически исчезающий при более длительном обучении. Остальные алгоритмы из рассмотренных не дают выигрыша против бейзлайна ни при каких бюджетах обучения. Методы отбора данных при заданном ограничении на время работают хуже и на MLM и на GLUE.
Новомодные отпимизаторы (Lion и T5) сходятся хуже по времени со сравнению с baseline.
Итоги
Результат данной статьи в очередной раз подтверждает важность аккуратного и честного сравнения методов друг с другом. Статьи по Deep Learning выходят все чаще и чаще, потому спрос на ‘санитаров’ леса будет только расти с течением времени.
Наука на то и наука, что фальсифицируема.
Графики и картинки из статей лучше прикреплять
Anonymous Poll
31%
Отдельными постами (как раньше)
31%
Комментариями к постам (как в последнем посте)
38%
Без разницы
Retentive Network: A Successor to Transformer for Large Language Models
[Статья][Код]
Каждый исследователь или практик алкает следующих качеств от архитектуры нейронной сети:
1️⃣ Эффективное обучение
2️⃣ Хорошее качество
3️⃣ Дешевый инференс
Архитектура Трансформер, доминирующая во многих областях и приложениях Deep Learning, удовлетворяет первым двух из требований, но, к сожалению, довольно тяжеловесна и прожорлива до вычислений.
Множество работ предлагали различные альтернативы и приближения attention, но ни один из них не стал общеупотребимым на практике. Аналогично, варианты с внедрением рекуррентных механизмов и state-space моделей (S4, H3, Hyena) хоть и получили признание, но не составили полноценной конкуренции attention.
И в этой статье авторы делают довольно громкое заявление о том, что они смогли воплотить невозможный треугольник в реальность, создав архитектуру, обладающую всеми желаемыми аттрибутами - Retentive Network (RetNet). Все прошлые архитектуры можно теперь со спокойной душой отправить на свалку истории.
[Статья][Код]
Каждый исследователь или практик алкает следующих качеств от архитектуры нейронной сети:
1️⃣ Эффективное обучение
2️⃣ Хорошее качество
3️⃣ Дешевый инференс
Архитектура Трансформер, доминирующая во многих областях и приложениях Deep Learning, удовлетворяет первым двух из требований, но, к сожалению, довольно тяжеловесна и прожорлива до вычислений.
Множество работ предлагали различные альтернативы и приближения attention, но ни один из них не стал общеупотребимым на практике. Аналогично, варианты с внедрением рекуррентных механизмов и state-space моделей (S4, H3, Hyena) хоть и получили признание, но не составили полноценной конкуренции attention.
И в этой статье авторы делают довольно громкое заявление о том, что они смогли воплотить невозможный треугольник в реальность, создав архитектуру, обладающую всеми желаемыми аттрибутами - Retentive Network (RetNet). Все прошлые архитектуры можно теперь со спокойной душой отправить на свалку истории.
👍4
Метод
Предложенный механизм рассматривается в качестве альтернативы стандартному Attention в трансформер блоках, то есть чередуется с feedforward слоями и применяется на последовательностях токенов.
Retention является по существу версией RNN, c обновляемым вектором состояния, где каждое последующее состояние получается как взвешенная (матрично) сумма прошлого состояния и текущего элемента последовательности, и с выходной проекцией, превращающей скрытое состояние в выход слоя. Все проекции - взвешивающая скрытое состояние, текущий элемент последовательности и выход, получаются линейным преобразованием входа - полный аналог query, key, value проекций в Attention. В частном случае необучаемых проекций архит
Далее авторы диагонализуют матрицу, преобразующую скрытое состояние, перепараметризуют веса и приходят в итоге к форме, удобной для вычисления. Полученная операция включает в себе attention без softmax, causal masking, и экспоненциальное затухание по длине последовательности.
Замечательным свойством retention является возможность представить его в 3 ипостасях:
1️⃣ Параллельная версия (оптимальная для обучения на GPU)
2️⃣ Последовательная версия (бюджетная на инференсе)
3️⃣ Чанковая реализация (trade-off между двумя первыми)
В первой версии одновременно обрабатывается вся последовательность, во второй один элемент, в третьей - блок некоторого размера.
Далее, как и в оригинальном attention, предлагается многоголовая версия Retention. Однако, если обучаемыми разными головами паттерны в MultiHeadAttention имеют случайное поведение, то здесь разные головы отвечают разным масштабам. Коэффициент затухания γ определяет характерный масштаб (длину контекста), с которой работает данная голова. На выход MultiHeadRetention довешивается GroupNorm.
Для повышения выразительности операции выход MultiHeadRetention умножается на
Предложенный механизм рассматривается в качестве альтернативы стандартному Attention в трансформер блоках, то есть чередуется с feedforward слоями и применяется на последовательностях токенов.
Retention является по существу версией RNN, c обновляемым вектором состояния, где каждое последующее состояние получается как взвешенная (матрично) сумма прошлого состояния и текущего элемента последовательности, и с выходной проекцией, превращающей скрытое состояние в выход слоя. Все проекции - взвешивающая скрытое состояние, текущий элемент последовательности и выход, получаются линейным преобразованием входа - полный аналог query, key, value проекций в Attention. В частном случае необучаемых проекций архит
Далее авторы диагонализуют матрицу, преобразующую скрытое состояние, перепараметризуют веса и приходят в итоге к форме, удобной для вычисления. Полученная операция включает в себе attention без softmax, causal masking, и экспоненциальное затухание по длине последовательности.
Замечательным свойством retention является возможность представить его в 3 ипостасях:
1️⃣ Параллельная версия (оптимальная для обучения на GPU)
2️⃣ Последовательная версия (бюджетная на инференсе)
3️⃣ Чанковая реализация (trade-off между двумя первыми)
В первой версии одновременно обрабатывается вся последовательность, во второй один элемент, в третьей - блок некоторого размера.
Далее, как и в оригинальном attention, предлагается многоголовая версия Retention. Однако, если обучаемыми разными головами паттерны в MultiHeadAttention имеют случайное поведение, то здесь разные головы отвечают разным масштабам. Коэффициент затухания γ определяет характерный масштаб (длину контекста), с которой работает данная голова. На выход MultiHeadRetention довешивается GroupNorm.
Для повышения выразительности операции выход MultiHeadRetention умножается на
swish(XW_G)
- gating механизм, и пропускается через выходную проекцию W_O
.Эксперименты
Предложенную архитектуру RetNet обучают на задаче CausalLM на смеси из The Pile, C4, The Stack. В качестве бейзлайна берут стандартный трансформер.
Для оценки качества модели используют 0-shot и few-shot бенчмарки из LM Evaluation Harness.
Retention Network достигает меньшей перплексии на валидации по сравнению с Transformer на размерах 2.7B, 6.7B, и по форме кривой авторы утверждают, что Retention Network масштабируется лучше трансформера (сильноватое заявление на основе графика из 3-х точек). Аналогично, Retention Network превосходит Transformer на 0-shot и few-shot.
Далее следуют замеры расхода памяти и скорости инференса, и RetNet оказывается быстрее и экономичнее по расходу GPU RAM даже оптимизированной версии Flash Attention на тритоне.
Расход памяти, при работе в рекуррентном режиме не растет с размером последовательности, как и скорость генерации одного токена не зависит от длины последовательности.
При сравнении на ряде бенчмарков по Language modelling RetNet превосходит другие альтернативы трансформера - State-Space модели, RWKV, линейный трансформер.
Удивительно, что нет сравнения на Long Range Arena, которое является признанным мерилом способности сети работать с длинным контекстом, каким бы данный бенчмарк ограниченным не несовершенным ни был.
Авторы проводят ablation компонент архитектуры и все компоненты - GroupNorm, multi-head, экспоненциальный спад γ с разным коэффициентом в разных головах оказывается важен. Хоть разница, не сказать, чтобы кардинальная для каждой из компонент.
Предложенную архитектуру RetNet обучают на задаче CausalLM на смеси из The Pile, C4, The Stack. В качестве бейзлайна берут стандартный трансформер.
Для оценки качества модели используют 0-shot и few-shot бенчмарки из LM Evaluation Harness.
Retention Network достигает меньшей перплексии на валидации по сравнению с Transformer на размерах 2.7B, 6.7B, и по форме кривой авторы утверждают, что Retention Network масштабируется лучше трансформера (сильноватое заявление на основе графика из 3-х точек). Аналогично, Retention Network превосходит Transformer на 0-shot и few-shot.
Далее следуют замеры расхода памяти и скорости инференса, и RetNet оказывается быстрее и экономичнее по расходу GPU RAM даже оптимизированной версии Flash Attention на тритоне.
Расход памяти, при работе в рекуррентном режиме не растет с размером последовательности, как и скорость генерации одного токена не зависит от длины последовательности.
При сравнении на ряде бенчмарков по Language modelling RetNet превосходит другие альтернативы трансформера - State-Space модели, RWKV, линейный трансформер.
Удивительно, что нет сравнения на Long Range Arena, которое является признанным мерилом способности сети работать с длинным контекстом, каким бы данный бенчмарк ограниченным не несовершенным ни был.
Авторы проводят ablation компонент архитектуры и все компоненты - GroupNorm, multi-head, экспоненциальный спад γ с разным коэффициентом в разных головах оказывается важен. Хоть разница, не сказать, чтобы кардинальная для каждой из компонент.
Итог
Интересная идея с понятным value proposition. Однако, валидация выглядит на текущий момент слишком ограниченной и специфичной, чтобы утверждать про рождение преемника трансформера. Наличие экспоненциального затухания, пусть и на разных масштабах, ограничивает длину обрабатываемого контекста. Устремление же γ->1, по всей видимости, приводит к нестабильности в обучении. Код модели недавно появился в открытом доступе, так что ждем независимых проверок, а можем и сами убедиться в чудесных свойствах предложенной архитектуры.
Но за подачу материала, тем не менее следует отдать комплимент авторам. Красивая реклама - важная составляющая не только в коммерции, но и в науке.
Интересная идея с понятным value proposition. Однако, валидация выглядит на текущий момент слишком ограниченной и специфичной, чтобы утверждать про рождение преемника трансформера. Наличие экспоненциального затухания, пусть и на разных масштабах, ограничивает длину обрабатываемого контекста. Устремление же γ->1, по всей видимости, приводит к нестабильности в обучении. Код модели недавно появился в открытом доступе, так что ждем независимых проверок, а можем и сами убедиться в чудесных свойствах предложенной архитектуры.
Но за подачу материала, тем не менее следует отдать комплимент авторам. Красивая реклама - важная составляющая не только в коммерции, но и в науке.
FasterViT: Fast Vision Transformers with Hierarchical Attention
Очередной гипер-мега-ультра эффективный гибрид трансформера и сверточной архитектуры - FasterViT от Nvidia.
Согласно кривой Парето throughput vs top-1 ImageNet accuracy, представленной в работе, FasterViT заметно опережает всех предшественников при замерах на A100.
В чем же секрет такого чудесного быстродействия?
Архитектура
Работа по ускорению и оптимизации vision (и не только) трансформеров активно ведется примерно со времени их младенчества. Исходный трансформер очень гибок и универсален, и в то же обладая меньшим набором inductive biases, менее заточен под задачи компьютерного зрения, поэтому не столь эффективен.
С 2021 года появилось множество работ, совмещающих архитектурные элементы из трансформера и более привычных сверточных архитектур - Swin, ConvNext, PoolFormer, CrossViT, CoAT, MobileViT, EfficientFormer, NextViT, и многие другие.
Серьёзным недостатком трансформера с точки зрения вычислительной сложности является квадратичная сложность по длине последовательности. Потому приходится либо ограничиваться Attention на низких разрешениях, либо нарезать на крупные патчи. В литературе был предложен ряд способов удешевить attention за счет его локализации в окне (Swin), факторизации на локальный и глобальный attention (Twins).
В этой работе предложили по сути новую версию факторизации Attention. Заводят на каждое окно (аналогичное таковому в Swin) некоторое количество carrier токенов (которых гораздо меньше, чем патчей в окне). И в каждом HAT (Hierarchical ATtention) происходит обмен информацией между carrier токенами из разных окон, а затем carrier токены обмениваются информацией с патчами в окнах. После одного или несколько раундов HAT carrier токены сливаются с исходными патчами для передачи глобальной информации.
Кроме того, популярные в мобильных архитектурах depthwise свертки не эффективны по скорости, из-за memory-bound природы верхних слоев, поэтому используются обычные 3x3 свертки без факторизации.
Дизайн архитектуры довольно стандартный для эффективных гибридных архитектур на первых двух стадиях (высоком разрешении) сверточные блоки. На меньшем разрешении работают HAT блоки.
Очередной гипер-мега-ультра эффективный гибрид трансформера и сверточной архитектуры - FasterViT от Nvidia.
Согласно кривой Парето throughput vs top-1 ImageNet accuracy, представленной в работе, FasterViT заметно опережает всех предшественников при замерах на A100.
В чем же секрет такого чудесного быстродействия?
Архитектура
Работа по ускорению и оптимизации vision (и не только) трансформеров активно ведется примерно со времени их младенчества. Исходный трансформер очень гибок и универсален, и в то же обладая меньшим набором inductive biases, менее заточен под задачи компьютерного зрения, поэтому не столь эффективен.
С 2021 года появилось множество работ, совмещающих архитектурные элементы из трансформера и более привычных сверточных архитектур - Swin, ConvNext, PoolFormer, CrossViT, CoAT, MobileViT, EfficientFormer, NextViT, и многие другие.
Серьёзным недостатком трансформера с точки зрения вычислительной сложности является квадратичная сложность по длине последовательности. Потому приходится либо ограничиваться Attention на низких разрешениях, либо нарезать на крупные патчи. В литературе был предложен ряд способов удешевить attention за счет его локализации в окне (Swin), факторизации на локальный и глобальный attention (Twins).
В этой работе предложили по сути новую версию факторизации Attention. Заводят на каждое окно (аналогичное таковому в Swin) некоторое количество carrier токенов (которых гораздо меньше, чем патчей в окне). И в каждом HAT (Hierarchical ATtention) происходит обмен информацией между carrier токенами из разных окон, а затем carrier токены обмениваются информацией с патчами в окнах. После одного или несколько раундов HAT carrier токены сливаются с исходными патчами для передачи глобальной информации.
Кроме того, популярные в мобильных архитектурах depthwise свертки не эффективны по скорости, из-за memory-bound природы верхних слоев, поэтому используются обычные 3x3 свертки без факторизации.
Дизайн архитектуры довольно стандартный для эффективных гибридных архитектур на первых двух стадиях (высоком разрешении) сверточные блоки. На меньшем разрешении работают HAT блоки.
🔥3👀2
Результаты
FasterViT оказывается значительно эффективнее альтернатив по throughput, хоть и не по количеству параметров. Кроме того, архитектура неплохо себя показывает в качестве бэкбоуна на задачах сегментации и детекции.
Далее в статье есть ablation компонент, подтверждающий необходимость того или иного решения. Эффект от каждой из них по отдельности, честного говоря, небольшой.
Выводы
Если верить представленным результатам, то вышло довольно эффективное решение, с относительно простой структурой. Вопрос в том, насколько ускорение на GPU будет переноситься на мобильные архитектуры, кои скорее всего и будут являться целевой аудиторией. Комбинация локальной и глобальной агрегации признаков - выглядит универсальным подходом в разработке современных архитектур, и дальнейший прогресс носит скорее инкрементальный характер. Кроме того, процедура обучения, если присмотреться, включает некоторый тюнинг гиперпараметров (learning rate, dropout, drop path), по сравнению со стандарнтыми рецептами, и неизвестно насколько выигрыш обусловлен самой архитектурой, а насколько удачным оптимизационным рецептом.
Отдельный вопрос, насколько наработки в области эффективных архитектур переносятся на CLIP-модели и self-supervised претрейны. Есть ли какая-то польза от специфичных архитектур, или базовый трансформер всех победит?
FasterViT оказывается значительно эффективнее альтернатив по throughput, хоть и не по количеству параметров. Кроме того, архитектура неплохо себя показывает в качестве бэкбоуна на задачах сегментации и детекции.
Далее в статье есть ablation компонент, подтверждающий необходимость того или иного решения. Эффект от каждой из них по отдельности, честного говоря, небольшой.
Выводы
Если верить представленным результатам, то вышло довольно эффективное решение, с относительно простой структурой. Вопрос в том, насколько ускорение на GPU будет переноситься на мобильные архитектуры, кои скорее всего и будут являться целевой аудиторией. Комбинация локальной и глобальной агрегации признаков - выглядит универсальным подходом в разработке современных архитектур, и дальнейший прогресс носит скорее инкрементальный характер. Кроме того, процедура обучения, если присмотреться, включает некоторый тюнинг гиперпараметров (learning rate, dropout, drop path), по сравнению со стандарнтыми рецептами, и неизвестно насколько выигрыш обусловлен самой архитектурой, а насколько удачным оптимизационным рецептом.
Отдельный вопрос, насколько наработки в области эффективных архитектур переносятся на CLIP-модели и self-supervised претрейны. Есть ли какая-то польза от специфичных архитектур, или базовый трансформер всех победит?