Reverse engineer internal parameters of black box neural networks
Run
revnets
The entry point of this command is the main function in revnets.main.main. This command will start an experiment to recover the weights of a trained neural networks. Each experiment consists of three configurable components:
- pipelines: architecture + dataset that produces target networks that will be recovered
- All possible networks are defined in revnets.pipelines
- The networks used in the experiment are configured with the option network in the config file
- reconstructions: the techniques used to recover neural network weights
- All possible techniques are defined in revnets.reconstructions
- The networks used in the experiment are configured in the init file
- evaluations: the methods used to evaluate a weight reconstruction
- All possible evaluations are defined in revnets.evaluations
- The evaluations used in the experiment are configured in the init file
Hyperparameters and other options are specified in a config file located at config.yaml
An example config file is provided at config.yaml
For all possible options, see config.py
pip install git+https://github.com/quintenroets/revnets.git
Clone the project and run
pip install -e .