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

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

3天内不再提示

微软宣布将多平台通用ONNX机器学习引擎开源

DPVg_AI_era 来源:lq 2018-12-07 09:01 次阅读

微软宣布将多平台通用ONNX机器学习引擎开源,此举将让机器学习框架,向着机器学习框架的标准化和性能优化方向迈进了一大步。此前,为了推进AI框架标准化,更好地支持PyTorch和TensorFlow等框架,微软甚至降低了对自家CNTK框架的宣传调门,可谓“用心良苦”。

当地时间12月4日,微软在GitHub上宣布ONNX Runtime开源 。

ONNX Runtime是适用于Linux,Windows和Mac上ONNX格式的机器学习模型的高性能推理引擎。

ONNX是微软与Facebook和AWS共同开发的深度学习和传统机器学习模型的开放格式。ONNX格式是开放式生态系统的基础,使人工智能技术更易于访问,而且可以为不同人群创造价值:

开发人员可以为自己机器学习任务选择合适的框架,框架作者可以集中精力推出创新,提高框架的性能。对于硬件供应商来说,也可以简化神经网络计算的复杂度,实现优化算法

过去20多年来,微软一直在进行人工智能研究,并将机器学习和深度神经网络整合到旗下众多产品和服务中。由于团队使用许多不同的培训框架并针对不同的部署选项,因此确实需要统一这些分散的解决方案,以便快速,简单地操作模型。

此次开源的ONNX Runtime为这个问题提供了解决方案。该工具为数据科学家在选择的框架内训练和调整模型提供了更高的灵活性,并在云端和产品设计中以高性能打造这些模型。

ONNX引擎是Windows ML组件的关键部分。微软正在将这种机器学习界面纳入到Windows 10系统中,让开发人员在自己的Windows应用程序上使用训练过的机器学习模型。 Windows ML推理引擎可以在Windows设备上对这些模型进行本地评估,开发人员无需将模型放到云中运行。

ONNX Runtime有什么用?

ONNX是微软公开推出的首款推理机,完整支持ONNX 1.2和 ONNX机器学习的更高版本。这意味着ONNX Runtime直接随着ONNX的标准进步,实现对一大批AI模型和技术突破的支持。

微软的团队在使用ONNX Runtime来改善在Bing搜索、广告、Office产品套件等核心业务中的评分延时,提高运行效率。而对于由其他工具转而使用ONNX的模型,其平均表现提升了2倍。此外,微软的其他一些服务,如Windows ML 和ML.net等,也纳入了ONNX Runtime支持的业务之中。

ONNX Runtime在设计上是轻量级和模块化的,CPU的构建只有几M字节。可扩展架构、优化硬件加速器,降低计算延时,提升计算效率。

英伟达英特尔高通等巨头纷纷支持

很多业界领先的企业都在积极将自己的技术与ONNX Runtime实现集成和整合,使自己的服务能够完整支持ONNX规范,同时实现性能的最优化。

微软和英特尔正在合作,将nGraph编译器集成为ONNX Runtime的执行提供程序。nGraph编译器能够通过应用非设备特定和设备特定的优化来实现现有和未来的硬件加速。与原生框架相比,使用nGraph Compiler执行CPU推理任务可将性能提升45倍。

英伟达正在努力将TensorRT与ONNX Runtime实现整合,为在英伟达的GPU上部署快速增长的模型和应用程序提供简便的工作流程,同时实现最佳性能。

NVIDIA TensorRT包括一个高性能的推理优化器和运行时,可以在推荐器,自然语言处理和图像/视频处理等应用程序中以最小的延迟提供极高的吞吐量。

ONNX的另一个早期支持者是高通,也支持ONNX Runtime。高通AI业务高级主管Gary Brotman表示:“ONNX Runtime的推出和开源是微软提升跨设备类别框架的互操作性,实现标准化和性能优化的积极一步,我们希望开发人员欢迎在骁龙移动平台上支持ONNX Runtime。

业内领先的物联网芯片制造商恩智浦(NXP)最近也宣布支持ONNX Runtime。“我们希望,用户在众多机器学习框架中进行选择时能够拥有最大的灵活性和自由度。”

恩智浦AI技术中心负责人Markus Levy表示。“我们很高兴能够通过支持微软在我们的平台上发布ONNX Runtime,让机器学习开发者客户群能够享受ONNX带来的好处。”

如何使用ONNX Runtime

首先,你需要建立一个ONNX模型。没有ONNX模型?没问题。ONNX的优点就是能够通过众多工具实现框架的互操作性 。你可以直接从ONNX Model Zoo获得ResNet和TinyYOLO等热门模型的预训练版本。

你还可以使用Azure Custom Vision Cognitive Service创建自己的自定义计算机视觉模型。如果已经拥有TensorFlow、Keras、Scikit-Learn或CoreML格式的模型,可以使用我们的开源转换器(ONNX MLTools和TF2 ONNX)进行转换。

可以使用Azure机器学习服务训练新模型并保存为ONNX格式。

要使用ONNX Runtime,只需安装所需平台和所选语言的软件包,或者从源代码创建。ONNX Runtime支持 CPU 和 GPU (CUDA) 以及兼容Linux、Windows和Mac上的Python、C#和C接口。具体的安装说明可以在GitHub中获取。

