Deep learning models are now used in many important applications, including transport, finance, supply chains, communications, and space systems. However, these models can behave unpredictably when their inputs change slightly, which raises concerns about whether they can be trusted in safety- or security-critical settings.
This project will investigate practical techniques for testing and verifying the robustness of neural networks. Robustness means that small changes to an input should not cause unexpected or significantly different outputs. The project will explore how fuzz testing, abstract interpretation, and optimisation-based verification can be used to find incorrect behaviours, generate counterexamples, and provide stronger guarantees about model behaviour.
The work will build on ACT, an open-source framework for neural network analysis developed by the SVF research team. Depending on the student's interests, the project may involve implementing new analysis techniques, extending ACT to support additional neural network layers or properties, designing new fuzzing strategies, or evaluating existing methods on standard neural network benchmarks.
This project is suitable for students interested in software analysis, machine learning, testing, or formal verification. It provides an opportunity to work with a research prototype, conduct experiments, and contribute to an active open-source research project.
Computer Science and Engineering
Software testing and analysis
No
- Research environment
- Expected outcomes
- Supervisory team
- Reference material/links
Based on the ACT open-source tool.
Analysing and verifying modern AI models.
ACT SVF tool on GitHub