Нейросеть Gato от Deepmind способна выполнять более 600 задач


Gato

Компания Deepmind показала свою новую нейросеть Gato, которая способна выполнять более 600 задач: умеет разговаривать, играть в игры и управлять роботом.

В основе идеи использования подобной нейросети лежит подход к созданию единой системы, которая действует как многомодальный, многозадачный и многовариантный универсальный агент. То есть одна и та же сеть может играть в Atari, описывать изображения, общаться в чате и даже управлять настоящим манипулятором робота (для укладывания блоков).

тренировка Gato

Сама сеть — Трансформер (1.2 млрд. параметров, 24 слоя, эмбеддинг —  2048). Интереснее, как происходит её обучение, во время которого данные из различных задач и модальностей сериализуются в плоскую последовательность токенов, группируются и подаются на вход нейросети, где обрабатываются большой языковой моделью. Результат работы сети — предсказания действий.

Для токенизации различных типов данных используются различные подходы:

  • текст токенизируется со словарём 32000,
  • изображения представляются в виде набора патчей 16×16 (принцип используемый в Vision Transformer (ViT)), а значения пикселей нормализуется в диапазон [-1, 1] и делятся на корень из размера патча (√16 = 4 — вот прямо эта формула из статьи 🙂 ),
  • дискретные значения (вроде нажатий на кнопки в Atari)  преобразуются в последовательность целых чисел в диапазоне [0, 1024),
  • непрерывные значения (вроде проприоцепции и крутящих моментов ) через mu-law приводятся к диапазону [-1, 1] и равномерно дискретизуются в 1024 значения.

Обучалась сеть на 16×16 TPU v3 за 4 дня.

Статьи

Ссылки

По теме


Добавить комментарий

Arduino

Что такое Arduino?
Зачем мне Arduino?
Начало работы с Arduino
Для начинающих ардуинщиков
Радиодетали (точка входа для начинающих ардуинщиков)
Первые шаги с Arduino

Разделы

  1. Преимуществ нет, за исключением читабельности: тип bool обычно имеет размер 1 байт, как и uint8_t. Думаю, компилятор в обоих случаях…

  2. Добрый день! Я недавно начал изучать программирование под STM32 и ваши уроки просто бесценны! Хотел узнать зачем использовать переменную типа…

3D-печать AI Android Arduino Bluetooth CraftDuino DIY IDE iRobot Kinect LEGO OpenCV Open Source Python Raspberry Pi RoboCraft ROS swarm ИК автоматизация андроид балансировать бионика версия видео военный датчик дрон интерфейс камера кибервесна конкурс манипулятор машинное обучение наше нейронная сеть подводный пылесос работа распознавание робот робототехника светодиод сервомашинка собака управление ходить шаг за шагом шаговый двигатель шилд

OpenCV
Робототехника
Будущее за бионическими роботами?
Нейронная сеть - введение