Adabot: Fault-Tolerant Java Decompiler

08/14/2019
by   Zhiming Li, et al.
0

Reverse Engineering(RE) has been a fundamental task in software engineering. However, most of the traditional Java reverse engineering tools are strictly rule defined, thus are not fault-tolerant, which pose serious problem when noise and interference were introduced into the system. In this paper, we view reverse engineering as a machine translation task and propose a fault-tolerant Java decompiler based on machine translation models. Our model is based on attention-based Neural Machine Translation (NMT) and Transformer architectures. First, we measure the translation quality on both the redundant and purified datasets. Next, we evaluate the fault-tolerance(anti-noise ability) of our framework on test sets with different unit error probability (UEP). In addition, we compare the suitability of different word segmentation algorithms for decompilation task. Experimental results demonstrate that our model is more robust and fault-tolerant compared to traditional Abstract Syntax Tree (AST) based decompilers. Specifically, in terms of BLEU-4 and Word Error Rate (WER), our performance has reached 94.50% and 2.65% on the redundant test set; 92.30% and 3.48% on the purified test set.

READ FULL TEXT
research
06/01/2021

Gender Bias Amplification During Speed-Quality Optimization in Neural Machine Translation

Is bias amplified when neural machine translation (NMT) models are optim...
research
05/10/2016

Coverage Embedding Models for Neural Machine Translation

In this paper, we enhance the attention-based neural machine translation...
research
05/08/2018

Improving Character-level Japanese-Chinese Neural Machine Translation with Radicals as an Additional Input Feature

In recent years, Neural Machine Translation (NMT) has been proven to get...
research
10/11/2022

Improving Robustness of Retrieval Augmented Translation via Shuffling of Suggestions

Several recent studies have reported dramatic performance improvements i...
research
06/01/2021

Detecting a single fault in a deterministic finite automaton

Given a deterministic finite automaton and its implementation with at mo...
research
06/25/2020

Modeling Baroque Two-Part Counterpoint with Neural Machine Translation

We propose a system for contrapuntal music generation based on a Neural ...

Please sign up or login with your details

Forgot password? Click here to reset