当前面已经训练好修剪过的模型之后,接下来就可以在训练设备上先执行推理计算,看看检测的效果如何?如果实际推理结果并不理想的话,就得回到前面第 6 步骤重新再执行一次。
9、执行推理并查看结果
首先创建一个 test_samples 目录,然后从数据集中 testing/image_2 中复制一些图像过来测试,推理结果输出到 ssd_infer_images 目录下,这个推理计算也可以使用未修剪的模型来进行测试。
在代码框 “!tao ssd inference” 后面所提供的参数中,下面两行是使用修剪后并重新训练的模型来进行推理。
-e $SPECS_DIR/ssd_retrain_resnet18_kitti.txt
-m$USER_EXPERIMENT_DIR/experiment_dir_retrain/weights/ssd_resnet18_epoch_$EPOCH.tlt
如果将这两行参数改成下面内容,就是用原始模型来进行推理。
-e $SPECS_DIR/ssd_train_resnet18_kitti.txt
-m$USER_EXPERIMENT_DIR/experiment_dir_unpruned/weights/ssd_resnet18_epoch_$EPOCH.tlt
这样我们可以执行透过推理结果,来查看二者的不同。下面两张图分别是未修剪(上)与修剪后(下)模型推理结果的局部放大,虽然修剪后的模型效果不如未修剪的,但是执行结果还是令人满意,当然这得看您的要求有多高。
如果认可这个推理结果的话,那么训练阶段的任务就可以告一段落,接下去就准备将模型导出,以便部署到真实的推理设备上。
10、导出模型
要执行这个步骤,最好先确认您的推理设备上所能支持的数据精度,特别是 INT8 类型,例如 Jetson Nano (含 2GB)、TX2/TX1就不支持,Xavier NX 与 AGX Xavier 是支持的。台式机上的游戏卡一般不支持 INT8,而 Tesla、Quadro 专业卡是支持的,不过 NVIDIA 全系列产品都支持 FP16,如果不能确认这方面的信息,至少选择 FP16 是比较稳妥。
简单说明一下代码框 “!tao ssd export” 后面的参数:
假如要输出 INT8 模型时,由于需要特殊算法以及辅助的校准工具,因此需要其他参数来协助这类模型的导出,主要如下:
这样就能完成 INT8 模型的输出任务。
到这里所输出的 .etlt 模型文件基本上已经可以部署到 DeepStream 推理设备上使用,因为 DeepStream 支持 .etlt 格式的调用,相当方便。但如果要用其他独立的 TensorRT 来执行加速推理的话,就需要在推理设备上再进行一次的转换。
本步骤最后一个代码块 “!tao converter” 就是在训练设备上,将 .etlt 模型转成这台机器能使用的 TensorRT 引擎文件。由于参数内容较多,这里不一一列举,请自行至https://docs.nvidia.com/tao/tao-toolkit/text/object_detection/ssd.html搜索 “Using the tao-converter” 环节,有详细的参数说明。
要注意的一点,在 “!tao converter” 所使用的“-t” 指定数据精度部分,需要与前面 “!tao ssd export” 的 “--data_type” 一致,否则会失去效果。
11、验证部署模型的效果
这个步骤是验证 TensorRT 加速引擎的推理效果,主要让我们在部署到推理设备之前,能再确认一下推理效果。
下面同样提供两张推理结果参照图,上图是未修剪的模型转成 TensorRT 引擎的推理结果,下图是修剪过的模型转成 TensorRT 引擎的推理结果,效果看起来是一样的,表示这个修剪过的模型还是足够好的。
现在就完成一个物件检测模型训练的过程,虽然看起来繁琐,但是只要我们弄清楚一开始的路径对应,以及熟练后面每个环节的参数用法,基本上要比在框架中自行撰写代码容易得多了,除了收集与整理数据的工作是 TAO 工具无法协助的,其余部分已经都为大家提供好完整的指令块,这是一个真正 “Zero Coding” 的全方位模型训练工具。
原文标题:NVIDIA Jetson Nano 2GB 系列文章(63):物件检测的模型训练与优化-3
文章出处:【微信公众号:NVIDIA英伟达企业解决方案】欢迎添加关注!文章转载请注明出处。
-
NVIDIA +关注
关注
14文章
2571浏览量
94759 -
检测 +关注
关注
5文章
2600浏览量
86908 -
模型训练 +关注
关注
0文章
6浏览量
989
发布评论请先 登录
相关推荐
基于NVIDIA Triton的AI模型高效部署实践
首届NVIDIA DPU中国黑客松圆满收官
NVIDIA T4 GPU和TensorRT提高微信搜索速度
NVIDIA RTX A6000和 NVIDIA Omniverse助力天问一号“发射”
NVIDIA Jetson赋能智骋致想智惠农业平台
NVIDIA与合作伙伴利于AI技术推动气候灾害管理
NVIDIA EGX 平台能改进洪水预测GPU 加速模型
NVIDIA Riva 2.0的功能亮点有哪些
艺术家使用NVIDIA Omniverse创造出照明效果逼真的3D模型
使用AI技术推动精准医疗的发展
【开发教程2】开源蓝牙心率防水运动手环-套件检测教程

评论