Mask R-CNN官方实现“又”来了!基于PyTorch,训练速度是原来2倍

简介:

6912367d7cf98c17ca57b27111ffba6807924418

来自官方的Mask R-CNN实现终于“又”来了!PyTorch官方Twitter今天公布了一个名为Mask R-CNN Benchmark的项目。

10个月前Facebook曾发布过名叫Detecron的项目,也是一款图像分割与识别平台,其中也包含Mask R-CNN。不过它是基于Caffe 2深度学习框架编写的。这一次,在Caffe2项目并入PyTorch半年之后,Facebook换上了更受欢迎的PyTorch框架。

除了更改框架,Mask R-CNN Benchmark相比它的“前辈”Detectron,训练速度提高了一倍。

c0db4bcc7561c85bdff0e1daaf8c297beae1d62a

Detecron效果输出图

Mask R-CNN Benchmark是一个完全由PyTorch 1.0写成,快速、模块化的Faster R-CNN和Mask R-CNN组件。该项目旨在让用户更容易地创建一种模块,实现对图片中物品的识别与分割。

负责这一项目的Facebook AI工程师Francisco Massa还在个人Twitter发了张自拍照,并使用新工具对图片中的物品进行了识别,尴尬的是好像有些对象被识别错误:

88ef906e8e474a7dd8f091e536473c0e6f63e2ab

Francisco Massa自拍照

第三方项目

在Facebook官方推出Mask R-CNN Benchmark之前,程序员们一直希望能用更流行的PyTorch取代Caffe 2实现Mask R-CNN,今年7月GitHub上有一名印度小哥完成任务。

42e1fe8c6833348a88706224b226e7c4e292c2ee

另外,商汤和香港中文大学的多媒体实验室也开源了一个类似项目:mmdetection。它支持Faster R-CNNMask R-CNNRetinaNet等等,相比Facebook的Detecron有5%到20%的性能提升。这个模型还在2018年的COCO Detection竞赛中拿下了冠军。

那么今天Facebook发布的Mask R-CNN Benchmark相比前两者有哪些优点呢?

亮点

 ●  PyTorch 1.0编写: RPN Faster R-CNN Mask R-CNN 均可实现,达到甚至超出Detectron的准确度
 ●  快速:训练速度是Detectron的 2倍 ,比mmdetection高 30%
 ●  显存效率更高:大约比mmdetection少使用500MB显存
 ●  支持 多GPU 训练与推断
 ●  支持以CPU进行推断
 ●  支持图像批处理:可分批分GPU对多图进行推断
 ●  提供预训练模型:针对几乎所有引用Faster RCNN和Mask RCNN的架构

PyTorch官方Twitter转发了该项目,并希望mmdetection等项目都能使用一下。

安装小贴士

使用Mask R-CNN Benchmark需要安装以下组件:

 ●  PyTorch 1.0
 ●  orchvision
 ●  cocoapi
 ●  yacs
 ●  matplotlib

 ●  OpenCV(可选)

R-CNN发展历史

R-CNN是卷积神经网络(CNN)在图像识别领域的应用,Facebook AI研究团队在这条到道路上做出了颇多贡献,其中不得不提一位大神:Ross Girshick。他发明了RCNN,又提出速度更快的Fast R-CNN
2016年,微软研究院提出了Faster R-CNN,降低了在边框搜索上的运算量,进一步提高了算法的速度。
2017年,Facebook AI研究团队又再次提出了Mask R-CNN:通过添加与现有分支并行的对象掩码(object mask)分支,以增强Faster RCNN在边框识别上的性能。


原文发布时间为:2018-10-25

本文作者:晓查

本文来自云栖社区合作伙伴“机器学习算法与Python学习”,了解相关信息可以关注“机器学习算法与Python学习”。