你可以直接从源或预编译的二进制文件将ONNX Runtime集成到代码中,一种简单的操作方法是使用Azure机器学习为应用程序部署服务,以待调用。

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

    关注

    4

    文章

    6145

    浏览量

    103011
  • 神经网络
    +关注

    关注

    42

    文章

    4538

    浏览量

    98425
  • 机器学习
    +关注

    关注

    66

    文章

    8061

    浏览量

    130441

原文标题:微软开源ONNX Runtime,想用什么深度学习框架任你选!

文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ONNX Runtime支持龙架构,AI推理生态再添新翼

    近日,备受瞩目的AI推理框架开源社区ONNX Runtime宣布推出支持龙架构的新版本1.17.0,这一里程碑式的更新意味着龙芯平台上的AI推理应用开发与部署将更加便捷。
    的头像 发表于 03-27 10:58 176次阅读

    开放原子开源大赛—基于OpenHarmony的团结引擎应用开发赛正式启动!

    “基于OpenHarmony的团结引擎应用开发赛”是开放原子全球开源大赛下开设的新兴及应用赛的赛题之一,本次赛题旨在鼓励更多开发者基于OpenHarmony 4.x版本,使用Unity中国团结引擎
    发表于 03-13 10:45

    AI推理框架软件ONNX Runtime正式支持龙架构

    近日,知名AI推理框架开源社区ONNX Runtime正式发布支持龙架构的版本1.17.0。
    的头像 发表于 03-12 12:23 233次阅读
    AI推理框架软件<b class='flag-5'>ONNX</b> Runtime正式支持龙架构

    微软推出ONNX Runtime Web,利用WebGPU优化浏览器机器学习性能

    作为微软的 JavaScript 库,ONNX Runtime Web 使得网络开发者能在浏览器环境下部署机器学习模型,并提供多种硬件加速的后端支持。
    的头像 发表于 03-05 14:23 186次阅读

    通过新的ONNX导出器简化模型导出流程

    大家好。我叫Manav Dalal,今天我将讲解如何通过新的ONNX导出器简化模型导出流程。如果你还没有听说过ONNX,它是一种用于表示机器学习模型的开放格式。它定义了一套
    的头像 发表于 01-10 09:45 219次阅读
    通过新的<b class='flag-5'>ONNX</b>导出器简化模型导出流程

    MCU在线技术讲座-EFM和EFR: 面向物联网开发的通用MCU平台

    : 面向物联网开发的通用MCU平台”。 本次技术讲座详细说明以芯科科技8位和32位MCU,以及无线SoC作为物联网开发通用平台的诸多
    发表于 11-23 13:45

    首款基于开源鸿蒙的KaihongOS人形机器

    深开鸿与乐聚机器宣布,推出首款基于开源鸿蒙的KaihongOS人形机器人。
    的头像 发表于 11-21 11:44 501次阅读
    首款基于<b class='flag-5'>开源</b>鸿蒙的KaihongOS人形<b class='flag-5'>机器</b>人

    开源机密计算平台:蓬莱-OpenHarmony

    (Serverless)计算、系统安全。在包括ASPLOS、ISCA、OSDI、SOSP、ACM SoCC、TOCS等国际著名会议和期刊发表/录用篇学术论文。 内容来源 第一届开放原子开源基金会
    发表于 09-07 16:08

    ONNX模型转换为中间表示(IR)后,精度下降了怎么解决?

    ONNX 模型转换为 IR。 与使用 PyTorch 运行 ONNX 模型相比,Ran IR 采用 基准 C++ 工具,其性能准确率降低了 20%。 无法确定如何对图像进行预处理以获得更好的准确性。
    发表于 08-15 08:28

    YOLOv5 ONNX模型转换为中间表示(IR)格式时,收到与节点相关的错误怎么解决

    YOLOv5 ONNX 模型转换为 IR 格式:python /opt/intel/openvino_2021/deployment_tools/model_optimizer/mo.py
    发表于 08-15 08:14

    2D物理引擎开源分享

    电子发烧友网站提供《2D物理引擎开源分享.zip》资料免费下载
    发表于 07-12 11:17 0次下载
    2D物理<b class='flag-5'>引擎</b><b class='flag-5'>开源</b>分享

    微软发布 Azure Linux 正式版

    服务(AKS)的一个开源容器主机操作系统,它针对 Azure 进行了优化,旨在使开发人员更容易使用微软的工具来部署和管理容器工作负载。Azure Linux 源于微软的 CBL-Mariner 项目,是“自我独立的 Linux
    发表于 05-28 08:34

    yolov7 onnx模型在NPU上太慢了怎么解决?

    yolov7tiny.pt(yolov7-tiny 模型)转换为具有 uint8 权重的 yolov7tiny.onnx,然后在 i.MX 8M Plus NPU 上运行
    发表于 04-04 06:13

    面向机器学习的高可用、高并发数据库:OpenMLDB

      机器学习应用从开发到上线全流程(MLOps)  OpenMLDB 是一个开源机器学习数据库,提供线上线下一致的特征
    发表于 03-31 15:43 0次下载

    EIQ onnx模型转换为tf-lite失败怎么解决?

    我们正在尝试 tflite 框架与 npu 一起使用来进行机器学习。这是我们的步骤:1)用pytorch训练一个模型2) 以onnx格式导出模型3) eiq工具的covnert模型
    发表于 03-31 08:03