Predictive Synthesis of API-Centric Code
Mon 13 Jun 2022 23:30 - 23:45 at Boardroom - Morning II
Today’s programmers, especially data science practitioners, make heavy use of data-processing libraries (APIs) such as PyTorch, Tensorflow, NumPy, and the like. Program synthesizers can provide significant coding assistance to this community of users; however program synthesis also can be slow due to enormous search spaces.
In this work, we examine ways in which machine learning can be used to accelerate enumerative program synthesis. We present a deeplearning-based model to predict the sequence of API functions that would be needed to go from a given input to a desired output, both being numeric vectors. Our work is based on two insights. First, it is possible to learn, based on a large number of input-output examples, to predict the likely API function needed in a given situation. Second, and importantly, it is also possible to learn to compose API functions into a sequence, given an input and the desired final output, without explicitly knowing the intermediate values.
We show that we can speed up an enumerative synthesizer by using predictions from our model variants. These speedups significantly outperform previous ways (e.g. DeepCoder) in which researchers have used ML models in enumerative synthesis.
Mon 13 JunDisplayed time zone: Pacific Time (US & Canada) change
10:30 - 12:00 | |||
10:30 45mKeynote | Improving Software Reliability using Machine Learningvirtual MAPS Baishakhi Ray Columbia University | ||
11:15 15mTalk | Productivity Assessment of Neural Code Completion MAPS Albert Ziegler GitHub, Eirini Kalliamvakou GitHub, X. Alice Li GitHub, Andrew Rice GitHub, Devon Rifkin GitHub, Shawn Simister GitHub, Ganesh Sittampalam GitHub, Eddie Aftandilian GitHub Pre-print | ||
11:30 15mTalk | Predictive Synthesis of API-Centric Code MAPS Daye Nam CMU, Carnegie Mellon University, Baishakhi Ray Columbia University, Seohyun Kim Meta, xianshan qu , Satish Chandra Facebook Pre-print | ||
11:45 15mTalk | From Perception to Programs: Regularize, Overparameterize, and Amortize MAPS |
22:30 - 00:00 | |||
22:30 45mKeynote | Improving Software Reliability using Machine Learningvirtual MAPS Baishakhi Ray Columbia University | ||
23:15 15mTalk | Productivity Assessment of Neural Code Completion MAPS Albert Ziegler GitHub, Eirini Kalliamvakou GitHub, X. Alice Li GitHub, Andrew Rice GitHub, Devon Rifkin GitHub, Shawn Simister GitHub, Ganesh Sittampalam GitHub, Eddie Aftandilian GitHub Pre-print | ||
23:30 15mTalk | Predictive Synthesis of API-Centric Code MAPS Daye Nam CMU, Carnegie Mellon University, Baishakhi Ray Columbia University, Seohyun Kim Meta, xianshan qu , Satish Chandra Facebook Pre-print | ||
23:45 15mTalk | From Perception to Programs: Regularize, Overparameterize, and Amortize MAPS |