Open Source

TensorFlow, an open source software library for machine learning: The smart person's guide

TensorFlow is an open source software library developed by Google for numerical computation with data flow graphs. This TensorFlow guide covers why the library matters, how to use it, and more.

TensorFlow was originally a deep learning research project of the Google Brain Team that has since become—by way of collaboration with 50 teams at Google—a new, open source library deployed across the Google ecosystem, including Google Assistant, Google Photos, Gmail, search, and more. With TensorFlow in place, Google is able to apply deep learning across numerous areas using perceptual and language-understanding tasks.

This smart person's guide is an easy way to get up to speed on TensorFlow. We'll update this guide periodically when news and updates about TensorFlow are released.

SEE: All of TechRepublic's smart person's guides

Executive summary

  • What is TensorFlow? Google has the single greatest machine learning infrastructure in the world, and with TensorFlow, Google now has the ability to share that. TensorFlow is an open source library of tools that enable software developers to apply deep learning to their products.
  • Why does TensorFlow matter? AI has become crucial to the evolution of how users interact with services and devices. Having such a powerful set of libraries available can enable developers to include this powerful deep learning evolution to their products.
  • Who does TensorFlow affect? TensorFlow will have a lasting effect on developers and users. Since the library was made open source, it is available to all developers, which means their products can be significantly enhanced to bring a higher level of intelligence and accuracy to their products.
  • When is TensorFlow happening? TensorFlow was originally released November 9, 2015, and the stable release was made available on February 15, 2017.
  • How do I start using TensorFlow? Developers can download the source code from the TensorFlow GitHub repository. Users are already seeing its effects in the Google ecosystem.

SEE: Special report: How to implement AI and machine learning (free PDF) (TechRepublic)

What is TensorFlow?

When you have a photo of the Eiffel Tower, Google Photos can identify the image. This is possible thanks to deep learning and developments like TensorFlow. Prior to TensorFlow there was a division between the researchers of machine learning and those developing real products; that division made it challenging for developers to include deep learning in their software. With TensorFlow, that division is gone.

TensorFlow delivers a set of modules (providing for both Python and C/C++ APIs) that enable constructing and executing TensorFlow computations, which are then expressed in stateful data flow graphs. These graphs make it possible for applications like Google Photos to become incredibly accurate at recognizing locations in images based on popular landmarks.

In 2011, Google developed a product called DistBelief that worked on the positive reinforcement model. The machine would be given a picture of a cat and asked if it was a picture of a cat. If the machine guessed correctly, it was told so. An incorrect guess would lead to an adjustment so that it could better recognize the image.

TensorFlow improves on this concept by sorting through layers of data called Nodes. Diving deeper into the layers would allow for more and complex questions about an image. For example, a first-layer question might simply require the machine to recognize a round shape. In deeper layers, the machine might be asked to recognize a cat's eye. The flow process (from input, through the layers of data, to output) is called a tensor...hence the name TensorFlow.

Additional resources

Why does TensorFlow matter?

Machine learning is the secret sauce for tomorrow's innovation. Machine learning, also called deep learning, is considered a class of algorithms that:

  • use many layers of nonlinear processing units for feature extraction and transformation; and
  • are based on the learning of multiple levels of features or representations of the data; and
  • learn multiple levels of representation corresponding to different levels of abstraction.

Thanks to machine learning, software and devices continue to become smarter. With today's demanding consumers and the rise of big data, this evolution has become tantamount to the success of a developer and their product. And because TensorFlow was made open source, it means anyone can make use of this incredible leap forward brought to life by Google. In fact, TensorFlow is the first serious framework for deep learning to be made available through the Apache 2.0 license.

With developers and companies able to use the TensorFlow libraries, more and more applications and devices will become smarter, faster, and more reliable. TensorFlow will be able to sort through vast numbers of images at an unprecedented rate.

Because Google made TensorFlow open source, the libraries can be both improved upon and expanded into other languages such as Java, Lua, and R. This move brings machine learning (something heretofore only available to research institutes) to every developer, so they can teach their systems and software to recognize images or translate speech. That's big.

Additional resources

Who does TensorFlow affect?

TensorFlow not only makes it possible for developers to include the spoils of deep learning into their products, but it makes devices and software significantly more intelligent and easier to use. In our modern, mobile, and 24/7 connected world, that means everyone is affected. Software designers, developers, small businesses, enterprises, and consumers are all affected by the end result of deep learning. The fact that Google created a software library that dramatically improves deep learning is a big win for all.

Additional resources

When is TensorFlow happening?

TensorFlow was originally released on November 9, 2015. The first stable release was made available on February 15, 2017. The libraries, APIs, and development guides are available now, so developers can begin to include TensorFlow into their products. Users are already seeing the results of TensorFlow in the likes of Google Photos, Gmail, Google Search, Google Assistant, and more.

Additional resources

Competitors to TensorFlow

TensorFlow isn't alone in the deep learning field; in fact, there are a number of other companies with machine learning frameworks, including the following.

Additional resources

How do I start using TensorFlow?

The first thing any developer should do is read the TensorFlow Getting Started guide, which includes a TensorFlow Core Tutorial. If you're new to machine learning, make sure to check out the following guides:

Developers can install TensorFlow on Linux, Mac, and Windows (or even install from source), or check out their various tools from the official TensorFlow GitHub page.

Finally, developers can take advantage of all the TensorFlow guides:

Additional resources

2fnltensorflow.png
Image: Google

About Jack Wallen

Jack Wallen is an award-winning writer for TechRepublic and Linux.com. He’s an avid promoter of open source and the voice of The Android Expert. For more news about Jack Wallen, visit his website jackwallen.com.

Editor's Picks

Free Newsletters, In your Inbox