Machine learning is an umbrella term for a group of related technologies which are critical to the development of visually-aware systems. There has been a huge explosion of interest in these technologies driven by their astonishing successes and a consequent explosion in the range and diversity of tools, formats and platforms available for developers to work with.
Neural Networks in particular are being successful at pattern matching and classification tasks and their new popularity is shown by the number of incompatible development and deployment tools that are emerging. Now The Khronos™ Group (www.khronos.org) is moving to reduce confusion and enable interoperability by announcing two new standardisation initiatives in that area.
A news release from Khronos today states that a new working group has been set up to define an “… API independent standard file format for exchanging deep learning data between training systems and inference engines.” and “… the OpenVX™ working group has released an extension to enable Convolutional Neural Network topologies to be represented as OpenVX graphs and mixed with traditional vision functions.” (The full press release is available here).
The first move will establish a standard way to move defined networks from the training phase, which is typically done offline using a wide range of rapidly developing tools and techniques, and the inference phase where the network is actually used in an application. This phase, especially in embedded systems is usually mapped onto highly optimised and constrained platforms so by providing a standard exchange format, Khronos’ Neural Network Exchange Format (NNEF) will eliminate much of the need for development and deployment platforms to share implementation details.
By concentrating on a flexible format to exchange data, rather than on the structure of the actual networks being deployed, Khronos aims to avoid stifling innovation in a fast-moving technology while still achieving the objective of reducing deployment friction. According to Khronos President Neil Trevett: “So many companies are actively developing mobile and embedded processor architectures the market is in danger of fragmenting, creating barriers for developers seeking to configure and accelerate inferencing engines across multiple platforms.”
With the related move by the OpenVX working group to provide an API to a set of standardised neural network topologies as well as, crucially, to allow the import of non-standard nets developed elsewhere into the openVX graph structure, Khronos is again smoothing the path for deployment of machine learning without restricting innovation.
This move by Khronos is very timely, with many companies looking for a viable deployment path into end-user equipment while at the same time, researchers in both academia and industry are continuing to come up with novel ideas almost on a weekly basis.
Much of the impetus for the new working group came from Adasworks, one of the frontrunners in promoting machine learning software. Laszlo Kishonti, Adasworks’ CEO, commented that: “We see the growing need for platform-independent neural network-based software solutions in the autonomous driving space. We cooperate closely with chip companies to help them build low-power, high-performance neural network hardware and believe firmly that an industry standard, which works across multiple platforms, will be beneficial for the whole market.”
It is unusual to see a standards body get ahead of the market in this fashion and it is to the credit of Khronos that they are doing it is a way that is sensitive to the needs of the technology. The new working group is only just starting up and there is no word on when a ratified standard will emerge but based on the recent activity from other Khronos groups, which has been very rapid for a body like this one, perhaps we will see something within the next year.