Application of Seq2Seq Models on Code Correction
This work addresses code correction for software assurance, though it appears incremental with efficiency improvements on existing methods.
The authors tackled programming language correction using seq2seq models on Juliet Test Suite datasets, achieving 75% repair rate for C/C++ and 56% for Java. They introduced a Pyramid Encoder to improve computational and memory efficiency while maintaining similar repair rates.
We apply various seq2seq models on programming language correction tasks on Juliet Test Suite for C/C++ and Java of Software Assurance Reference Datasets(SARD), and achieve 75\%(for C/C++) and 56\%(for Java) repair rates on these tasks. We introduce Pyramid Encoder in these seq2seq models, which largely increases the computational efficiency and memory efficiency, while remain similar repair rate to their non-pyramid counterparts. We successfully carry out error type classification task on ITC benchmark examples (with only 685 code instances) using transfer learning with models pre-trained on Juliet Test Suite, pointing out a novel way of processing small programing language datasets.