Deep Learning Tensorflow vs Keras vs PyTorch - Code in Python

Deep Learning Tensorflow vs Keras vs PyTorch - Code in Python


I’m going through this tutorial on matrix decompositions from and they use PyTorch in their examples. So I was curious as to what the differences were compared to other libraries I have heard of such as Keras and Tensorflow.

My Takeaways:

  • Keras is high-level API to manage experimentation of neural networks of other libraries e.g. Tensorflow
  • Tensorflow is Google’s general machine learning library that uses a “static computational graph” i.e. you define your model and then run it
  • PyTorch is a “dynamic computational graph”, where you can have any number of inputs throughout the model and the model is modular so that you can debug parts of it at a time, but only works on Linux and macOS (more on PyTorch).

Edit: Some more comparisons between PyTorch and TensorFlow.


I am taking a new AI nanodegree from udacity, and they are using PyTorch. I think there are similarities between the usage of PyTorch and other popular python libraries that makes the learning curve easier to handle.
P.S congrats on getting the top contributor’s badge.


Interesting continuation of the conversation with another blog post from someone else!

From article:


Keras may be easier to get into and experiment with standard layers, in a plug & play spirit.

PyTorch offers a lower-level approach and more flexibility for the more mathematically-inclined users.