TrustRadius: an HG Insights company

TensorFlow Information Reviews & Insights

Score8.1 out of 10

55 Reviews and Ratings

Community insights

TrustRadius Insights for TensorFlow are summaries of user sentiment data from TrustRadius reviews and, when necessary, third party data sources.

Pros

Clear Documentation: Many users have found the documentation for multi-GPU support in TensorFlow to be simple and clear. This has been helpful for users who are new to working with multiple GPUs, as it allows them to easily understand and implement this feature.

Powerful Visualization Tools: Reviewers appreciate the ability to visualize the graph using TensorBoard, as it helps them understand and navigate through complex models. The interactive nature of TensorBoard also allows users to log events and monitor output over time, providing a convenient way to perform quick sanity checks.

Active Community Support: Users highly value the active community surrounding TensorFlow, which has helped them learn faster and overcome obstacles in their development work. The availability of readily available answers and top-notch documentation from the community has been instrumental in ensuring a smooth experience while working with TensorFlow.

TensorFlow Reviews

4 Reviews
InformationComputer Software2Internet2

Get Flowing with TensorFlow

Rating: 5 out of 10
Incentivized

Use Cases and Deployment Scope

TensorFlow is used as a development platform for deep learning algorithms, in particular for:
1. Recommendations: selecting the best templates to recommend to users via email in the various countries the company has a market in, over 100 languages supported,
2. User feedback classification: when users provide feedback, natural language processing algorithms implemented in TensorFlow and Keras are used to classify issues so that stakeholders can identify the major issues with a product/product release,
3. Learning-to-rank for search: there is some development on improving search results by switching to deep learning algorithms from a gradient boosting one, and TensorFlow provides that capability, and
4. Computer vision: some experimentation performed on object detection and image classification.

Pros

  • TensorFlow is fairly easy to use, with adequate tutorials to get any user started quickly.
  • Tooling around TensorFlow, such as TensorBoard, is a gold standard: it has made the training and debugging process so much easier compared to most other deep learning platforms.
  • Community support for TensorFlow is very good. If there is a problem, there usually is an answer by just a little Googling. Also the documentation for TensorFlow is often top notch.

Cons

  • Prior to TensorFlow 2.0, setting up data ingestion for TensorFlow can be a huge pain. So much so that TensorFlow Lite and alternatives such as Keras make it more palatable. Things are changing with TensorFlow 2.0 though.
  • Some error messages from TensorFlow can be quite difficult to understand. For instance, a recent error using the dot product layer in TensorFlow 2.0 made it seem like there was a problem with data ingestion, but by downgrading to TensorFlow 1.14.0, the problem disappears.
  • Tooling with Bazel (our choice for a build tool) in our monorepo is a bit of a nightmare, partly because Bazel has poor Python support. However, we were able to integrate PyTorch easily with Bazel, but not TensorFlow.
  • Would love to have better bindings with the JVM, rather than just Python, considering that many companies have a JVM-based stack, making it easier to integrate.

Likelihood to Recommend

TensorFlow is great for most deep learning purposes. This is especially true in two domains:
1. Computer vision: image classification, object detection and image generation via generative adversarial networks
2. Natural language processing: text classification and generation.

The good community support often means that a lot of off-the-shelf models can be used to prove a concept or test an idea quickly. That, and Google's promotion of Colab means that ideas can be shared quite freely. Training, visualizing and debugging models is very easy in TensorFlow, compared to other platforms (especially the good old Caffe days).

In terms of productionizing, it's a bit of a mixed bag. In our case, most of our feature building is performed via Apache Spark. This means having to convert Parquet (columnar optimized) files to a TensorFlow friendly format i.e., protobufs. The lack of good JVM bindings mean that our projects end up being a mix of Python and Scala. This makes it hard to reuse some of the tooling and support we wrote in Scala. This is where MXNet shines better (though its Scala API could do with more work).
Vetted Review
TensorFlow
3 years of experience

TensorFlow: The best library with optimized implementation for deep learning

Rating: 8 out of 10
Incentivized

Use Cases and Deployment Scope

TensorFlow is the best deep learning library for visualization, training and tuning the model with a large dataset. We are using TensorFlow in the research and development department for the training of natural language, image processing and for the application of specific predictive models. It is also used by the production department to support and host the trained models at the application level.

Pros

  • Detailed and more functional implementation of various algorithms.
  • Great visualization under TensorFlow board for training models.
  • Multiple GPU support and availability of TPU to train large models.
  • Regular updates.
  • Large user community.

Cons

  • Performance issues on a low scale system.
  • Complex to debug for multi GPU training of a large model.
  • It is not easy to use for new developers compared to other libraries.
  • Implementation for complex architecture is difficult.

Likelihood to Recommend

TensorFlow is well-suited for complex model training with a large dataset using multiple GPU's and provides training time mode visualization for fast debugging of the architecture. If you are doing a proof of concept for new architecture then it would not be a good choice considering implementation complexity and development time.
Vetted Review
TensorFlow
2 years of experience

Tensorflow - a feature rich & easy to use distributed open source ML framework

Rating: 10 out of 10
Incentivized

Use Cases and Deployment Scope

Tensorflow (TF) is one of the Machine Learning (ML) libraries at LinkedIn. The necessary plumbing needed to deploy, maintain and monitor a TF project is under active development. It is currently used for building Wide and Deep Neural Networks, where training data is in the order of millions. However, in production, tree-based models or logistic regression are still popular.

Pros

  • A vast library of functions for all kinds of tasks - Text, Images, Tabular, Video etc.
  • Amazing community helps developers obtain knowledge faster and get unblocked in this active development space.
  • Integration of high-level libraries like Keras and Estimators make it really simple for a beginner to get started with neural network based models.

Cons

  • Profiling the TensorFlow (TF) graph for performance optimizations is still a challenge due to lack of proper documentation.
  • In our experiments with using TF-GPU on Kubernetes, we see constant memory issues causing nodes to crash.
  • There is still a significant learning curve and it's not as simple as other popular Python libraries. Having said that, the TF team and community are actively working on this problem.

Likelihood to Recommend

  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.

A must for deep learning

Rating: 8 out of 10
Incentivized

Use Cases and Deployment Scope

We use TensorfFow to solve challenging machine learning problems at scale. TensorfFow fills in the gaps where other machine learning paradigms such as scikit learn fail. Tensorflow is used by several departments in our organization on many user facing business problems. Tensorflow provides an intuitive way to generate and train neural networks. There are also nice visualizations with TensorBoard.

Pros

  • Visualizing learning
  • Ease of use
  • Good documentation

Cons

  • Simplify distributed learning examples in the Github repo
  • Provide more tutorials on distributed training

Likelihood to Recommend

TensorFlow is a must for deep learning. If deep learning is not necessary then other machine learning packages such as scikit-learn are a more appropriate choice. We have found that TensorFlow can be very useful in performing anomaly detection on time series data. TensorFlow provides easy aAPI for generating LSTM and CNN neural networks.