ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

OpenVINO工具套件实践学习笔记

2022-02-23 20:00:55  阅读:279  来源: 互联网

标签:OpenVINO 推理 模型 笔记 学习 套件 工具 优化


文章目录

OpenVINO™工具套件实践笔记


OpenVINO™环境安装

openvino下载官网

安装步骤,可直接参考该教程


踩坑补充


在执行 D:\Program Files (x86)\Intel\openvino_2021\deployment_tools\model_optimizer\install_prerequisites>install_prerequisites.bat

出现


ERROR: After October 2020 you may experience errors when installing or updating packages. This is because pip will change the way that it resolves dependency conflicts.

We recommend you use --use-feature=2020-resolver to test your packages with the new resolver before it becomes the default.

mxnet 1.2.1.post1 requires numpy<1.15.0,>=1.8.2, but you'll have numpy 1.19.1 which is incompatible.
mxnet 1.2.1.post1 requires requests<2.19.0,>=2.18.4, but you'll have requests 2.25.1 which is incompatible.
botocore 1.17.48 requires urllib3<1.26,>=1.20; python_version != "3.4", but you'll have urllib3 1.26.8 which is incompatible.

运行即可:


pip install mmdnn --use-feature=2020-resolver

其余的踩坑 参考这篇教程 或者该篇即可


OpenVINO™学习笔记


学习过程中可参考 【OpenVINO中文社区 在B站发布的相关学习教程视频】、【OpenVino官方文档】。


什么是OpenVINO™


OpenVINO™ 是一款 用于高性能、深度学习推理的工具套件 开源工具包。

使用高性能、人工智能和计算机视觉推理,更快更准确地将真实结果产品化,在从边缘到云的英特尔®架构上进行部署。


请添加图片描述


三大优点


  • 高性能、深度学习推理
  • 简化开发、易于使用
  • 一次编写、任意部署

如何使用


可以分三个步骤进行:

  1. 构建 Build (Train) 注:OpenVINO™是没有模型训练这个过程的,也就是说首先你得准备好训练的模型
  2. 优化 Optimize
  3. 部署 Deploy

如下图所示:


请添加图片描述


模型优化器 (Model Optimizer)


  1. 模型转换
  2. 模型压缩
  3. 32F/16F
  4. 模型优化
  5. INT8量化

分析量化优化拓扑转换 得到 IR模型


优势和特点


  • 一个基于python、跨平台的命令行工具

  • 可促进训练和部署环境之间的转换,即将其转为中间表示

  • 执行静态模型分析、通过模型拓扑转换优化性能及存储空间

  • 硬件无关的优化


    ⚠注意:

  • 模型优化器不推断模型

  • 模型优化器是在推理发生之前运行的离线工具。


推理引擎 (Inference Engine)


  1. 加载模型
  2. 加速执行
  3. 异步与同步
  4. 多线程支持

优势和特点

  • 高层级的 C/C++ 和 python,推理函数接口
  • 读取中间表示(IR)、ONNX,并在设备上执行模型
  • 使用插件架构,为不同的硬件提供统一接口
  • 每个接口类型以动态加载插件的方式实现接口,无需用户实现和维护多个代码路径

如何集成


集成流程创建推理引擎核心配置模型的输入和输出将模型加载到设备创建推理请求准备输入开始推理处理推理结果


请添加图片描述


DL Workbench

深度学习工作台 Deep Learning Workbench。是官方 OpenVINO™ 图形界面,易于预训练深度学习模型的生产。可以方便快捷的帮助我们完成 导入模型、分析其性能和准确性、可视化输出、优化模型 等任务。

在这里插入图片描述


用途和优势:

  • 可视化拓扑和层的性能数据,以帮助进行模型分析。
  • 自动分析最佳性能配置(streams、batches、latency)
  • 使用int8或Winograd校准进行实验,以获得最佳调优。
  • 通过 accuracy checker 工具提供 accuracy信息
  • 可以直接访问 Open Model Zoo 中的模型

DL Streamer

Deep Learning Streamer 用于视频流分析处理。


举例

例: 视频编码解码可以放在GPU上跑,一些图像的预处理可以放在CPU上跑,inference、checking放在视频处理器VPU上运行,从而来提升效率和性能。


优点

  • 便于跨英特尔从边缘到云的不同架构创建和部署优化的流媒体分析管道。
  • 使用 GStreamer 多媒体框架构建。

加速测试周期和开发的工具


1. Post-training Optimization Tool

  • 将模型大小减少为低精度数据类型,如INT8
  • 减少模型大小,同时改善延迟

2. Benchmark App

  • 度量模型的性能(吞吐量、延迟)
  • 获得每层和整体基础的性能指标

3. Deployment Manager

  • 为部署生成一个最佳的最小化的运行时包
  • 与开发包相比,部署占用的空间更小

4. Accuracy Checker

  • 使用已知数据集检查IR模型(原始和转换后)的准确性

5. Model Downloader

  • 方便地下载一些公共模型及英特尔预训练模型

实践记录请见下一篇~

标签:OpenVINO,推理,模型,笔记,学习,套件,工具,优化
来源: https://blog.csdn.net/weixin_45530599/article/details/123078554

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有