CNTK – Computational Network Toolkit – Open Source, Multi-machine, Multi-GPU, Highly efficient RNN training, Speech, Image, Text


CNTK was designed for peak performance for not only CPUs but also single-GPU, multi-GPU, and multi-machine-multi-GPU scenarios. Additionally, Microsoft’s 1-bit compression technique dramatically reduced communication costs — enabling highly scalable parallel training on a large number of GPUs spanning multiple machines. CNTK is highly flexible. Arbitrary computation graphs are easy to create from a high-level description language and most training parameters are easily configurable. Popular network types like FNN, CNN, LSTM, and RNN are fully supported with state of the art parallel training performance.

CNTK is used in Many applications

Speech Recognition

Machine Translation

Image Recognition

Image Captioning

Text Processing and Relevance

Language Understanding

Language Modelling

With Microsoft Open source CNTK implementation toolkit a full suite of training algorithms (like AdaGrad, RmsProp, etc…) are built into the toolkit.

You can easily experiment with a wide range of architectures and training recipes with no long compilation cycles involved. In addition to a wide variety of built-in computation nodes, CNTK provides a plug-in architecture allowing users to define their own computation nodes. So if your workload requires special customization, CNTK makes that easy to do. Readers are also fully customizable allowing support for arbitrary input formats.

Looking for a pre-built solution?

Microsoft Cognitive Services let you build apps with powerful algorithms using just a few lines of code. They work across platforms, keep improving, are easy to set up, and have been trained by experts and CNTK.


Basic set-up

You can download pre-built CNTK binaries and get started right away.

Read more…

Advanced set-up

More advanced users can download and build the source code for the ultimate flexibility and extensibility.

Read more…

Tutorials for all levels


Read more on the CNTK Github

Get from CNTK Github or even contribute  

Get Started with CNTK