FAIR опубликовали Pytorch библиотеку для распознавания объектов Detectron2. В новой версии библиотеки появились модульный дизайн, имплементации state-of-the-art моделей, поддержка обучения моделей на нескольких GPU серверах и функционал для использования модели в продукте. В Facebook Detectron2 используется для обучения моделей распознавания позы для Smart Camera сервиса.
С публикации первой версии библиотеки в 2018 году Detectron стал одним из наиболее популярных открытых проектов от FAIR. Detectron2 — это переписанная версия первой версии библиотеки. Начальная версия библиотеки содержала только Mask R-CNN бенчмарк. Теперь библиотека написана на PyTorch и имеет модульный дизайн. В Detectron2 появилась возможность обучения моделей как на единственнном GPU сервере, так и на нескольких.
Среди state-of-the-art моделей, которые были имплементированы, DensePose, panoptic feature pyramid networks и несколько вариаций Mask R-CNN модели.
Чем Decatron2 отличается от Decatron
PyTorch
Оригинальная версия библиотека была написана на Caffe2. PyTorch предоставляет более интутивный интерфейс для обучения моделей, который ускоряет процесс прототипирования и обучения. Decatron2 был полностью переписан на PyTorch.
Модульный дизайн
В Detectron2 части модели составляют модули, которые позволяют модифицировать архитектуру без издержек на отладку совместимости разных частей модели. Множество исследовательских проектов можно уместить в сотни строк кода.
Новые модели и трюки
Detectron2 включает в себя все модели, которые были доступны в оригинальной библиотеке, включая Faster R-CNN, Mask R-CNN, RetinaNet и DensePose. Помимо этого, добавили несколько новых моделей: Cascade R-CNN, Panoptic FPN и TensorMask. Библиотека позволяет использование синхронной батч-нормализации и новых датасетов для распознавания объектов.
Новые задачи
Библиотека поддерживает ряд задач, связанных с распознаванием объектов. Задачами являются распознавание объектов боксами, instance-сегментация, предсказание позы человека, семантическая и паноптическая сегментации.
Скорость и масштабируемость
Весь пайплайн для обучения моделей перенесли на GPU. Это позволило сделать Decatron2 быстрее оригинальной версии. В библиотеке есть функционал для обучения моделей на нескольких GPU.
Использование в реальных продуктах
Detectron2go — это дополнительный сервис для переноса моделей в реальные продукты. В Detectron2go есть функционал для обучения стандартных моделей, квантизация нейросети и конвертирования моделей в более оптимизированный формат.