0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文了解Intel®Developer Cloud之DL Workbench深度学习工作台

英特尔物联网 来源:英特尔物联网 2023-05-12 09:37 次阅读

文章作者:周兆靖

DL Workbench 深度学习工作台

是 OpenVINO软件栈中非常重量级的一个工具

涉及到的内容和操作比较多

决定还是另起一篇来介绍!

1.概述介绍

如果您对深度学习感兴趣,DL Workbench 提供了更为直观的学习平台:带您了解什么是神经网络,神经网络是如何工作的,以及如何检查它们的架构。您可以在开发产品之前,学习神经网络的分析和优化网络的基础知识,以及熟悉 OpenVINO生态系统及其主要组件。如果您是资深的 AI 工程师,DL Workbench 将为您提供一个方便的 web 界面,以实时优化您的模型并可以为您的产品落地进行加速。

DL Workbench 可以很方便地测量和分析模型性能,同时在实验中调整模型以提高性能,最终分析模型的拓扑结构并产生可视化输出。DL Workbench 的工作流程如下图所示:

1d52eaa2-f005-11ed-90ce-dac502259ad0.png

图1-1 DL Workbench 的工作流程

英特尔提供了两种运行 DL workbench(DLWB)环境。基于本地硬件的 DLWB 环境,访问的算力仅限本地现有的算力资源;基于 IntelDeveloper Cloud 的 DLWB 提供了丰富的算力选项用于模型的横向对比和分析,同时提供了类似本地化的用户操作体验。

IntelDeveloper Cloud 平台上运行 DLWB 方法:

Run DL Workbench in Intel DevCloud

https://docs.openvino.ai/latest/workbench_docs_Workbench_DG_Start_DL_Workbench_in_DevCloud.html

(复制链接到浏览器打开)

本地硬件运行 DLWB 的方法:

Run DL Workbench on Local System

https://docs.openvino.ai/latest/workbench_docs_Workbench_DG_Run_Locally.html

(复制链接到浏览器打开)

接下来我们在 Intel Developer Cloud 平台来运行 DLWB,无需安装,直接运行。

2. 启动DL Workbench

在 Intel Developer Cloud 平台上启动 DL Workbench 的步骤如下:

1打开 Work with Intel Distribution of OpenVINO Toolkit 页面:

https://www.intel.com/content/www/us/en/developer/tools/devcloud/edge/overview.html

(复制链接到浏览器打开)

划到页面下半部分,点击 Deep Learning Workbench:

https://www.intel.com/content/www/us/en/developer/tools/devcloud/edge/build/overview.html

(复制链接到浏览器打开)

1d85c1de-f005-11ed-90ce-dac502259ad0.png

图2-1 DL Workbench启动一

2运行第一个 Cell 里的代码,之后会出现“Start Application”,点击“Start Application”并等待初始化完成,进入点击“Launch DL Workbench”启动 DL Workbench( 以下简称 DLWB):

1db419f8-f005-11ed-90ce-dac502259ad0.png

图2-2 DL Workbench 启动二

3. 使用DL Workbench评估模型性能

DLWB 的主界面如下图所示,点击 “Create Project” 进行模型评估:

1dd92e6e-f005-11ed-90ce-dac502259ad0.png

图3-1 创建 Project

步骤一

模型选择

首先点击“import model”,导入需要评估的模型。Open Model Zoo 是我们提供的一个在线模型库,你可以直接从库中下载需评估的模型,当然,你也可以上传你的本地的模型文件,既可以是 IR 格式,也可以是原生的模型格式:

1dfbf192-f005-11ed-90ce-dac502259ad0.png

图3-2 选择模型

步骤二

设备选择

单击选定模型完成之后,请点击“Select an Environment”,这里可以选定你部署的设备节点,Intel DevCloud 平台的设备都可以进行实验:

1e4f87b2-f005-11ed-90ce-dac502259ad0.png

图3-3 选择设备一

你可以在”Device” 下拉菜单里选择该模型运行在 CPU 上还是集成 GPU 上:

1e71180a-f005-11ed-90ce-dac502259ad0.png

图3-3 选择设备二

步骤三

数据集选择

点击“Next Step”之后进入数据集选择页面,点击“import Dataset”,你可以选择使用 DLWB 提供的图像创建一个数据集,或者通过本地上传已有的数据集,例如 COCO,VOC,ImageNET 等格式的数据集:

1e8854f2-f005-11ed-90ce-dac502259ad0.png

图3-4 选择数据集

步骤四

推理性能测试

点击“Create Project”之后,开始运行推理,等待推理完成之后,可以直观的看到模型的 FPS 指标,以 FPS 值来判断这个模型的性能水平:

1ea5f214-f005-11ed-90ce-dac502259ad0.png

图3-5 推理性能测试

4. DL Workbench 模型调试

4.1模型单层运行时间统计

