雷锋网 AI 开发者按:Detectron 是 FAIR 在 2018 年初公开的目标检测平台,包含了大量业内最具代表性的目标检测、图像分割、关键点检测算法,该框架主要基于 python 和 caffe2 实现,开源项目已获得了超 2.2w 的星标数。
而 Detectron2 则是刚推出的新版 PyTorch 1.3 (详情查看:https://www.leiphone.com/news/201910/9J4PTd833WMwdVoQ.html)中一重大新工具,它源于 maskrcnn 基准测试,但它却是对先前版本 detectron 的一次彻底重写。Detectron2 包含了更大的灵活性与扩展性,并增强了可维护性和可伸缩性,以支持在生产中的用例。目前已在 GitHub 上开源,雷锋网 AI 开发者将其重要内容整理编译如下。
据官方介绍,Detectron2 是 FAIR 的下一代目标检测和分割研究平台。目前,它实现了最先进的目标检测算法。
Detectron 2 与之前的 detectron 不同,它并非在原版基础上进行改写,而是彻底重写的全新版本。新版目标检测平台 Detectron 2 则基于 PyTorch 框架,以 maskrcnn 基准测试作为起点。通过全新的模块化设计,Detectron2 变得更灵活且易于扩展,它能够在单个或多个 GPU 服务器上提供更快速的训练速度。
基于 PyTorch 框架 与 Detectron 在 Caffe2 中实现不同,Detectron2 则基于 PyTorch 实现。PyTorch 提供了一个更直观的命令式编程模型,它允许研究人员和工程师可以更快地迭代模型设计和实验,并让开发者受益于 PyTorch 深度学习方法以及不断改进的 PyTorch 活跃社区。
模块化、可扩展设计 在 Detectron2 中,引入了模块化设计,用户可以将自定义模块插入目标检测系统的任意部分。这意味着许多新的研究项目可以用数百行代码编写,而核心 Detectron2 库和全新的研究之间可以实现完全分离。
通过建立新模型并发现新方法,可以不断完善模块化和可扩展的设计,这也帮助 Detectron2 变得更加灵活。其模块化特性也能够使其更有效地帮助研究人员探索最先进的算法设计。
新模型和新功能 Detectron2 包括原始 Detectron 中的所有模型,例如 Faster R-CNN,Mask R-CNN,RetinaNet 和 DensePose。除此之外,Detectron2 还加入了几个新模型,包括:Cascade R-CNN,Panoptic FPN 和 TensorMask,未来还将继续添加更多算法。
在 Detectron2 还包含了一些新功能,例如:同步批处理规范化(synchronous Batch Norm),以及对 LVIS 等新数据集的支持等。
新任务支持 Detectron2 支持与目标检测有关的一系列任务。和之前的 Detectron 一样,它也支持目标检测、实例分割、人体姿态估计等任务。此外,Detectron2 还支持语义分割和全景分割。
高实现质量 重写的 Detectron2 能够重新检测底层的设计决策,并解决原来 Detectron 的几个实现问题。
速度和可扩展性 通过将整个训练 pipeline 移至 GPU,能够使 Detectron2 比原来的 Detectron 更快,而且可以更加方便在各种标准型号下进行 GPU 服务器的分布式训练,从而轻松扩展训练数据集。
Detectron2go 新增了将模型产品化部署的软件实现,包括:标准的内部数据训练工作流实现、模型压缩量化、模型转化等。
更多关于Detectron2 :
http://ai.facebook.com/blog/-detectron2-a-pytorch-based-modular-object-detection-library-/
GitHub 开源地址:
雷锋网 AI 开发者