Skip to content

Black-box validation through encoded failure representation of weaknesses

License

Notifications You must be signed in to change notification settings

sisl/WeaknessRecognition.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WeaknessRecognition.jl

Adversarial Weakness Recognition for Efficient Black-Box Validation

Final project for CS230: Deep Learning (Robert Moss: mossr@cs.stanford.edu), consulting with Bernard Lange, who's taking CS330: Meta Learning.

Abstract

When validating a black-box system, exhaustively evaluating over the entire validation dataset may be computationally intractable. The challenge then becomes to intelligently automate selective validation given knowledge of the system failures experienced so far. We propose an adaptive black-box validation framework that will learn system weaknesses over time and exploit this knowledge to propose validation samples that will likely result in a failure. We use a low-dimensional encoded representation of inputs to train an adversarial failure classifier to intelligently select candidate failures to evaluate. Experiments were run to test our approach against a random candidate selection process and we also compare against full knowledge of the true system failures. We stress test a black-box neural network classifier trained on the MNIST dataset. Results show that using our framework, the adversarial failure classifier selects failures about 3 times more often than random.

Paper and Presentation

Diagram

Installation

Open julia from the root directory, go into the package mode using ] and run:

dev .

then you can run

using WeaknessRecognition

Running

Run the src/run.jl file to load the models and call the main sampled_validation_iteration loop.

About

Black-box validation through encoded failure representation of weaknesses

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published