在模型网络分析板块,DLWB 可以计算出模型中每一层的消耗时间,可以以此进行网络分析,从而决定下一步的优化策略。

1ebfde72-f005-11ed-90ce-dac502259ad0.png

图4-1 模型单层运行时间统计

4.2模型层各精度占比统计

根据这个图表,你可以很直观的看到该模型层中每种精度的占比情况。若你觉得你可以降低 FP32 精度层的占比,你可以根据自己的需求,对高精度层实行量化操作,使其精度下降,并确保模型准确度下降在可接受的范围内,这样可以使得模型推理速度更为快速。

1eedc4b8-f005-11ed-90ce-dac502259ad0.png

图4-2 模型层各精度占比统计

4.3模型网络拓扑展示

这个部分通过直接展示模型的拓扑结构图和模型的层属性,让开发者对此模型能有一个更清晰与直观的认识。

1f0b062c-f005-11ed-90ce-dac502259ad0.png

图4-3 模型网络拓扑展示

4.4模型优化建议

下拉页面,可以看到 DLWB 会自动针对你的模型提供性能提升的建议。比如在这个模型中,它检测到该模型有0%的层运行在 INT8 整型精度上,所以它建议我们对模型进行 INT8 精度校验。

1f33b298-f005-11ed-90ce-dac502259ad0.png

图4-4 DLWB 对模型性能提升的优化建议

4.5校准模型成为 INT8 精度模型

在“Perform”选项中,包含了对于模型优化评估的多种策略。例如,通过校验模型层从 FP32 到 INT8 来优化推理性能:优化步骤会将原本 FP32 精度格式的模型层校准量化成精度为 INT8 的模型层,不用重训练并且可以控制精度下降不超过1%的范围。

1f73533a-f005-11ed-90ce-dac502259ad0.png

图4-5 校准为 INT8 模型层介绍页面

选择默认模式,点击启动优化,即可完成低精度优化:

1fa40e76-f005-11ed-90ce-dac502259ad0.png

图4-6 选择校准为 INT8 模型层的算法

完成以后,你可以在模型主页看到已优化的模型和未优化的模型,可以看到模型推理吞吐量获得了巨大的提升:

1fd28e40-f005-11ed-90ce-dac502259ad0.png

图4-7 精度为 FP32 精度与 INT8 精度模型的性能对比

4.6创建模型准确度报告

在“Perform”标签下,选择“Create Accuracy Report”,点击创建报告,就可以得到当前模型校验当前数据集获得的识别准确度。

1ff88a32-f005-11ed-90ce-dac502259ad0.png

图4-8 创建模型识别准确度报告

当你同时有 FP32 精度模型和 INT8 精度模型时,你可以通过准确度测算报告来获得详细的准确度信息。标注于“Accuracy”一栏中。

201d2d06-f005-11ed-90ce-dac502259ad0.png

图4-9 对比 INT8 模型与 FP32 模型识别准确度与推理性能数据

最终,我们发现同样一个拓扑结构的模型,模型各层主要精度分别为 FP32 和 INT8,实测 FPS 的数据为 FP32 的 135.5FPS,而 INT8 精度的模型高达 450.46FPS,且前提是在准确度下降在百分之一的范围内。说明低精度推理对于模型推理计算的性能提升还是非常可观的。

4.7设置多组推理参数,获取最优推理参数

优化策略中也包含了对于推理参数的组合设定,通过“Group Inference”实现:

2044d45a-f005-11ed-90ce-dac502259ad0.png

图4-10 Group Inference 设置

在此选择你需要测试的多个 Stream 数值,以及 Batch 的数值,组合推理测试结果将会以图表的方式展现,以帮助你找到该模型的在此设备上的最佳推理参数:

206475d0-f005-11ed-90ce-dac502259ad0.png

图4-11 推理测试结果展示

4.8横向/纵向模型性能评估

完成了单个模型的性能评估,可以使用不同的设备对此模型进行多次深入评估。

2084986a-f005-11ed-90ce-dac502259ad0.png

图4-12 横向模型性能对比

由此可知,你可以从横向(精度格式,batch size,steam)对模型进行评估,也可以从纵向(不同的设备,CPU/iGPU)来比较同一个模型的性能水平。当然也可以在相同的机器上选择测试两个不一样的模型来评估两个模型的性能优劣。

20b60a8a-f005-11ed-90ce-dac502259ad0.png

图4-13 纵向模型性能对比

5.总结

DL workbench 工具集成了非常多的功能,方便开发者的调用。由于篇幅的限制,本篇的介绍并不能全部覆盖,仅就 DL workbench 功能做分享。更多功能,请登陆Intel Developer Cloud 平台来尝试吧!

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 英特尔
    +关注

    关注

    61

    文章

    9960

    浏览量

    171734
  • 神经网络
    +关注

    关注

    42

    文章

    4771

    浏览量

    100752
  • intel
    +关注

    关注

    19

    文章

    3482

    浏览量

    185978
  • Developer
    +关注

    关注

    0

    文章

    25

    浏览量

    6409
  • 深度学习
    +关注

    关注

    73

    文章

    5503

    浏览量

    121151

