Deep Symbolic Superoptimization Without Human Knowledge

Deep symbolic superoptimization refers to the task of applying deep learning methods to simplify symbolic expressions. Existing approaches either perform supervised training on human-constructed datasets that defines equivalent expression pairs, or apply reinforcement learning with human-defined equivalent trans-formation actions. In short, almost all existing methods rely on human knowledge to define equivalence, which suffers from large labeling cost and learning bias, because it is almost impossible to define and comprehensive equivalent set. We thus propose HISS, a reinforcement learning framework for symbolic super-optimization that keeps human outside the loop. HISS introduces a tree-LSTM encoder-decoder network with attention to ensure tractable learning. Our experiments show that HISS can discover more simplification rules than existing human-dependent methods, and can learn meaningful embeddings for symbolic expressions, which are indicative of equivalence.

[1]  Dawn Xiaodong Song,et al.  Tree-to-tree Neural Networks for Program Translation , 2018, NeurIPS.

[2]  Wang Ling,et al.  Latent Predictor Networks for Code Generation , 2016, ACL.

[3]  Tommi S. Jaakkola,et al.  Tree-structured decoding with doubly-recurrent neural networks , 2016, ICLR.

[4]  Matthew J. Hausknecht,et al.  Leveraging Grammar and Reinforcement Learning for Neural Program Synthesis , 2018, ICLR.

[5]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[6]  Abhinav Jangda,et al.  Unbounded superoptimization , 2017, Onward!.

[7]  Geoffrey E. Hinton,et al.  Visualizing Data using t-SNE , 2008 .

[8]  Robert Keller,et al.  Program Language Translation Using a Grammar-Driven Tree-to-Tree Model , 2018, ArXiv.

[9]  Sebastian Buchwald Optgen: A Generator for Local Optimizations , 2015, CC.

[10]  Christopher D. Manning,et al.  Improved Semantic Representations From Tree-Structured Long Short-Term Memory Networks , 2015, ACL.

[11]  David K. Smith,et al.  Dynamic Programming and Optimal Control. Volume 1 , 1996 .

[12]  Yoshua Bengio,et al.  Neural Machine Translation by Jointly Learning to Align and Translate , 2014, ICLR.

[13]  Csaba Szepesvári,et al.  Bandit Based Monte-Carlo Planning , 2006, ECML.

[14]  Kaile Su,et al.  Learning of Human-like Algebraic Reasoning Using Deep Feedforward Neural Networks , 2017, Biologically Inspired Cognitive Architectures.

[15]  Anima Anandkumar,et al.  Combining Symbolic Expressions and Black-box Function Evaluations in Neural Programs , 2018, ICLR.

[16]  Alexander Aiken,et al.  Stochastic superoptimization , 2012, ASPLOS '13.

[17]  Alexander Aiken,et al.  TASO: optimizing deep learning computation with automatic generation of graph substitutions , 2019, SOSP.

[18]  Wojciech Zaremba,et al.  Learning to Execute , 2014, ArXiv.

[19]  Ronald J. Williams,et al.  Simple Statistical Gradient-Following Algorithms for Connectionist Reinforcement Learning , 2004, Machine Learning.

[20]  Ickjai Lee,et al.  End-to-end trajectory transportation mode classification using Bi-LSTM recurrent neural network , 2017, 2017 12th International Conference on Intelligent Systems and Knowledge Engineering (ISKE).

[21]  Richard Socher,et al.  Seq2SQL: Generating Structured Queries from Natural Language using Reinforcement Learning , 2018, ArXiv.

[22]  Frédo Durand,et al.  Halide: a language and compiler for optimizing parallelism, locality, and recomputation in image processing pipelines , 2013, PLDI 2013.

[23]  Lihong Li,et al.  Neuro-Symbolic Program Synthesis , 2016, ICLR.