Searching for More Efficient Dynamic Programs
Not on the map. Why?
Abstract (arXiv)
Computational models of human language often involve combinatorial problems. For instance, a probabilistic parser may marginalize over exponentially many trees to make predictions. Algorithms for such problems often employ dynamic programming and are not always unique. Finding one with optimal asymptotic runtime can be unintuitive, time-consuming, and error-prone. Our work aims to automate this laborious process. Given an initial correct declarative program, we search for a sequence of semantics-preserving transformations to improve its running time as much as possible. To this end, we describe a set of program transformations, a simple metric for assessing the efficiency of a transformed program, and a heuristic search procedure to improve this metric. We show that in practice, automated search -- like the mental search performed by human programmers -- can find substantial improvements to the initial program. Empirically, we show that many common speed-ups described in the NLP literature could have been discovered automatically by our system.
Key facts. Cited by 1 paper in the map (data through 14 Oct 2026). Builds on 17 of its 90 references that are in the map. First posted on arXiv 14 Sep 2021.
Builds on
17 of 90 references.
References · 17
- 2020Stanza: A Python Natural Language Processing Toolkit for Many Human Languagescited by 723
- 2016Deep Biaffine Attention for Neural Dependency Parsingcited by 334
- 2021Monte Carlo Tree Search: A Review of Recent Modifications and Applicationscited by 161
- 2017Structured Attention Networkscited by 95
- 2017A Minimal Span-Based Neural Constituency Parsercited by 59
- 2018A General Framework for Multi-fidelity Bayesian Optimization with Gaussian Processescited by 52
- 2020Torch-Struct: Deep Structured Prediction Librarycited by 40
- 2020Best-First Beam Searchcited by 40
- 2019Exact Hard Monotonic Attention for Character-Level Transductioncited by 22
- 2018Neural Architecture Search using Deep Neural Networks and Monte Carlo Tree Searchcited by 18
- 2018Hard Non-Monotonic Attention for Character-Level Transductioncited by 12
- 2019Towards modular and programmable architecture searchcited by 11
5 more
- 2015Neural CRF Parsingcited by 10
- 2016Global Neural CCG Parsing with Optimality Guaranteescited by 6
- 2017On the Complexity of CCG Parsingcited by 3
- 2020A Machine Learning guided Rewriting Approach for ASP Logic Programscited by 3
- 2018Linear-Time Constituency Parsing with RNNs and Dynamic Programmingcited by 2
Built on by
Citing papers per year: 2022: 1.
1 paper.