Programming in Natural Language with fuSE: Synthesizing Methods from Spoken Utterances Using Deep Natural Language Understanding

Sebastian Weigelt, Vanessa Steurer, Tobias Hey, Walter F. Tichy · 2020

The key to effortless end-user programming is natural language.We examine how to teach intelligent systems new functions, expressed in natural language.As a first step, we collected 3168 samples of teaching efforts in plain English.Then we built fu SE , a novel system that translates English function descriptions into code.Our approach is three-tiered and each task is evaluated separately.We first classify whether an intent to teach new functionality is present in the utterance (accuracy: 97.7% using BERT).Then we analyze the linguistic structure and construct a semantic model (accuracy: 97.6% using a BiLSTM).Finally, we synthesize the signature of the method, map the intermediate steps (instructions in the method body) to API calls and inject control structures (F 1 : 67.0% with information retrieval and knowledge-based methods).In an end-to-end evaluation on an unseen dataset fu SE synthesized 84.6% of the method signatures and 79.2% of the API calls correctly.

Read the paper · More papers on PaperTik