Building and training neural networks are no longer just for seasoned computer scientist and grad students. That change began with the release of a number of open-source machine learning frameworks like Theano, Spark ML, Microsoft’s CNTK, and the Google’s TensorFlow. One that stands out is TensorFlow for its powerful, yet handy, functionality, conjoined with the impressive gain of its user base. With the release of TensorFlow 1.0, Google has driven the frontiers of machine learning further in a number of directions.
In the production to making TensorFlow a more-general machine learning structure, Google has added both built-in Estimator functionality, and support for a number of more conventional machine learning algorithms including K-means, SVM (Support Vector Machines), and Random Forest. While there are surely other groundworks like SparkML that support those tools, having a solution that can combine them with neural networks makes TensorFlow a great option for hybrid problems. TensorFlow 1.0 also offers amazing performance improvements and scaling. In one measure, a training session running on a 64-processor machine ran nearly 60 times as fast as one running on a single processor.
One of the many impressive new potentials of Google TensorFlow is that its models can be run on many smartphones. TF1.0 even takes the convenience of the Hexagon DSP that is built into Qualcomm’s Snapdragon 820 CPU. Google is already using this to function applications like Translate and Word Lens even when your phone is completely offline. Before now, Sophisticated methods like those required for translation or speech perception required real-time access to the cloud and its compute servers.
As powerful as TensorFlow is, composing a complicated model directly in its API takes quite a bit of knowledge, and some precise programming. The Keras programming interface provides a more user-friendly layer on top of TensorFlow (and Theano) that make engineering high-end networks cleverly simple. Keras also includes a number of pre-trained models for easy instantiation. Given the intensive nature of assembling the large datasets needed to train models, and the processor-intensive nature of training, it helps creates a major benefit for developers.
Google TensorFlow 1.0 is now ready to download. Currently, Keras is a separate package that is easy to install using pip or your preferred package manager, but Google aims to have it built-in to the 1.2 release of TensorFlow. There are many adjustments but Google is even providing a helpful script that will try to update any existing codes, if needed. Which is typical of machine learning tools, you will get a better performance running on a support GPU, but now there are even options to spin your models up in the cloud. For example, Y combinator-backed startup