来源 | 瑞萨嵌入式小百科
在AI应用的浪潮中,视觉AI无疑是最热门的领域之一。从智能家居到安防监控,从工厂自动化到自动驾驶,视觉技术的身影无处不在。然而,对于很多开发者来说,想要在本地实现AI推理,而不依赖云端,并不是一件轻松的事。
现在,瑞萨推出了AI模型部署工具——一款帮你零门槛上手NVIDIA TAO的神器。
AI应用的难点
#人工智能 技术十分强大,但落地并不简单,原因如下:
工具链复杂:命令行操作多,学习成本高
训练周期长:数据准备、模型训练、优化环节耗时
部署门槛高:模型转换与硬件适配繁琐
特别是新手,面对复杂的命令行工具和海量参数,很容易陷入迷茫。
瑞萨的部署工具
瑞萨推出的AI模型部署工具,就是为了解决这些难点。
它是一个基于GUI的封装工具,将NVIDIA TAO Toolkit打包成可视化操作界面,一站式解决从模型创建到部署的全流程。
它的优势十分明显:
全程可视化操作,无需命令行
完整流程支持:创建→数据准备→训练→剪枝→评估→推理→部署
硬件适配广:不仅能跑在NVIDIA GPU上,还能部署到瑞萨MPU、甚至MCU上
快速上手教程
下面用实际演示,带你体验它的操作流程。本演示基于Ubuntu 20.04系统,同样也支持Ubuntu 22.04。演示使用Detectnetv2模型,并将其部署在RZ/V2L MPU上。
1
进入项目目录并打开终端,执行`./gui_start.sh`命令,进入项目主页。如图1所示。

图1 通过终端启动工程
进入主页后,点击“CREATE”按钮,新建工程。如图2所示。

图2 点击“CREATE”新建工程
2
在‘Project Name’栏,将工程命名为“Detectnetv2_for_video”。在“Task”栏中选择“Object Detection”,并在“Board”栏中选择“V2L”。最后点击“CREATE”创建工程。如图3所示。

图3 新建工程相关配置
若工程被成功创建,在屏幕上方系统会提示“Successfully created the task”。如图4所示。

图4 成功创建工程
3
工程创建完成后,系统会自动进入准备数据集界面。本次演示使用KITTI Vision数据集。选择好数据集后,点击“ANALYZE DATA”按钮,系统将分析数据集的类别数量等信息。如图5所示。

图5 选择数据集并点击“ANALYZE DATA”按钮
在数据集分析等待的过程中,你可以通过点击右下角的蓝色“LOGS”按钮,查看当前的日志。如图6所示。

图6 点击右下角的蓝色“LOGS”按钮,查看日志
数据集分析完成后,界面会显示数据类别分布和边界框统计情况。
点击“SPLIT”按钮,系统会按7:2:1的比例划分成训练集、验证集和测试集。成功划分后,会提示“Successfully completed detect split”。点击“GO FOR TRAINING”进入“Training”页面。如图7所示。

图7 数据集的分析和划分
4
在“Training”页面中,选择“Model”(模型)和“Pre-Trained Model Paths”(预训练权重路径)。同时,可以设置“Batch size for gpu”(批量大小)、“Epochs”(训练轮数)、“Enable Qat”(是否启用量化感知)、“Image width”(图像宽度)以及“Image height”(图像高度)等参数。
完成参数设置后,点击“TRAINING SUBMISSION”开始训练。如图8所示。

图8 配置模型参数
在训练过程中,可以实时查看日志,并监控GPU负载变化。如图9所示,随着训练的持续进行,会看到负载有明显升高。

图9 监控GPU负载变化
5
#NVIDIATAO 支持结构化和非结构化两种剪枝方式。可根据模型的需要,选择合适的剪枝方式。对于Detectnetv2模型,需要使用结构化剪枝来移除冗余权重,并进行再训练。通过结构化剪枝,可以让模型在降低复杂度的同时尽可能提升精度。
剪枝完成后,可以像训练模型一样调整参数,并重新训练。如图10所示。

图10 配置剪枝与再训练参数
6
在“Evaluation Details”中,选择已经训练好的模型。点击“CHECK MODEL EVALUATION”,可查看评估结果。如图11所示。

图11 模型评估结果
在推理页面里,会使用刚刚评估过的模型进行推理。点击“UPLOAD IMAGE”导入需要推理的图片,点击“PREDICT”进行推理。从图12中可以看到,模型成功检测出了汽车,并生成了相应的边界框。

图12 模型推理结果
7
选择模型后点击“EXPORT”,导出训练好的模型。如图13所示。

图13 导出模型
导出完成后,点击“TRANSLATE”,将模型转换为适配RZ/V2L的格式。如图14所示。

图14 转换模型
转换完成后,通过本地IP地址连接到开发板。此过程不仅建立了与开发板的连接,还将转换好的模型传输到开发板上。输入本地IP地址,并点击 “CONNECT”进行连接,如图15所示。

图15 连接开发板
点击“DEPLOY”部署,模型会在开发板上运行,如图16所示。

图16 部署模型
此时,在“Inference Results”里会输出实时视频流。如图17所示。
如果精度没有达到预期,可以更换模型训练或继续剪枝再训练,直到达到理想效果。

图17 输出实时视频流
总结
#瑞萨AI模型部署工具 对AI初学者来说非常友好,无需代码即可实现AI模型从创建到部署的全流程。除了面向AI初学者的模型部署工具,瑞萨还面向有经验的开发者提供:
upyter Notebook
标准技术文档
同时,瑞萨已为自家的产品线添加了Nvidia TAO的支持,使得使用Nvidia TAO推理出的模型能够在瑞萨的MPU和MCU上运行。目前的评估套件适用于 RZ/V2H、V2L和RA8D1开发板。这种支持为你提供了丰富的选择,让你可以根据自己的需求定制产品。
想了解更多信息或演示,可以联系当地的瑞萨FAE或销售,也可以扫描下方二维码或复制链接到浏览器查看相关信息。
https://www.renesas.com/en
相关资料
扫描下方二维码或复制链接到浏览器查看更多信息。
https://www.renesas.com/en/software-tool/renesas-ai-model-deployer-vision-ai
https://github.com/renesas/renesas-nvidia-tao-integration
https://www.renesas.com/en/document/qsg/renesas-ai-model-deployer-quick-start-guide

2个内容