Keras vs. TensorFlow

Overview
ProductRatingMost Used ByProduct SummaryStarting Price
Keras
Score 7.0 out of 10
N/A
Keras is a Python deep learning libraryN/A
TensorFlow
Score 8.1 out of 10
N/A
TensorFlow is an open-source machine learning software library for numerical computation using data flow graphs. It was originally developed by Google.N/A
Pricing
KerasTensorFlow
Editions & Modules
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
KerasTensorFlow
Free Trial
NoNo
Free/Freemium Version
NoNo
Premium Consulting/Integration Services
NoNo
Entry-level Setup FeeNo setup feeNo setup fee
Additional Details
More Pricing Information
Community Pulse
KerasTensorFlow
Best Alternatives
KerasTensorFlow
Small Businesses
InterSystems IRIS
InterSystems IRIS
Score 7.7 out of 10
InterSystems IRIS
InterSystems IRIS
Score 7.7 out of 10
Medium-sized Companies
Posit
Posit
Score 10.0 out of 10
Posit
Posit
Score 10.0 out of 10
Enterprises
Posit
Posit
Score 10.0 out of 10
Posit
Posit
Score 10.0 out of 10
All AlternativesView all alternativesView all alternatives
User Ratings
KerasTensorFlow
Likelihood to Recommend
8.1
(0 ratings)
6.0
(0 ratings)
Usability
7.7
(0 ratings)
9.0
(0 ratings)
Support Rating
8.2
(0 ratings)
9.1
(0 ratings)
Implementation Rating
-
(0 ratings)
8.0
(0 ratings)
User Testimonials
KerasTensorFlow
Likelihood to Recommend
I would recommend it for use when anyone wants to quickly develop a neural network. Or if a user is solving any machine learning problem that includes deep learning. And this kind of problem will be like image recognition, face recognition, doing some text analysis using deep learning which includes LSTM or some other algorithm.
Read full review
  1. Whenever the problem has the demand for a neural networks based solution, Tensorflow (TF) is a great fit.
  2. The tf.dataset API makes it really simple to create complex data pipelines in a few lines of code.
  3. tf.estimators API abstracts all the complex computation graph creation logic making it very simple to get started.
  4. Eager execution makes it simple to develop a TF graph as debugging the code would be like any other imperative Python program.
  5. TF abstracts all the complexities of scaling it to multiple machines. It has various code and data distribution algorithms ready to use.
  6. Projects like TensorBoard make monitoring the training process really easy. It also gives the ability to view embeddings without any extra code. Their What-If is extremely useful for poking and understanding a black box model. It also has tools to visualize data to quickly check for anomalies.
  7. TF Autograph aims to covert any normal Python code into a distributed program which is quite handy to scale an existing code base.
Read full review
Pros
  • Implementing neural networks and deep learning models is easy with this.
  • Data processing is easy with Python and Keras. Keras helps a lot and has a good collection of functions to do data processing.
  • It has good integration with other devices like Android.
Read full review
  • Data pipeline implementation is quite good, loading large amounts of data and pre-process it in an efficient way is no more issue for us
  • It supports all major DL algorithms and network layouts such as ConvNets, RNN, LSTMs, Word2Vec, and even the latest transformer architecture
  • The abstraction for the device is perfectly done and its support seamlessly for multiple GPU and even TPU will bring a lot of performance gain for enterprise scoped solution while still keep the flexibility
  • The TensorBoard is amazing. I haven't seen a similar thing in other frameworks on the market. It allows us to quickly understand and debug the model with the info visualization which makes understanding much better
  • A very supportive community, which is the key for sharing the ideas and find the quick and best solutions
Read full review
Cons
  • I didn't face any issue so far.
  • The only thing, you can't modify everything in this. So it's not recommended for constructing highly optimised algorithms.
Read full review
  • It would be much better if they could provide good documentation and easy ways to understand concepts.
  • It is difficult to understand the concept behind for example, Tensor Graph, which takes a lot of time.
  • As you have to write everything, it is time consuming to write the implementation of whole neural network. It would be better if they can provide some wrapper library to make things easier.
Read full review
Usability
The reason for giving this much rating. 1. It makes my job really easy and fast. 2. Strong community support. 3. Overall cost.
Read full review
Support of multiple components and ease of development.
Read full review
Support Rating
Keras have really good support along with the strong community over the internet. So in case you stuck, It won't so hard to get out from it.
Read full review
Community support for TensorFlow is great. There's a huge community that truly loves the platform and there are many examples of development in TensorFlow. Often, when a new good technique is published, there will be a TensorFlow implementation not long after. This makes it quick to ally the latest techniques from academia straight to production-grade systems. Tooling around TensorFlow is also good. TensorBoard has been such a useful tool, I can't imagine how hard it would be to debug a deep neural network gone wrong without TensorBoard.
Read full review
Implementation Rating
No answers on this topic
Use of cloud for better execution power is recommended.
Read full review
Alternatives Considered
As Keras is the high level API, so using Keras, we don't have to be bothered by the low level TensorFlow complexity, and we can reduce a lot coding and testing efforts.
Read full review
Can't seem to choose any deep learning platform in the above, so I'll list it here: 1. Apache MXNet: this has been used for one of our main algorithms for search as an end-to-end pipeline. We chose this because of the Scala bindings, which makes it easier to integrate with out JVM backend. MXNet seems comparable to TensorFlow, although community support is not as good as TensorFlow, and there are issues with memory leaks that are being worked on. TensorFlow in general is easier to use, but MXNet isn't too far behind. 2. Keras: still a favorite. Often I use this when paired with TensorFlow. TensorFlow 2.0 will make it even easier. 3. PyTorch: only used it a little, so it's hard to provide a good opinion. 4. DL4J: used it initially in an early days project because it has good JVM support. Harder to used not because of poor API design, but because community support is lacking and features don't come out as fast as TensorFlow.
Read full review
Return on Investment
  • It helped me in learning the basic concept of deep learning by having hands-on experience.
  • It has helped us to implement our NN with very little time.
  • It doesn't give you the whole power to customize your neural network. If you want that then you have to shift to TensorFLow
Read full review
  • Positive Impact- As I mentioned before its open source. Very easy to learn for average programmer/ developer. We were able to design a POC model for understanding the patient appointment cancellation snd reasons behind it in 3 week time frame.
  • Negative Impact- If you are using tensor flow for small project it works fine. If you are trying to build a model for face recognition it will be hard to program and train the system. It needs data to be processed before hand cannot learn on the go.
Read full review
ScreenShots