Khronos Group 发布神经网络交换标准NNEF 1.0

20171220 比佛顿, 俄勒冈州The Khronos Group, 一个由领先硬件和软件公司组成、致力于创建高级加速标准的开源组织,今天发布神经网络交换格式(NNEF™) 1.0预测版规范,作为在培训框架和界面引擎之间的经培训的神经网络通用格式。通过各种神经网络培训工具和界面引擎的丰富组合,NNEF降低了machine learning部署碎片问题,实现了在各种设备和平台上应用中的使用。NNEF 1.0测试版规范的发布,有助于在未来公开发布最终标准前获取业界的反馈,欢迎访问NNEF GitHub repository分享评论和反

NNEF的目标是让数据科学家和工程师可以简便地从其所选的培训框架传输经培训网络到各种界面引擎。设备制造商可以依靠的一个稳定、灵活、可扩展的标准,对于神经网络在各种高端设备的广泛采用非常重要。NNEF囊括了对经培训神经网络架构、处理、参数的完整描述,使用独立的培训工具完成这些描述,并使用界面引擎执行。

“machine learning业界从该领域的各工作组中大大获益,但是缺少一个通用标准,特别是研究如何让各种部署系统彼此贴合,” NNEF工作主席Peter McGuinness“Khronos看到了业界的这个需求,并在过去的一年中开发NNEF作为神经网络交换通用标准,其意义就相当于神经网络的PDF”。

NNEF的设计致力于实现在各种工具和引擎直接的可靠的导出和导入,例如Torch、Caffe、TensorFlow、 Theano、Chainer、 Caffe2、PyTorch和MXNet。 NNEF 1.0 预测版规范包括丰富的使用案例和网络类别,以及各种功能和可扩展设计,借用Python的syntactical 元素但是添加了正式元素以用于更正。NNEF包括对自定义复合操作处理的定义,者带来了复杂网络优化的可能性。未来的工作将以一种可预测的方式建立在这一架构上,NNEF便可以与时俱进,随着machine learning的发展,不断提供稳定的部署平台。

Khronos发起了一系列开源项目,包括NNEF syntax 语法分析器/验证器以及从各种框架导出器的实例,例如TensorFlow,我们欢迎machine learning社群的参与,让NNEF对他们的工作流更有帮助。除此之外,NNEF还与Khronos OpenVX™工作组紧密合作,实现其在NNEF文档中的整合。OpenVX神经网络扩展实现了OpenVX 1.2 作为一个跨平台界面引擎,结合了计算机视觉和deep learning在单一图形中的操作。

业 界支持 

“AImotive非常骄傲可以作为NNEF的开发和早期部署的主要参与者,不仅仅作为一个新标准的推动者,还委托AI研究者Viktor Gyenes作为标准编辑”,AImotive公司硬件工程部负责Marton Feher到,“我们的自动驾驶硬件和软件技术自很久以来作为早期采用者,我们完全认可神经网络交换格式的重要性。随着开发框架扩展的数量不断增加、执行平台不断的发展和多样化,可以自由移动网络拓扑并在不同环境间转换对于供应商选择自由化和创新是至关重要的”。

“随着我们将Deep learning从实验室转移到丰富的响应客户需求的各种应用中,我们业界需要推动Deep Learning的交互转换解决方案,” AMD Redeon 工程CTO Greg Stoner“我们非常高兴看到Khronos Group推出NNEF规范,支持神经网络在培训框架和建立在OpenVX的界面引擎之间简便的移动”。

“标准化格式以互换神经网络模型,这对于网络和处理器在不同框架、工具和界面引擎之间的兼容性和优化具有重大意义。” ARM 公司Machine Learning 件技术总监Robert Elliott, “ARM支持NNEF的开发,进一步使框架和工具开发者可以开发更多的模型,以运行和验证更多的Arm® 生态系统中的处理器和加速器”。

