Microsoft today announced the general availability of Cognitive Toolkit version 2.0 with some new features including Keras support, Java bindings and Spark support for model evaluation, and model compression to increase the speed to evaluating a trained model on CPUs. Microsoft Cognitive Toolkit the fastest deep learning framework in the market and it offers many advantages over other frameworks for developers. But it is only the third most popular deep learning toolkit in terms of GitHub stars, behind TensorFlow and Caffe. Microsoft is very confident about the performance and capabilties of Cognitive Toolkit, now they want to expand its reach among developers and the research community.
They often encounter people asking them why would anyone want to use CNTK instead of TensorFlow. To answer the questions, they have now posted an article pointing out reasons in favor of CNTK. 8 reasons why you should switch from TensorFlow to CNTK include:
- Speed. CNTK is in general much faster than TensorFlow, and it can be 5-10x faster on recurrent networks.
- Accuracy. CNTK can be used to train deep learning models with state-of-the-art accuracy.
- API design. CNTK has a very powerful C++ API, and it also has both low-level and easy to use high-level Python APIs that are designed with a functional programming paradigm.
- Scalability. CNTK can be easily scaled over thousands of GPUs.
- Inference. CNTK has C#/.NET/Java inference support that makes it easy to integrate CNTK evaluation into user applications.
- Extensibility. CNTK can be easily extended from Python for layers and learners.
- Built-in readers. CNTK has efficient built in data readers that also support distributed learning.
- Identical internal and external toolkit. You would not be compromised in any way because the same toolkit is used by internal product groups at Microsoft.
You can read about these 8 reasons in detail here.