Intel® Developer Cloud DL Workbench 深度学习工作台

1. 概述介绍
DL Workbench 深度学习工作台,是Intel® OpenVINO™软件栈中非常重量级的一个工具。涉及到的内容和操作比较多,决定还是另起一篇来介绍!如果您对深度学习感兴趣,DL Workbench 提供了更为直观的学习平台:带您了解什么是神经网络,神经网络是如何工作的,以及如何检查它们的架构。您可以在开发产品之前,学习神经网络的分析和优化网络的基础知识,以及熟悉OpenVINO™ 生态系统及其主要组件。如果您是资深的AI工程师,DL Workbench将为您提供一个方便的web界面,以实时优化您的模型并可以为您的产品落地进行加速。
DL Workbench可以很方便地测量和分析模型性能,同时在实验中调整模型以提高性能,最终分析模型的拓扑结构并产生可视化输出。DL Workbench 的工作流程如下图所示:
图1-1 DL Workbench 的工作流程
Intel提供了两种运行DL workbench(DLWB)环境。基于本地硬件的DLWB 环境,访问的算力仅限本地现有的算力资源;基于Intel Developer Cloud的DLWB 提供了丰富的算力选项用于模型的横向对比和分析,同时提供了类似本地化的用户操作体验。
Intel Developer Cloud平台上运行DLWB方法:
Run DL Workbench in Intel® DevCloud
本地硬件运行DLWB 的方法:
Run DL Workbench on Local System
接下来我们在Intel® Developer Cloud平台来运行DLWB,无需安装, 直接运行。
2. 启动DL Workbench
在Intel® Developer Cloud平台上启动DL Workbench的步骤如下:一、打开Work with Intel® Distribution of OpenVINO™ Toolkit页面,划到页面下半部分,点击Deep Learning Workbench。
图2-1 DL Workbench启动一
二、运行第一个Cell里的代码,之后会出现“Start Application”,点击“Start Application”并等待初始化完成,进入点击“Launch DL Workbench”启动DL Workbench(以下简称DLWB):
图2-2 DL Workbench启动二
3. 使用DL Workbench评估模型性能
DLWB的主界面如下图所示,点击 “Create Project” 进行模型评估:图3-1 创建Project
步骤一、模型选择
首先点击“import model”,导入需要评估的模型。Open Model Zoo是我们提供的一个在线模型库,你可以直接从库中下载需评估的模型,当然,你也可以上传你的本地的模型文件,既可以是IR格式,也可以是原生的模型格式:
图3-2 选择模型
步骤二、设备选择
单击选定模型完成之后,请点击“Select an Environment”,这里可以选定你部署的设备节点,Intel® DevCloud平台的设备都可以进行实验:
图3-3 选择设备一
你可以在”Device” 下拉菜单里选择该模型运行在CPU上还是集成GPU上:
图3-4 选择设备二
步骤三、数据集选择
点击“Next Step”之后进入数据集选择页面,点击“import Dataset”,你可以选择使用DLWB提供的图像创建一个数据集,或者通过本地上传已有的数据集,例如COCO,VOC,ImageNET等格式的数据集:
图3-5 选择数据集
步骤四、推理性能测试
点击“Create Project”之后,开始运行推理,等待推理完成之后,可以直观的看到模型的FPS指标,以FPS值来判断这个模型的性能水平:
图3-6 推理性能测试
4. DL Workbench模型调试
4.1 模型单层运行时间统计
在模型网络分析板块,DLWB可以计算出模型中每一层的消耗时间,可以以此进行网络分析,从而决定下一步的优化策略。图4-1 模型单层运行时间统计
4.2 量化模型(低精度推理)
同时,DLWB也会给出你一些可行的优化策略,比如这个例子中,使用低精度的量化模型可以提高推理的性能速度。在“Perform”选项中,包含了对于模型优化评估的多种策略。例如,执行INT8优化,这个优化步骤就是会将原本FP32精度格式的模型量化成精度为INT8精度格式,并且可以控制精度下降不超过1%的范围。
图4-2量化模型
你可以选择不同量化设置,包括对于精度下降的一些调节措施,若没有特别限定,使用“Default”模式进行实验,等待其量化并且推理完成,可以明显地模型量化后看到FPS值显著提高:
图4-3 FPS结果
点击“Project”概览页,将其与之前的FP32精度推理结果进行对比:
图4-4 精度结果对比
4.3 设置多组推理参数,获取最优推理参数
优化策略中也包含了对于推理参数的组合设定,通过“Group Inference”实现:图4-5 Group Inference设置
在此选择你需要测试的多个Stream数值,以及Batch的数值,组合推理测试结果将会以图表的方式展现,以帮助你找到该模型的在此设备上的最佳推理参数:
图4-6 推理测试结果展示
4.4 横向/纵向模型性能评估
完成了单个模型的性能评估,可以使用不同的设备对此模型进行多次深入评估。图4-7 横向模型性能对比
由此可知,你可以从横向(精度格式,batch size,steam)对模型进行评估,也可以从纵向(不同的设备,CPU/iGPU)来比较同一个模型的性能水平。当然也可以在相同的机器上选择测试两个不一样的模型来评估两个模型的性能优劣。
图4-8 纵向模型性能对比
5. 总结
DL workbench 工具集成了非常多的功能,方便开发者的调用。由于篇幅的限制,本篇的介绍并不能全部覆盖,仅就DL workbench功能做分享。更多功能,请登陆Intel® Developer Cloud平台来尝试吧!
0个评论