Microsoft Cognitive Toolkit
The Microsoft Cognitive Toolkit is a powerful open source framework for training and using deep learning networks that work with big data. It was previously called and widely known as Computational Network Toolkit (CNTK) that was developed by Microsoft Research. This tool is a deep learning framework that is ready for production use in companies. The framework enables to create and use a Feed Forward Networks (FNN), Convolutional Neural Network (CNN), Recurrent Neural Network (RNN) including Long-Short Term Memory (LSTM) networks. In addition batch normalization, sequence-to-sequence with attention, generative adversarial networks are supported. The tool enables supervised and unsupervised learning tasks. Further features also include automatic hyperparameter tuning that is very useful for model selection.
The framework can be used with several languages such as Python, C#, and C++ and supports the platforms 64-bit Windows and 64-bit Linux. The framework is interoperable with the NumPy library. An interesting concept of the Microsoft Cognitive Toolkit is the so-called model library that consists of a wide variety of different code samples and tutorials across many datasets including images, numeric, speech and text. The high-level and the low-level APIs are both really easy to use and offers much flexibility to users.
The important feature for parallelization is given by using CPUs and GPUs across multiple machines. Given it is a Microsoft deep learning framework it works seamlessly with the Azure Cloud services including Azure GPUs. In other words the use of Azure cloud services in order to train and use deep learning networks is quite straightforward and offers training of networks in real-time. The framework can be downloaded for free at the official Web page that can be found here. The sourcecode is available via Github here.
Microsoft Cognitive Toolkit Details
The following video provides more details about this topic: