TF-Coder: Program Synthesis for Tensor Manipulations

03/19/2020
by   Kensen Shi, et al.
3

The success and popularity of deep learning is on the rise, partially due to powerful deep learning frameworks such as TensorFlow and PyTorch that make it easier to develop deep learning models. However, these libraries also come with steep learning curves, since programming in these frameworks is quite different from traditional imperative programming with explicit loops and conditionals. In this work, we present a tool called TF-Coder for programming by example in TensorFlow. TF-Coder uses a bottom-up weighted enumerative search, with value-based pruning of equivalent expressions and flexible type- and value-based filtering to ensure that expressions adhere to various requirements imposed by the TensorFlow library. We also train models that predict TensorFlow operations from features of the input and output tensors and natural language descriptions of tasks, and use the models to prioritize relevant operations during the search. TF-Coder solves 63 of 70 real-world tasks within 5 minutes, often achieving superhuman performance – finding solutions that are simpler than those written by TensorFlow experts, in less time as well.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/26/2021

Swift for TensorFlow: A portable, flexible platform for deep learning

Swift for TensorFlow is a deep learning platform that scales from mobile...
research
04/03/2018

Designing a Micro-Benchmark Suite to Evaluate gRPC for TensorFlow: Early Experiences

Remote procedure call (RPC) is the backbone of many modern distributed s...
research
01/27/2019

Moving Deep Learning into Web Browser: How Far Can We Go?

Recently, several JavaScript-based deep learning frameworks have emerged...
research
08/13/2019

Exploiting Parallelism Opportunities with Deep Learning Frameworks

State-of-the-art machine learning frameworks support a wide variety of d...
research
02/22/2020

Regression with Deep Learning for Sensor Performance Optimization

Neural networks with at least two hidden layers are called deep networks...
research
04/13/2018

μ-cuDNN: Accelerating Deep Learning Frameworks with Micro-Batching

NVIDIA cuDNN is a low-level library that provides GPU kernels frequently...
research
01/11/2022

Predictive Synthesis of API-Centric Code

Today's programmers, especially data science practitioners, make heavy u...

Please sign up or login with your details

Forgot password? Click here to reset