The Open Neural Network Exchange (ONNX) []
is an Open-source software, open-source artificial intelligence ecosystem
of technology companies and research organizations that establish open standards for representing machine learning algorithms and software tools to promote innovation and collaboration in the AI sector. ONNX is available on
GitHub
GitHub, Inc. () is an Internet hosting service for software development and version control using Git. It provides the distributed version control of Git plus access control, bug tracking, software feature requests, task management, co ...
.
History
ONNX was originally named Toffee and was developed by the
PyTorch
PyTorch is a machine learning framework based on the Torch library, used for applications such as computer vision and natural language processing, originally developed by Meta AI and now part of the Linux Foundation umbrella. It is free and op ...
team at
Facebook
Facebook is an online social media and social networking service owned by American company Meta Platforms. Founded in 2004 by Mark Zuckerberg with fellow Harvard College students and roommates Eduardo Saverin, Andrew McCollum, Dustin ...
. In September 2017 it was renamed to ONNX and announced by Facebook and
Microsoft
Microsoft Corporation is an American multinational corporation, multinational technology company, technology corporation producing Software, computer software, consumer electronics, personal computers, and related services headquartered at th ...
.
Later,
IBM,
Huawei
Huawei Technologies Co., Ltd. ( ; ) is a Chinese multinational technology corporation headquartered in Shenzhen, Guangdong, China. It designs, develops, produces and sells telecommunications equipment, consumer electronics and various smart ...
,
Intel
Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California, Santa Clara, California. It is the world's largest semiconductor chip manufacturer by revenue, and is one of the devel ...
,
AMD,
Arm and
Qualcomm announced support for the initiative.
In October 2017, Microsoft announced that it would add its
Cognitive Toolkit and
Project Brainwave platform to the initiative.
In November 2019 ONNX was accepted as graduate project in Linux Foundation AI.
In October 2020 Zetane Systems became a member of the ONNX ecosystem.
Intent
The initiative targets:
Framework interoperability
Allow developers to more easily move between frameworks, some of which may be more desirable for specific phases of the development process, such as fast training, network architecture flexibility or inferencing on mobile devices.
Shared optimization
Allow hardware vendors and others to improve the performance of
artificial neural network
Artificial neural networks (ANNs), usually simply called neural networks (NNs) or neural nets, are computing systems inspired by the biological neural networks that constitute animal brains.
An ANN is based on a collection of connected units ...
s of multiple frameworks at once by targeting the ONNX representation.
Contents
ONNX provides definitions of an extensible computation graph model, built-in operators and standard
data type
In computer science and computer programming, a data type (or simply type) is a set of possible values and a set of allowed operations on it. A data type tells the compiler or interpreter how the programmer intends to use the data. Most progra ...
s, focused on inferencing (evaluation).
Each computation
dataflow
In computing, dataflow is a broad concept, which has various meanings depending on the application and context. In the context of software architecture, data flow relates to stream processing or reactive programming.
Software architecture
Da ...
graph is a list of nodes that form an
acyclic graph. Nodes have inputs and outputs. Each node is a call to an operator. Metadata documents the graph. Built-in operators are to be available on each ONNX-supporting framework.
See also
*
Neural Network Exchange Format
*
Comparison of deep learning software
*
Predictive Model Markup Language
The Predictive Model Markup Language (PMML) is an XML-based Predictive modelling, predictive model interchange format conceived by Dr. Robert Lee Grossman, then the director of the National Center for Data Mining at the University of Illinois at ...
an XML-based predictive model interchange format
* PicklingTools: an open-source collection of tools for allowing C++ and Python systems to share information quickly and easily.
References
External links
*
*
{{Microsoft FOSS
Microsoft free software
Software using the Apache license
Neural network data exchange formats
2017 software