专栏首页量子位英伟达公开课|详解迁移式学习下的实时目标检测模型训练与部署

英伟达公开课|详解迁移式学习下的实时目标检测模型训练与部署

主讲人 | 何琨 英伟达 量子位编辑 | 公众号 QbitAI

2月27日,英伟达图像处理系列公开课第一期线上开播,跟数百位开发者同学共同探讨了如何利用 NVIDIA 迁移式学习工具包和Deepstream实现实时目标检测。

应读者要求,将分享内容整理成文,与大家分享,文末附有实战notebook。

大家好,今天要给大家介绍的工具是NVIDIA Transfer Learning Toolkit(迁移式学习工具包,简称TLT)和DeepStream SDK。

这张图很好的诠释了深度学习的框架,从应用角度来说,视觉、语音识别、NLP、情感与推荐系统等是目前发展较快的领域。市面上有很多框架支持这些深度学习的应用,如Caffe、TensorFlow、PyTorch等,而支撑起这些框架的基础是强大的计算能力。

NVIDIA提供了大量的GPU、边缘设备等,为深度学习框架、推理训练提供了强大的支撑能力。在英伟达CUDA生态系统上,建立了cuDNN、TensorRT、DeepStream SDK、cuBLAS等一系列工具,都是中层的框架应用的基础的内容。

今天要介绍的迁移式学习工具包,串联起了下面一层的工具(最后一个除外),是一个非常好用的工具。

今天的分享主要介绍TLT,以及将训练出的模型放到DeepStream SDK上。

DeepStream SDK

DeepStream SDK是为大规模创建和部署基于AI的视频分析应用程序解决方案而设计的,涵盖了视频处理部署阶段的所有模块,它提供了完整的框架和所有基本构建模块。可以让开发者专注于自己的核心深度学习网络和IP,而不是从头开始设计端到端解决方案。

最新的DeepStream 已经成为一个通用的工具,支持多平台、跨平台的应用,支持多系列显卡,也可以放到嵌入式平台,对内存的管理方面节约了计算资源,减少接口使用,编解码加速等方面也有所提升。

下面展示一个例子,以下两个视频都是基于Yolo v3网络,我们将Batch Sizing都设为1。

上图是未优化的,结果是大概1帧每秒的推理速度,而下图是仅用DeepStream优化过,已经达到了4.5帧每秒,也就是说达到了4倍的优化效果。

DeepStream推理加速的核心是TensorRT,一个GPU推理引擎工具,我们制作了很多讲解的视频和官方案例,大家可以在优酷搜索“英伟达中国”查看。

迁移式学习工具包

另一个工具是英伟达Transfer Learning Tooklkit。TLT是一个基于Python的工具包,它提供了大量预先训练的模型,并提供一系列的工具,使流行的网络架构适应开发者自己的数据,并且能够训练、调整、修剪和导出模型,以进行部署,大大提高深度学习工作流的效率。

TLT还有一个功能是,在异构多GPU环境下模型训练或调整效果非常好,并且训练处的模型可以直接部署到Tesla、Jetson等产品上。

目标检测实战

接下来我们一步一步介绍从安装到出模型到推理的使用方式。

这里列举了30多种常用模型,大家可以在代码中找到。为应用在计算机视觉领域的深度学习工作流程,提供了全方位的便利。

首先我们需要在NGC(https://www.nvidia.cn/gpu-cloud/)下载工具和模型,并进行初步训练、剪枝、再训练。输出的模型直接放在TensorRT。

接下来在服务器上部署TLT,我们推荐了一些硬件。

其中,Ubuntu使用16.04LTS以上即可,GPU driver需要v410及以上版本,DeepStream推荐使用4.0以上版本。

首先需要安装docker,生成API Key,这个Key很重要,生成后一定要保存起来。

接下来在服务器上运行TLT镜像。

标红处需要用v1.0.1_py2。

进入操作界面后,我们需要在Server端训练模型、优化、评估、数据预处理、模型转换等流程,在Jetson端部署利用引擎。

* 接下来详解了代码的部署。受限于文字描述,我们将操作流程Notebook上传至网盘,同时可下载直播回放、PPT等资料,正在学习的小伙伴可以直接下载查看:

提取链接:https://pan.baidu.com/s/1o_5yA8DYGTk3rz5i2oJmeQ

提取码:nveu

接下来的课程,我们也将分享更多能实际运行的代码。也欢迎访问英伟达开发者社区,获取更多资源:https://developer.nvidia-china.com。

本文分享自微信公众号 - 量子位(QbitAI),作者:关注前沿科技

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-03-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 微软Azure AI负责人:OpenAI只能在微软云上训练模型,不懂中台

    几天前,微软刚刚以10亿美元投资了AI研究机构OpenAI。之后微软将成为OpenAI的独家云计算供应商,同时OpenAI也将为微软Azure云开发AGI的软硬...

    量子位
  • 自动驾驶汽车到底涉及了哪些技术?

    作者:陈光 上汽集团 | 高精度地图&环境建模工程师 量子位 已获授权编辑发布 Google从2009年开始做自动驾驶,到现在已有8个年头。8个年头的技术积累还...

    量子位
  • Google传奇Jeff Dean最新演讲:如何构建未来的机器学习芯片

    允中 编译整理 量子位 出品 | 公众号 QbitAI 如何构建未来的机器学习加速芯片? Google大脑负责人Jeff Dean是最有资格回答这个问题的人之一...

    量子位
  • 高调发布史上最大GPU后,英伟达却宣布暂停自动驾驶路测

    镁客网
  • 【黄仁勋苏州GTC演讲】摩尔定律已终结,计算的未来离不开GPU

    2018年一度被传要“泡汤”的最后一场GTC,今天如期在苏州举行,现场气氛火爆,参与人数可能又创下了历史新高。

    新智元
  • Python基础学习00天

    你好我是森林
  • 设计模式专题(九) ——外观模式

    设计模式专题(九) ——外观模式 (原创内容,转载请注明来源,谢谢) 一、概述 外观模式(Facade),为子系统中的一组接口提供一个一致的界面,此模式定义了...

    用户1327360
  • webshell指纹-ssdeep

    最近一段时间的任务就是研究webshell的检测,感觉安全真是没有止境,尤其还是处于防御方,安全策略的制定 任重而道远。

    七夜安全博客
  • 字符串方法整理

    mcq
  • 【答疑释惑第四讲】如何学习人工智能?

    疑惑一 如何学习人工智能? 很多人问如何学习这个,坦白说这个课题很大,用很小的篇幅也难说清楚,主要是人工智能涉及的领域以及专业知识太庞大,涉及到的不仅仅是编程知...

    程序员互动联盟

扫码关注云+社区

领取腾讯云代金券