2022-02-05 17:36:17
Нейросети становятся все более сложными и "тяжелыми" — количество обучаемых параметров увеличивается, и, соответственно, растет и время на обучение и inference таких сетей. Современные модели, такие как GPT-3 или ViT, уже не натренируешь "на коленке" с нуля: для этого требуются огромные вычислительные ресурсы, деньги и время.
Усложнение моделей неизбежно: недавние работы показали, что для получения хорошей генерализации и робастности количество обучаемых параметров сети должно быть довольно большим. В пользу зависимости "больше параметров -> лучше генерализация" говорит также и то, что модели-гиганты вроде GPT-3 хорошо справляются с задачами в zero-shot режиме. То есть, действительно достигают хорошей генерализации.
В связи с этим возникает задача: научиться строить такие архитектуры моделей, у которых было бы достаточно параметров для хорошей генерализации, но при этом их обучение занимало бы меньше времени и вычислительных ресурсов (было более эффективным). Одна из идей, как это можно сделать — использовать условные вычисления (conditional computation). Суть этого подхода в том, что при подаче на вход модели данных активируются не все участки сети, а только некоторые. И для разных видов входных данных активируются разные части модели. Модель как бы состоит из ансамбля более легких сетей, и это позволяет сильно сократить количество вычислений и время для обучения и инференса модели.
В начале января Google AI представили новую архитектуру —
Vision Mixture of Experts (V-MoE). Это модель для решения задач CV, основанная на Vision Transformer. Архитектура V-MoE следует подходу conditional computation — большая часть модели состоит из "набора экспертов" — более легковесных нейросетей. При подаче данных на вход модели обучаемый "медиум" определяет, какой из экспертов должен обрабатывать эти данные. На картинке к посту показана архитектура encoder'а V-MoE.
Результаты модели впечатляют — она достигает SOTA на JFT-300M и ImageNet, требуя в 2.5 раза меньше затрат на вычисления, чем аналоги!
Такие идеи для повышения эффективности обучения тяжелых сетей (и архитектура V-MoE в частности) сейчас выглядят очень многообещающе. Если вы хотите лучше разобраться в идее подхода и понять, насколько же этот подход действительно прорывной, то у меня есть для вас кое-что:
Ребята из ICT.Moscow сделали большой материал по V-MoE: они
поговорили с одним из его разработчиков — Карлосом Рикельме, — а также со специалистами в области ИИ из Яндекса, SberDevices, Intento, EORA, Tortu, ЦРТ.
С ними обсудили:
● в чем именно новизна подхода Google и как разработчики к нему пришли;
● какие преимущества у V-MoE по сравнению с обычными нейросетями;
● почему разработчики считают подход перспективным, но пока не спешат внедрять его в свою практику;
● в каких сферах нейросети со слоями-«экспертами» могут применяться, а в каких — вряд ли, и почему;
● как они будут развиваться в будущем.
Ссылки:
блогпост Google AI
статья о V-MoE на arxiv
материал ICT.Moscow о V-MoE
2.4K views14:36