Hybrid Deep Neural Networks to Infer State Models of Black-Box Systems

08/26/2020
by   Mohammad Jafar Mashhadi, et al.
20

Inferring behavior model of a running software system is quite useful for several automated software engineering tasks, such as program comprehension, anomaly detection, and testing. Most existing dynamic model inference techniques are white-box, i.e., they require source code to be instrumented to get run-time traces. However, in many systems, instrumenting the entire source code is not possible (e.g., when using black-box third-party libraries) or might be very costly. Unfortunately, most black-box techniques that detect states over time are either univariate, or make assumptions on the data distribution, or have limited power for learning over a long period of past behavior. To overcome the above issues, in this paper, we propose a hybrid deep neural network that accepts as input a set of time series, one per input/output signal of the system, and applies a set of convolutional and recurrent layers to learn the non-linear correlations between signals and the patterns, over time. We have applied our approach on a real UAV auto-pilot solution from our industry partner with half a million lines of C code. We ran 888 random recent system-level test cases and inferred states, over time. Our comparison with several traditional time series change point detection techniques showed that our approach improves their performance by up to 102 state change points, measured by F1 score. We also showed that our state classification algorithm provides on average 90.45 traditional classification algorithms by up to 17

READ FULL TEXT
research
01/13/2021

Behavioral Model Inference of Black-box Software using Deep Neural Networks

Many software engineering tasks, such as testing, and anomaly detection ...
research
01/10/2023

Learning nonlinear hybrid automata from input–output time-series data

Learning an automaton that approximates the behavior of a black-box syst...
research
09/13/2022

White-Box and Black-Box Fuzzing for GraphQL APIs

The Graph Query Language (GraphQL) is a powerful language for APIs manip...
research
07/04/2023

Prototypes as Explanation for Time Series Anomaly Detection

Detecting abnormal patterns that deviate from a certain regular repeatin...
research
02/23/2020

Stealing Black-Box Functionality Using The Deep Neural Tree Architecture

This paper makes a substantial step towards cloning the functionality of...
research
06/15/2021

Code Integrity Attestation for PLCs using Black Box Neural Network Predictions

Cyber-physical systems (CPSs) are widespread in critical domains, and si...
research
04/05/2021

Automated Performance Testing Based on Active Deep Learning

Generating tests that can reveal performance issues in large and complex...

Please sign up or login with your details

Forgot password? Click here to reset