RobustNeuralNetworks.jl: a Package for Machine Learning and Data-Driven Control with Certified Robustness
Authors:
Preprint
Abstract
Neural networks are typically sensitive to small input perturbations, leading to unexpected or brittle behaviour. We present RobustNeuralNetworks.jl: a Julia package for neural network models that are constructed to naturally satisfy a set of user-defined robustness constraints. The package is based on the recently proposed Recurrent Equilibrium Network (REN) and Lipschitz-Bounded Deep Network (LBDN) model classes, and is designed to interface directly with Julia's most widely-used machine learning package, Flux.jl. We discuss the theory behind our model parameterization, give an overview of the package, and provide a tutorial demonstrating its use in image classification, reinforcement learning, and nonlinear state-observer design.Keywords
All Related Versions
This publication has 13 references indexed in Scilit:
- Learning Over Contracting and Lipschitz Closed-Loops for Partially-Observed Nonlinear Systems2023
- Unconstrained Parametrization of Dissipative and Contracting Neural Ordinary Differential Equations2023
- Synthesis of Stabilizing Recurrent Equilibrium Network Controllers2022
- Learning Over All Stabilizing Nonlinear Controllers for a Partially-Observed Linear SystemIEEE Control Systems Letters, 2022
- Non-Euclidean Contraction Theory for Robust Nonlinear StabilityIEEE Transactions on Automatic Control, 2022
- Sim-to-Real Learning of All Common Bipedal Gaits via Periodic Reward Composition2021
- Training Robust Neural Networks Using Lipschitz BoundsIEEE Control Systems Letters, 2021
- Deep Residual Learning for Image Recognition2016
- Modern Wiener-Hopf design of optimal controllers--Part II: The multivariable caseIEEE Transactions on Automatic Control, 1976
- An introduction to observersIEEE Transactions on Automatic Control, 1971