Learning a Natural Language Interface with Neural Programmer
arXiv:1611.08945
Abstract
Learning a natural language interface for database tables is a challenging task that involves deep language understanding and multi-step reasoning. The task is often approached by mapping natural language queries to logical forms or programs that provide the desired response when executed on the database. To our knowledge, this paper presents the first weakly supervised, end-to-end neural network model to induce such programs on a real-world dataset. We enhance the objective function of Neural Programmer, a neural network with built-in discrete operations, and apply it on WikiTableQuestions, a natural language question-answering dataset. The model is trained end-to-end with weak supervision of question-answer pairs, and does not require domain-specific grammars, rules, or annotations that are key elements in previous approaches to program induction. The main experimental result in this paper is that a single Neural Programmer model achieves 34.2% accuracy using only 10,000 examples with weak supervision. An ensemble of 15 models, with a trivial combination technique, achieves 37.7% accuracy, which is competitive to the current state-of-the-art accuracy of 37.1% obtained by a traditional natural language semantic parser.
Published as a conference paper at ICLR 2017
Cited by in corpus (12)
- TAPAS: Weakly Supervised Table Parsing via Pre-training
- Improving Text-to-SQL Evaluation Methodology
- TAPEX: Table Pre-training via Learning a Neural SQL Executor
- Neural Module Networks for Reasoning over Text
- Introduction to Neural Network based Approaches for Question Answering over Knowledge Graphs
- Towards a Robust Deep Neural Network in Texts: A Survey
- Simulating Action Dynamics with Neural Process Networks
- Learning Semantic Parsers from Denotations with Latent Structured Alignments and Abstract Programs
- Unsupervised Learning of KB Queries in Task-Oriented Dialogs
- Programmable Agents
- Zero-shot Text-to-SQL Learning with Auxiliary Task
- Multi-modal Synthesis of Regular Expressions