原文标题:一文了解Intel® Developer Cloud 之DL Workbench深度学习工作台 | 开发者实战

文章出处:【微信号:英特尔物联网,微信公众号:英特尔物联网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    模具工作台检测应用案例

    、需求描述某模具商有种模具设备的工作台,他们想要对该模具工作台进行检测,获取精确数据来比对偏差。之前检测手段十分局限,用卡尺等测量手段,检测精度完全达不到要求,并且结果不直观。为了获取完整的模具
    发表于 08-10 14:18

    使用SPC5 studio作为工作台调试收到警告

    嗨我使用SPC5 studio作为工作台,UDE STK作为调试器。调试时收到以下警告。请帮我配置UDE STK。以上来自于谷歌翻译以下为原文 Hi I am using SPC5 studio
    发表于 09-25 17:13

    工作台生成不完整的源代码怎么处理?

    使用针对 IHM001 的最新 MCSDK Workbench(在 Windows 10 上)和随附的 BR2804 电机:MC 工作台:5.3.2.18569WB_to_Mx
    发表于 01-03 08:49

    工作台

    基于FLASH软件设计的动画,演示工作台的正反转过程。
    发表于 05-27 16:44 0次下载

    深度学习是什么?了解深度学习难吗?让你快速了解深度学习的视频讲解

    深度学习是什么?了解深度学习难吗?让你快速了解深度
    发表于 08-23 14:36 16次下载

    多功能焊接工作台的制作

    焊接工作台是指为焊接小型焊件而设置的工作台。焊接工作台的表面般有T型槽或孔,方便使用。焊接平台材质般为HT200或HT250,这两种材质
    的头像 发表于 04-26 14:51 7647次阅读

    防静电工作台接地方法

    防静电工作台具有防静电功能,不只是因为桌面采用防静电台垫,还有个很重要的因素是防静电接地线。没有防静电接地线的工作台是起不到防静电的作用的。防静电接地线是将整个防静电工作台产生的静电
    的头像 发表于 05-17 15:23 2.6w次阅读

    关于深度强化学习的概念以及它的工作原理

    深度学习DL是机器学习种基于对数据进行表征学习的方法。
    发表于 01-30 09:53 5829次阅读
    关于<b class='flag-5'>深度</b>强化<b class='flag-5'>学习</b>的概念以及它的<b class='flag-5'>工作</b>原理

    人工智能深度强化学习DRL的解析

    深度学习DL是机器学习种基于对数据进行表征学习的方法。
    发表于 01-24 10:46 5059次阅读

    电机控制工作台的中文资料介绍

    电机控制工作台(MotorControl Workbench):款 PC 代码生成器工具,可减少设计人员在所有 ST 电机控制 FW 库(STM32 PMSM FOC FW 库 5.0 或更高版本
    发表于 10-23 16:10 33次下载
    电机控制<b class='flag-5'>工作台</b>的中文资料介绍

    什么是深度学习(Deep Learning)?深度学习工作原理详解

      本文将带您了解深度学习工作原理与相关案例。 什么是深度学习
    的头像 发表于 04-01 10:34 1.1w次阅读

    AN5796_STM32WL 系列射频工作台

    AN5796_STM32WL 系列射频工作台
    发表于 11-21 08:11 0次下载
    AN5796_STM32WL 系列射频<b class='flag-5'>工作台</b>

    如何借助TigerGraph机器学习工作台加速企业BI

    在高级设置部分,确保启用机器学习工作台,然后在入门套件中选择图机器学习,这样它就包括在你的配置集群中。(注意:对于这个版本,我们将只支持单服务器配置,即分区因子=1)
    的头像 发表于 11-29 10:24 564次阅读

    Intel Developer Cloud Telemetry数据分析()

    Telemetry(遥测)是指Intel Developer Cloud 帮助开发者收集应用程序执行时开发者指定的信息,并通过 UI 的形式展现的功能,该功能可以被启动或关闭。
    的头像 发表于 06-05 15:57 683次阅读
    <b class='flag-5'>Intel</b> <b class='flag-5'>Developer</b> <b class='flag-5'>Cloud</b> Telemetry数据分析(<b class='flag-5'>一</b>)

    Intel Developer CloudTelemetry数据分析

    在上篇文章中介绍了 Intel Developer Cloud Telemetry 的概念和功能,通过该功能的数据分析,可以更好地优化产品方案。有关 Telemetry 的
    的头像 发表于 07-07 10:55 611次阅读
    <b class='flag-5'>Intel</b> <b class='flag-5'>Developer</b> <b class='flag-5'>Cloud</b><b class='flag-5'>之</b>Telemetry数据分析