Features

Below you'll find a list of some of the many new features and capabilities offered in the latest version of the Microsoft Cognitive Toolkit.

Diagram of components

Highly optimized, built-in components

  • Components can handle multi-dimensional dense or sparse data from Python, C++ or BrainScript
  • FFN, CNN, RNN/LSTM, Batch normalization, Sequence-to-Sequence with attention and more
  • Reinforcement learning, generative adversarial networks, supervised and unsupervised learning
  • Ability to add new user-defined core-components on the GPU from Python
  • Automatic hyperparameter tuning
  • Built-in readers optimized for massive datasets
A diagram of cubes with blue lines interconnecting them

Efficient resource usage

  • Parallelism with accuracy on multiple GPUs/machines via 1-bit SGD and Block Momentum
  • Memory sharing and other built-in methods to fit even the largest models in GPU memory
A drawing of spheres interconnected with lines

Easily express your own networks

  • Full APIs for defining networks, learners, readers, training and evaluation from Python, C++ and BrainScript
  • Evaluate models with Python, C++, C# and BrainScript
  • Interoperation with NumPy
  • Both high-level and low-level APIs available for ease of use and flexibility
  • Automatic shape inference based on your data
  • Fully optimized symbolic RNN loops (no unrolling needed)
The Azure logo on a sphere, which is surrounded by other spheres

Training and hosting with Azure

  • Takes advantage of high-speed resources when used with Azure GPU and Azure networks
  • Host trained models easily on Azure and add real-time training if desired