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

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

3天内不再提示

用于深度学习推理的高性能工具包

星星科技指导员 来源:嵌入式计算设计 作者:Saumitra Jagdale 2022-10-19 09:11 次阅读

近年来,深度神经网络在将计算机视觉算法的准确性提升到一个新的水平方面取得了重大进展。OpenVINO 工具包就是这样一个例子,它可以在提供高性能的同时优化 DNN 模型。

英特尔发布了最新版本(2022.1)的OpenVINO工具包,为任何地方的开发人员提供了更简单的部署。OpenVINO是“开放式视觉推理和神经网络优化”的缩写,是一个跨平台的深度学习工具包,提供额外的深度学习模型,设备可移植性和更高的推理性能,更少的代码更改。它专注于通过一次写入,随处部署的方法增强深度神经网络推理,从而优化应用程序的开发生命周期。

该工具包有两个版本,一个是开源的开放VINO工具包,另一个是英特尔发行版的开放VINO工具包。OpenVINO工具包主要用于开发各种问题的快速解决方案,例如模拟人类视觉,语音识别,自然语言处理,推荐系统等。它为开发人员提供了一种更简单的替代方案,可以在其AI界面上工作并采用和维护其代码。OpenVINO建立在最新一代人工神经网络(ANN)的基础上,例如卷积神经网络(CNN)以及循环和基于注意力的网络。

在英特尔硬件中,OpenVINO 包含计算机视觉和非计算机视觉工作负载。通过其众多功能,它可确保最佳性能并加快应用程序开发。它提供来自其自己的开放模型库的预训练模型,该动物园提供优化的模型。OpenVINO 提供了模型优化器 API,可以转换您提供的模型并为推理做好准备。推理引擎允许用户通过编译优化的网络并管理特定设备上的推理操作来调整性能。由于该工具包与大多数框架兼容,因此干扰最小,性能最高。

OpenVINO 工具包的应用程序,该工具包使用计算机视觉进行入侵检测。英特尔的 OpenVINO 工具包分发版旨在促进和简化高性能计算机视觉和深度学习推理应用的开发、创建和部署,这些应用适用于广泛使用的英特尔平台。OpenVINO 的应用范围从自动化和安全到农业、医疗保健等等。

版本 2022.1 的功能

此版本为以前的版本 2021.3 提供了错误修复和功能更改。

已更新、更干净的 API

这个新版本使维护开发人员的代码变得更加容易。它可以与张量流约定集成,以最大限度地减少转换。此版本减少了模型优化器中的 API 参数,以最大程度地降低复杂性。另一方面,在开放式神经网络交换 (ONNX*) 模型上进行模型转换的性能已得到显著提高。

更广泛的模型支持

用户可以在更广泛的深度学习模型中轻松部署应用程序,包括自然语言处理 (NLP)、双精度和计算机视觉。这些预训练的模型专注于 NLP 和额外的异常检测类别,可用于工业检查、降噪、问答、翻译和文本到语音转换。

便携性和性能

此版本通过跨 CPUGPU 等的自动设备发现、负载平衡和动态推理并行性,有望提升性能。

开放VINO工具包附加组件

计算机视觉注释工具

数据集管理框架

深度学习主播

神经网络压缩框架

开放维诺模型服务器

开放维诺安全附加组件

培训扩展

开放维诺的工作

OpenVINO工具包由各种开发和部署工具组成,其中包括一组完全配置的预训练模型和用于评估的硬件。以下步骤描述了开放VINO的工作原理

先决条件:设置开放酒庄

在开始使用实际工作流之前,请确保选择主机、目标平台和模型。该工具支持操作系统,如Linux,Windows,macOS和拉斯比安。至于深度学习模型训练框架,它支持张量流,卡菲,MXNet,Kaldi以及开放神经网络交换(ONNX)模型格式。

步骤 1:训练模型

第一步是准备和训练深度学习模型。您可以从开放模型动物园中找到预先训练的模型,也可以构建自己的模型。OpenVINO 为公共模型提供经过验证的支持,并在存储库中提供一系列代码示例和演示。可以使用脚本为用于训练模型的框架配置模型优化器。

步骤 2:转换和优化模型

配置模型后,可以运行模型优化器将模型转换为中间表示 (IR),中间表示形式以一对文件(.xml和.bin)表示。除了文件对(.xml和.bin),模型优化器还通过输出诊断消息来帮助进一步优化。

步骤 3:针对性能进行调整

在此步骤中,推理引擎用于编译优化的模型。推理引擎是一个高级(C、C++Python*)推理 API,作为每种硬件类型的动态加载插件实现。它为每个硬件提供最佳性能,而无需维护多个代码路径。

步骤 4:部署应用程序

推理引擎用于部署应用程序。使用部署管理器,可以通过将模型、IR 文件、应用程序和关联的依赖项组装到目标设备的运行时包中来创建开发包。

总而言之,这个新版本的OpenVINO工具包提供了许多好处,不仅优化了用户部署应用程序的体验,还增强了性能参数。它使用户能够开发具有轻松部署、更多深度学习模型、更多设备可移植性以及更少代码更改的更高推理性能的应用程序。

审核编辑:郭婷

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

    关注

    19

    文章

    6649

    浏览量

    84529
  • 深度学习
    +关注

    关注

    73

    文章

    5237

    浏览量

    119908
收藏 人收藏

    评论

    相关推荐

    Torch TensorRT是一个优化PyTorch模型推理性能工具

    那么,什么是Torch TensorRT呢?Torch是我们大家聚在一起的原因,它是一个端到端的机器学习框架。而TensorRT则是NVIDIA的高性能深度学习
    的头像 发表于 01-09 16:41 394次阅读
    Torch TensorRT是一个优化PyTorch模型<b class='flag-5'>推理性能</b>的<b class='flag-5'>工具</b>

    用上这个工具包,大模型推理性能加速达40倍

    作者: 英特尔公司 沈海豪、罗屿、孟恒宇、董波、林俊 编者按: 只需不到9行代码, 就能在CPU上实现出色的LLM推理性能。 英特尔  Extension for Transformer 创新工具包
    的头像 发表于 12-01 20:40 636次阅读
    用上这个<b class='flag-5'>工具包</b>,大模型<b class='flag-5'>推理性能</b>加速达40倍

    深度学习在人工智能中的 8 种常见应用

    深度学习简介深度学习是人工智能(AI)的一个分支,它教神经网络学习推理。近年来,它解决复杂问题
    的头像 发表于 12-01 08:27 971次阅读
    <b class='flag-5'>深度</b><b class='flag-5'>学习</b>在人工智能中的 8 种常见应用

    Microchip(微芯)推出MPLAB机器学习开发工具包

    模型开发。这款软件工具包用于Microchip的各类单片机(MCU)和微处理器(MPU)产品组合,助力开发人员快速高效地添加机器学习推理。Microchip开发系
    的头像 发表于 09-12 18:26 570次阅读
    Microchip(微芯)推出MPLAB机器<b class='flag-5'>学习</b>开发<b class='flag-5'>工具包</b>

    Microchip 推出 MPLAB® 机器学习开发工具包,助力开发人员轻松将机器学习集成到 MCU 和 MPU中

    开发工具包,提供一套完整的集成工作流程来简化机器学习模型开发。这款软件工具包用于Microchip的各类单片机 (MCU) 和微处理器 (MPU) 产品组合,助力开发人员快速高效地添
    的头像 发表于 09-11 15:55 338次阅读

    ARM KEIL™MDK工具包的操作流程

    本笔记介绍了ARM®KEIL™MDK工具包的操作流程,该工具包采用了μVision®和MicroSemi(Actel™)包含嵌入式ARM®Cortex™-M3处理器的全新智能融合2(SF2)系列
    发表于 09-04 06:16

    ARM KEIL™MDK工具包的操作流程

    本笔记介绍了ARM®KEIL™MDK工具包的操作流程,该工具包采用了μVision®和MicroSemi的SmartFusion2(™)系列,该系列包含嵌入式ARM®Cortex™-M3处理器
    发表于 08-29 07:39

    用于飞利浦2.2版的RealView开发工具包入门指南

    只有用于飞利浦编译工具和调试器的RVDK支持ARM®工具包专有ELF(ATPE)格式。 编译工具生成的对象和图像不能被其他工具链使用。 AT
    发表于 08-24 08:20

    ARM软件开发工具包2.50版参考指南

    ARM软件开发工具包(SDT)由一套应用程序以及支持文档和示例组成,使您能够为ARM系列RISC处理器编写和调试应用程序。 您可以使用SDT来开发、生成和调试C、C++或ARM汇编语言程序。
    发表于 08-21 07:17

    深度学习框架区分训练还是推理

    深度学习框架区分训练还是推理深度学习框架是一个非常重要的技术,它们能够加速深度
    的头像 发表于 08-17 16:03 1030次阅读

    如何在OpenVINO trade工具包中推断两个图像?

    无法在OpenVINO™工具包中对两个输入图像运行推理
    发表于 08-15 08:24

    如何在OpenVINO工具包中使用带推理引擎的blob?

    无法确定如何在OpenVINO™工具包中使用带推理引擎的 blob。
    发表于 08-15 07:17

    c++对于ARM软件开发工具包用户及参考指引

    这本书描述了armc++ 1.0版本的ARM软件开发工具包,以下简称为armc++。ARM c++是一套工具,当与ARM软件开发工具包2.11或更高版本一起使用时,允许您为ARM家族的RisC处理器
    发表于 08-08 06:29

    利用OpenVINO工具包检测汽车品牌

    地检测品牌、车标和形状。 OpenVINO TM的Intel&Distribution工具包是一个全面的工具包用于快速开发模拟人类视觉的应用程序和解决方案。该工具包以细胞神经
    发表于 08-04 07:36

    如何访问已与eIQ工具包一起安装的python版本?

    我正在尝试在远程 SSH 板上安装 eIQ 工具包,DEBIX Model A 板具有 I.MX 8M Plus EdgeVerse 处理器和 Ubuntu 20.04。 我下载了 eIQ 工具包
    发表于 06-07 06:46