DMTK vs Keras: What are the differences?
DMTK: Microsoft Distributed Machine Learning Tookit. DMTK provides a parameter server based framework for training machine learning models on big data with numbers of machines. It is currently a standard C++ library and provides a series of friendly programming interfaces; Keras: Deep Learning library for Theano and TensorFlow. Deep Learning library for Python. Convnets, recurrent neural networks, and more. Runs on TensorFlow or Theano. https://keras.io/.
DMTK and Keras can be primarily classified as "Machine Learning" tools.
Some of the features offered by DMTK are:
- DMTK Framework: a flexible framework that supports unified interface for data parallelization, hybrid data structure for big model storage, model scheduling for big model training, and automatic pipelining for high training efficiency.
- LightLDA, an extremely fast and scalable topic model algorithm, with a O(1) Gibbs sampler and an efficient distributed implementation.
- Distributed (Multisense) Word Embedding, a distributed version of (multi-sense) word embedding algorithm.
On the other hand, Keras provides the following key features:
- neural networks API
- Allows for easy and fast prototyping
- Convolutional networks support
DMTK and Keras are both open source tools. Keras with 42.5K GitHub stars and 16.2K forks on GitHub appears to be more popular than DMTK with 2.69K GitHub stars and 595 GitHub forks.