Overall Satisfaction with TensorFlow
I have used TensorFlow during my college time and for some time in my professional career. Most of the time, I have used this to implement deep learning algorithms. More specifically, to build the classification algorithm and some NLP algorithms. In my company role I have used it to build a simple chatbot which can answer some question which is related to the trained document. And it is not used across the whole organisation but just by a few of us.
- Fast to implement deep learning algorithm
- Fast to train the big model, and easy to deploy on GPU as well
- Provides a lot of inbuilt functionality which helps your development move faster
- You can see dynamic graph, tensor graph, etc. which is helpful
- Long learning curve—it takes a lot of time to learn its basics
- Everything is not easy in this product. It takes a lot of time to develop algorithms, and it's difficult too.
- Helped me to develop building the chatbot.
- It takes time to learn and understand its concept of tensor and graph.
I have used Keras and MATLAB along with this. Also used Caffe and pyTorch sometimes, but all of them are not as powerful as TensorFlow. Keras is in good competition with TensorFlow but Keras won't allow you a lot of customization in your algorithms. And TensorFlow gives you the power to write and configure each and every parameter of your implementation.
If someone wants to develop or work around deep learning (artificial neural network), then it is a good choice to use. It is also useful for natural language processing. Implementing the LSTM is easy with this. Some examples of where it can be used are image classification, video classification, creating chatbots, etc.