Yahoo supercharges TensorFlow with Apache Spark

Yahoo, model Apache Spark citizen and developer of CaffeOnSpark, which made it easier for developers building deep learning models in Caffe to scale with parallel processing, is open sourcing a new project called TensorFlowOnSpark. The pairing of Spark and TensorFlow should make the deep learning framework more attractive to developers who are creating models that need to run on large computing clusters.

For those that zoned out during the big-data boom, Apache Spark is an open source framework designed to increase the efficiency of parallel computing. Following in the steps of tools like Hadoop, Spark made it possible for companies like Netflix to process huge amounts of user data to offer up recommendations at scale.

Machine learning frameworks like Google’s TensorFlow and Caffe help people create deep learning models without the rigorous skill-set of a machine learning specialist. The open source libraries exist at a higher level of abstraction that enable developers to create models without getting lost in the weeds reinventing the wheel.

Naturally, Spark and machine learning go hand-in-hand. Deep learning in particular leans heavily on large amounts of compute as a crutch. Yahoo created CaffeOnSpark for its own use. But mixing Caffe and Spark only benefited a portion of the machine learning community. TensorFlow remains the most popular framework, so Yahoo decided to bring the same pairing to it and hopefully pick up some developer respect along the way.

Yahoo explored existing tools like SparkNet and TensorFrame to bridge the gap between TensorFlow and Spark, but ultimately decided that they could do better. The result is a tool that enables developers to quickly modify their existing TensorFlow programs to work with TensorFlowOnSpark.

Deep learning frameworks are a strangely tribal thing among developers. Skymind’s Deeplearning4j is an open source framework written for Java with Spark integrations,  but the library ultimately falls in sixth place for popularity. MXNet on the other hand is known for its ability to scale across a multitude of GPUs. It’s just that ability that drew the favor of Amazon and ultimately helped MXNet become part of the Apache incubator.

Though TensorFlowOnSpark has been open sourced, Yahoo has plans to continue to make improvements to the tool. If you’re interested in testing it out, you can get everything on the Yahoo GitHub.