Google made an announcement Monday that will send ripples throughout the technology industry for years to come—even if it sounds like gobbledygook to the average person.
The company said in a blog post that it has built a new machine-learning system called “TensorFlow” and that it will make the software open-source, so that others can use and build on it.
That’s important for at least two reasons.
First, machine-learning algorithms are increasingly at the core of Google’s technology. I’ve written before that Google is no longer a search company—it’s a machine-learning company. What’s machine learning, you might ask? My colleague David Auerbach recently wrote a very nice column explaining the concept and its growing importance. In the simplest terms, you can think of it as software that makes inferences based on data and can learn from its mistakes.
TensorFlow is already powering nifty Google features like speech recognition in the Google app, “smart reply” in the Inbox app, and the surprisingly powerful search function in the Google Photos app. (Search for “dogs” and it will attempt to show you all the photos in your library that have dogs in them. Oh, but maybe don’t search for “gorillas.”)
It’s also built to tackle more abstract, science-fiction-y challenges. TensorFlow is the successor to Google’s vaunted research-grade machine-learning infrastructure, called DistBelief. That system was responsible for such achievements as DeepDream—the subject of another excellent Auerbach explainer—and a computer network that taught itself to identify cats on YouTube. In a post on its research blog, Google says TensorFlow is faster, more flexible, and easier to use than DistBelief. And whereas DistBelief was geared specifically toward one type of machine-learning software, called neural networks, TensorFlow is designed to accommodate different approaches.
Which brings me to the second reason the announcement is important: By making TensorFlow’s code open-source, Google is opening the door for companies and computer scientists around the world to implement cutting-edge machine-learning algorithms in their own products and research. As with many things Google does, this is at once altruistic and self-serving: It will help lots of people who are not Google, while at the same time helping to entrench Google’s approach to machine learning as an industry standard.
It’s fair to compare TensorFlow to Android, Google’s mobile operating system, which it has allowed smartphone and tablet developers to use in their own products. But a more instructive comparison might be MapReduce, the groundbreaking Google data-processing algorithm that has found an open-source implementation in Hadoop. It’s surely not a coincidence that both TensorFlow and MapReduce were developed in part by Google superprogrammer Jeff Dean. I profiled Dean in a 2013 Slate story that sought to explain how he became “the Chuck Norris of the Internet.” In short: He’s a wizard when it comes to simplifying problems of enormous complexity.
MapReduce and Hadoop helped to make “big data” a household phrase and a part of just about every Fortune 500 company’s strategy. TensorFlow could do much the same for machine learning.
Where MapReduce was about generating and processing data sets, TensorFlow is about harnessing them to build “smart” software programs that can do cool stuff. Machine learning already plays a role in applications ranging from Netflix recommendations to your Facebook feed to self-driving cars. In the years to come it will find an even broader range of applications—some ingenious, others inane. Google won't pocket a check when people use TensorFlow to build their own machine-learning software. But rest assured it will find fresh ways to profit from a world in which yet another of its core technologies has become ubiquitous.