Microsoft has launched version 2.0 of what is now called the Microsoft Cognitive Toolkit. This open-source toolkit, which was previously known as CNTK, is Microsoft’s competitor to similar tools like TensorFlow, Caffe and Torch, and, while the first version was able to challenge many of its competitors in terms of speed, this second version puts an emphasis on usability (by adding support for Python and the popular Keras neural networking library, for example) and future extensibility, while still maintaining — and improving — its speed.
The toolkit originally launched into beta in October 2016 and the team has tested it ever since. Now, the company deems it to be ready for production use.
Microsoft technical fellow Xuedong Huang told me that the 1.0 release was very much about open sourcing Microsoft’s internal toolkit and making it available to others. Because it was essentially an internal tool, though, it didn’t support Python for example, even though it’s by far the most popular language among machine learning developers.
Because Microsoft originally built this toolkit for speech recognition systems, it was very good at working with time series data for building recurrent neural nets. With this update, the team has not only improved the Cognitive Toolkit’s performance for other kinds of neural nets, but also laid the groundwork for making it easier to extend the system in the long run.
That’s where Keras comes in, for example. Huang stressed that the first version of the Cognitive Toolkit outperformed its competitors pretty easily on a number of standard tests. Keras is a popular Phython-based deep-learning library that’s already supported by TensorFlow and Theano, for example. Now that the Cognitive Toolkit also supports it, thanks to its new extensible architecture, developers can not only easily take their existing Keras-based applications to the Cognitive Toolkit but also see a major speed-up. Huang argues that under the right circumstances, the Cognitive Toolkit can outperform its competitors by up to 3x.
In addition, version 2.0 also includes Java language bindings for model evaluation and a number of new tools that allow trained models to run on relatively low-powered devices, including smartphones.
Read the source article at TechCrunch.