Microsoft Cognitive Toolkit
Microsoft Cognitive Toolkit (CNTK) is an open-source toolkit designed for commercial-grade distributed deep learning. However, it is important to note that CNTK is no longer actively developed. The final major release was CNTK 2.7.
Features
- CNTK describes neural networks as a series of computational steps via a directed graph.
- It allows users to easily realize and combine popular model types such as feed-forward DNNs, convolutional neural networks (CNNs), and recurrent neural networks (RNNs/LSTMs).
- It implements stochastic gradient descent (SGD, error backpropagation) learning with automatic differentiation and parallelization across multiple GPUs and servers.
- CNTK can be included as a library in your Python, C#, or C++ programs, or used as a standalone machine-learning tool through its model description language (BrainScript).
- It supports 64-bit Linux or 64-bit Windows operating systems.
- It is one of the first deep-learning toolkits to support the Open Neural Network Exchange ONNX format, an open-source shared model representation for framework interoperability and shared optimization.
Use Cases
CNTK can be used as a library in Python, C#, or C++ programs. It can also be used as a standalone machine-learning tool through its model description language, BrainScript. In addition, the CNTK model evaluation functionality can be used from Java programs.
Pricing
There is no separate license required to use the 1-bit Stochastic Gradient Descent (1-bit SGD) in CNTK; the 1-bit SGD is available under the license provided in GitHub.
Compatibility
CNTK supports 64-bit Linux or 64-bit Windows operating systems. It can be installed by choosing pre-compiled binary packages or by compiling the toolkit from the source provided in GitHub.
ONNX Support
CNTK is one of the first deep-learning toolkits to support the Open Neural Network Exchange ONNX format. The latest release of CNTK supports ONNX v1.0.