“随着神经网络处理从云转移到移动和高端设备,对于这些模型的统一表示法的需求不断增长,这对于Qualcomm Technologies关注在开发最好的平台以在设备上执行这些模型的公司也有很大帮助。” Qualcomm Technologies, Inc.公司技术VP Jeff Gehlhaar“作为Khronos会员公司,Qualcomm Technologies公司相信合并将有助于该领域的发展。这也是对神经网络模型表示法标准的支持,例如Khronos时间网络交换,就是流线化从云到设备的转移”。

“NNEF标准和OpenVX整合实现了神经网络在各种再我们openVX GPU的培训框架、视觉和神经网络处理IP的部署的捷径” 芯原公司行副裁兼 IP总经理戴伟进讲到。“通过使用通用转换格式和我们跨各种性能层级的专为VeriSilicon IP优化的runtime界面,我们的客户可以在其平台上立刻实现优化性能,无论他们选择哪种培训框架”。

新的NNEF 1.0 文件项目和规范已上线:Khronos RegistryNNEF 开源工具和项目请浏览KhronosNNEF GitHub repository 更多关于OpenVX用于视觉加速和界面 run-time API的信息,请浏览 here

更多关于NNEF任何带来处理平坦和房子操作灵活性的信息,请浏览https://www.khronos.org/blog/nnef-design-philosophy-network-structure-and-target-use-cases

更多关于The Khronos Group 的信息,请浏览Khronos.org.

关于 The Khronos Group

The Khronos Group是一个行业组织,创建开放标准,以实现并行计算、图形、视觉和神经网络在各种平台和设备上的编写和加速。Khronos标准包括Vulkan®, OpenGL®, OpenGL® ES, OpenGL® SC, WebGL™, SPIR-V™, OpenCL™, SYCL™, OpenVX™, NNEF™, COLLADA™, OpenXR™ 和glTF™。Khronos会员可以为Khronos规范的开发做贡献,并在标准公开发布前的不同阶段拥有投票权,通过提前获得规范草本和一致性测试,加速其高端加速平台和应用产品的推出。

Khronos Group 发布最终版SYCL 1.2.1

machine learning、TensorFlow加速和C++17对齐更强大的支持

2017年12月6日 – 嵌入视觉联盟会员会议– The Khronos Group, 一个由领先硬件和软件公司组成的开源组织,致力于创建高级加速标准,今天宣布通过并发布最终版SYCL™ 1.2.1规范。OpenCL™的SYCL实现异构处理器代码使用完全标准的现代C++语言以“单源”方式编写。多厂商支持的SYCL 1.2.1 标准以免版税的方式供业界使用,SYCL的完整规范及开源一致性测试套件和采用者项目信息请浏览:www.khronos.org/sycl

SYCL 1.2.1基于OpenCL 1.2,通过Khronos会员两年半的时间完成主要更新的开发。新规范融入了来自关于machine learning框架的三个独立标准执行的体验及开发者反馈信息,例如TensorFlow,现在已支持SYCL及其原始CUDA加速器后端。

“SYCL更新的发布意义重大,其更强大的生态系统响应我们支持machine learning以及与现代C++17语言匹配的宗旨。SYCL不断帮助我们引领C++标准对异构的支持。我们希望很快推进SYCL开发工作,更多地着重对machine learning和高安全性的支持,并不断和未来的ISO C++语言对齐” SYCL工作组主席Michael Wong讲到。

SYCL 单源编程实现应用的主机和核代码始终在同一个源文件中,以一种安全类型的方式并简化跨平台异步任务图形。SYCL包括模板和通用lambda功能,以实现高水平应用软件可以和各种OpenCL 1.2执行的优化加速核代码进行简便的编程。开发者在比OpenCL C或者C++更高水平上进行编程,但始终可以通过与OpenCL、C/C++库和框架的无缝整合获得低水平代码,例如OpenCV™ 和OpenMP™。

SYCL是一个现代C++语言非常通用的具体域名嵌入语言(DSEL),其和OpenCL独特的交互操作使开发者可以使用SYCL作为一个更简单的方式与现有的OpenCL C/C++或建入核进行编程。SYCL可以取代Khronos cl2.hpp C++包装器实现了SYCL的概念,例如异步任务图形、从繁重的主机设备传输代码编程中解脱开发者。除此之外,SYCL还带来了在主机和设备之间的简化错误处理和高效的计算及交流。

