Best deep learning library which comes with lots of prebuilt features and visualisation tools
August 16, 2018

Best deep learning library which comes with lots of prebuilt features and visualisation tools

Gaurav Yadav | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User

Overall Satisfaction with TensorFlow

I have used TensorFlow to develop deep learning models. Recently, I have used TensorFlow to write deep neural network implementation to predict the product category(E-commerce product category) from a product image. Other than that, I have used TensorFlow many times, mostly to develop machine learning models. This is being used by one department of my organisation. In my current organisation, we have used TensorFlow to automate some tasks for an e-commerce merchant. In our case, merchants have to upload the product image and all the categories (like category, then sub-category, and then sub-sub-category), so we have developed a machine learning model using Tensorflow which will predict the product category using the product image.
  • First of all, it is fast. This machine library is faster as compared to other machine learning libraries like Theano.
  • It has lots of prebuilt tools in it for data processing, neural network layers like convolution layer, pooling layer etc. It also hase great prebuilt tools for data visualization.
  • Easy to deploy its model on GPU. We can train the model created by tensor flow on GPU.
  • It can be easily used with wrapper library like Keras which makes it easier to write a machine learning model.
  • Initially understanding this library is bit difficult. It has a steep learning curve.
  • Sometime the error messages are difficult to understand and debug. So that should be made clear such that even a beginner can solve the issue quickly.
  • Writing models with TensorFlow only is a bit difficult. So, it's easier to use this with a wrapper library like Keras.
  • It had only positive impact on our objectives as we used it. We easily achieved or goal.
  • One thing is that, it require lots of processing power while learning.
  • Along with the processing power it take lots of time to learn.
  • It produces big model output and that takes a bit of time while loading that model again.
I have used Theano to develop machine learning models, like writing the neural network. TensorFlow has reinforcement learning support and lot more algorithms while Theano does come with lots of prebuilt tools. TensorFlow provides data visualisation tools and it is possible to implement parallelism in tensorFlow. Also, using TensorFlow, we can deploy models on multiple CPUs or GPUs.
The best suited scenario is when you want to develop a deep learning model consisting of a deep neural network, like doing something around images/video, which may include convolution network. Other than this, it can also be used to develop NLP models. But if you are developing conventional machine learning, I don't think this is much required as that can be done using Python libraries like sciPy.