相关文章
|
7月前
|
机器学习/深度学习 PyTorch API
PyTorch量化感知训练技术:模型压缩与高精度边缘部署实践
本文深入探讨神经网络模型量化技术,重点讲解训练后量化(PTQ)与量化感知训练(QAT)两种主流方法。PTQ通过校准数据集确定量化参数,快速实现模型压缩,但精度损失较大;QAT在训练中引入伪量化操作,使模型适应低精度环境,显著提升量化后性能。文章结合PyTorch实现细节,介绍Eager模式、FX图模式及PyTorch 2导出量化等工具,并分享大语言模型Int4/Int8混合精度实践。最后总结量化最佳策略,包括逐通道量化、混合精度设置及目标硬件适配,助力高效部署深度学习模型。
1144 21
PyTorch量化感知训练技术:模型压缩与高精度边缘部署实践
|
5月前
|
机器学习/深度学习 PyTorch 测试技术
从训练到推理:Intel Extension for PyTorch混合精度优化完整指南
PyTorch作为主流深度学习框架,凭借动态计算图和异构计算支持,广泛应用于视觉与自然语言处理。Intel Extension for PyTorch针对Intel硬件深度优化,尤其在GPU上通过自动混合精度(AMP)提升训练与推理性能。本文以ResNet-50在CIFAR-10上的实验为例,详解如何利用该扩展实现高效深度学习优化。
293 0
|
机器学习/深度学习 PyTorch 算法框架/工具
CNN中的注意力机制综合指南:从理论到Pytorch代码实现
注意力机制已成为深度学习模型的关键组件,尤其在卷积神经网络(CNN)中发挥了重要作用。通过使模型关注输入数据中最相关的部分,注意力机制显著提升了CNN在图像分类、目标检测和语义分割等任务中的表现。本文将详细介绍CNN中的注意力机制,包括其基本概念、不同类型(如通道注意力、空间注意力和混合注意力)以及实际实现方法。此外,还将探讨注意力机制在多个计算机视觉任务中的应用效果及其面临的挑战。无论是图像分类还是医学图像分析,注意力机制都能显著提升模型性能,并在不断发展的深度学习领域中扮演重要角色。
700 10
|
机器学习/深度学习 并行计算 PyTorch
优化技巧与策略:提高 PyTorch 模型训练效率
【8月更文第29天】在深度学习领域中,PyTorch 是一个非常流行的框架,被广泛应用于各种机器学习任务中。然而,随着模型复杂度的增加以及数据集规模的增长,如何有效地训练这些模型成为了一个重要的问题。本文将介绍一系列优化技巧和策略,帮助提高 PyTorch 模型训练的效率。
1065 0
|
12月前
|
机器学习/深度学习 人工智能 PyTorch
使用PyTorch实现GPT-2直接偏好优化训练:DPO方法改进及其与监督微调的效果对比
本文将系统阐述DPO的工作原理、实现机制,以及其与传统RLHF和SFT方法的本质区别。
950 22
使用PyTorch实现GPT-2直接偏好优化训练:DPO方法改进及其与监督微调的效果对比
|
并行计算 PyTorch 算法框架/工具
基于CUDA12.1+CUDNN8.9+PYTORCH2.3.1,实现自定义数据集训练
文章介绍了如何在CUDA 12.1、CUDNN 8.9和PyTorch 2.3.1环境下实现自定义数据集的训练,包括环境配置、预览结果和核心步骤,以及遇到问题的解决方法和参考链接。
878 4
基于CUDA12.1+CUDNN8.9+PYTORCH2.3.1,实现自定义数据集训练
|
机器学习/深度学习
CNN网络编译和训练
【8月更文挑战第10天】CNN网络编译和训练。
222 20
|
机器学习/深度学习 数据采集 数据可视化
深度学习实践:构建并训练卷积神经网络(CNN)对CIFAR-10数据集进行分类
本文详细介绍如何使用PyTorch构建并训练卷积神经网络(CNN)对CIFAR-10数据集进行图像分类。从数据预处理、模型定义到训练过程及结果可视化,文章全面展示了深度学习项目的全流程。通过实际操作,读者可以深入了解CNN在图像分类任务中的应用,并掌握PyTorch的基本使用方法。希望本文为您的深度学习项目提供有价值的参考与启示。
|
机器学习/深度学习 并行计算 PyTorch
PyTorch与DistributedDataParallel:分布式训练入门指南
【8月更文第27天】随着深度学习模型变得越来越复杂,单一GPU已经无法满足训练大规模模型的需求。分布式训练成为了加速模型训练的关键技术之一。PyTorch 提供了多种工具来支持分布式训练,其中 DistributedDataParallel (DDP) 是一个非常受欢迎且易用的选择。本文将详细介绍如何使用 PyTorch 的 DDP 模块来进行分布式训练,并通过一个简单的示例来演示其使用方法。
2185 2
|
机器学习/深度学习 并行计算 PyTorch
GPU 加速与 PyTorch:最大化硬件性能提升训练速度
【8月更文第29天】GPU(图形处理单元)因其并行计算能力而成为深度学习领域的重要组成部分。本文将介绍如何利用PyTorch来高效地利用GPU进行深度学习模型的训练,从而最大化训练速度。我们将讨论如何配置环境、选择合适的硬件、编写高效的代码以及利用高级特性来提高性能。
2247 1

热门文章

最新文章

推荐镜像

更多