另外,为了与OpenCL交互操作,SYCL还与OpenGL®、Vulkan®、OpenVX™、DirectX和其他厂商API交互操作,不会产生内存复制超载。SYCL 1.2.1 可与任何现有的和新的C++编解码器执行,包括在OpenCL 1.2的各种硬件厂商的执行层面之上。SYCL建立在Khronos SPIR™ 1.2可兼容二进制格式并完全与正在开发中的Khronos OpenCL和SPIR工作组响应,以实现对未来OpenCL性能的长期支持,包括OpenCL 2.2、SPIR-V™和Vulkan。

SYCL 1.2.1基于在C++11 的性能,并带有对C++14和C++17额外支持,以实现ISO C++17并行 STL程序在OpenCL 设备上的加速。为了支持这一工作,Khronos正在完成一个开源项目,以在SYCL之上支持Parallel STL,并在OpenCL设备上运行。具体信息请浏览:https://github.com/KhronosGroup/SyclParallelSTL。因此,在SYCL为OpenCL和SPIR带来强大的单源现代C++同时,也为覆盖其他标准性能奠定基础,包括Khronos的Vulkan、OpenVX和NNEF, 以及ISO C++ (SG1, SG6, SG12, SG14)。

网站SYCL.tech 以论坛的形式以获取更多关于SYCL方向和开发的社群反馈信息,分享开发中的项目以及标准开发的工作进展。SYCL生态系统在今年取得了巨大成就,完成众多执行,包括ComputeCPPTriSYCL

SYCL 1.2.1 业界支持

“SYCL为嵌入式领域带来了一个全新的系统水平方式,以支持异构计算。MPSoC芯片如今是庞大的复杂系统,包含各类CPU、GPU、FPGA和各种加速器,全部在同一个芯片上,使软件工程师面临巨大的挑战。SYCL允许单源C++ 17编程,以统一化主机和加速器,让编程工作更加顺利,更加通用和省时。这实现并简化了现有模板C++库和框架(Eigen、TensorFlow)的导入导出,扩展了高效异构计算的领域,” Xilinx 公司首席软件工程师、SYCL规范编辑、ISO C++ 委员会成员及triSYCL (开源SYCL执行)技术负责人Ronan Keryell讲到。

“自SYCL规范项目发起,我们看到了很多SYCL的应用,特别是在machine learning领域。伴随C++ 17 和Parallel STL的发布,ISO C++中的也有进一步开发。这些使用SYCL的体验我们已经反馈到规范中。我们非常高兴看到SYCL的更新所带来的这些体验。通过使用SYCL和标准C++语言,甚至使C++ 开发者可以更简便地使用GPU、FPGA和各类新的machine learning加速器。” Codeplay公司CEO、ComputeCpp(SYCL执行)开发者Andrew Richards讲到。

关于The Khronos Group

The Khronos Group 是一个创建开放标准以实现并行计算、图形、视觉和神经网络在各类平台和设备上编写和加速的行业组织。Khronos的标准包括Vulkan®、OpenGL®、OpenGL® ES、OpenGL® SC、WebGL™、SPIR-V™、OpenCL™、SYCL™、OpenVX™、NNEF™、COLLADA™、OpenXR™ 和glTF™。Khronos会员可以为Khronos规范的开发做贡献,在公开发布之前的不同阶段进行投票,通过提前获得规范草本和一致性测试加速其高端加速平台和应用产品的推出。

###

Vulkan 是The Khronos Group注册商标。Khronos, OpenXR, DevU, SPIR, SPIR-V, SYCL, WebGL, WebCL, COLLADA, OpenKODE, OpenVG, OpenVX, EGL, glTF, OpenKCAM, StreamInput, OpenWF, OpenSL ES, NNEF 和OpenMAX是Khronos Group Inc.商标。OpenCL是Apple Inc.的商标;OpenGL是注册商标;OpenGL ES 和OpenGL SC标识是Silicon Graphics International的商标,Khronos被授权使用。全部其他的产品名称、商标和/或公司名称仅用于识别并归属于各自所有者。