Skip to main content
Article
DSM: A specification mining tool using recurrent neural network based language model
ESEC/FSE '18: Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering: November 4-9, Lake Buena Vista, FL
  • Tien-Duy B. LE, Singapore Management University
  • Lingfeng BAO, Zhejiang University
  • David LO, Singapore Management University
Publication Type
Conference Proceeding Article
Version
publishedVersion
Publication Date
11-2018
Abstract

Formal specifications are important but often unavailable. Furthermore, writing these specifications is time-consuming and requires skills from developers. In this work, we present Deep Specification Miner (DSM), an automated tool that applies deep learning to mine finite-state automaton (FSA) based specifications. DSM accepts as input a set of execution traces to train a Recurrent Neural Network Language Model (RNNLM). From the input traces, DSM creates a Prefix Tree Acceptor (PTA) and leverages the inferred RNNLM to extract many features. These features are then forwarded to clustering algorithms for merging similar automata states in the PTA for assembling a number of FSAs. Next, our tool performs a model selection heuristic to approximate F-measure of FSAs, and outputs the one with the highest estimated F-measure. Noticeably, our implementation of DSM provides several options that allows users to optimize quality of resultant FSAs. Our video demonstration on the performance of DSM is publicly available at https://goo.gl/Ju4yFS.

Keywords
  • Specification Mining,
  • Deep Learning
ISBN
9781450355735
Identifier
10.1145/3236024.3264597
Publisher
ACM
City or Country
New York
Copyright Owner and License
Publisher
Creative Commons License
Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International
Additional URL
https://doi.org/10.1145/3236024.3264597
Citation Information
Tien-Duy B. LE, Lingfeng BAO and David LO. "DSM: A specification mining tool using recurrent neural network based language model" ESEC/FSE '18: Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering: November 4-9, Lake Buena Vista, FL (2018) p. 896 - 899
Available at: http://works.bepress.com/david_lo/231/