Requirements can be found in requirements.in
and installed via pip install -r requirements.in
.
After installation, a MlFlow server must be started prior to any training.
This can be done via mlflow server
in a separate terminal.
Without further configuration, one can run python src/__main__.py
which will run a classical/classical GAN model.
Configuaration and training of other models can be made via command line arguments of configuration files located in config/
.
Regarding the configuration values, the order of importance is as follows:
- Command line arguments
- Config values of a file provided via
overwrite_config
(e.g.cc_gan.yaml
) - Default values from
default.yaml
If a required argument is neither found in any of the files nor provided via command line, an error will be raised.
Once the training has started, the all configuration parameters, the model and the training history are being recorded using MlFlow. The url to navigate to the currently running experiment will be stated at the command line.
config
:default.yaml
: All parameters that are required/ shared among the different modelscc_gan.yaml
: Parameters for the classical/classical approachcq_gan.yaml
: Parameters for the classical/quantum approachqc_gan.yaml
: Parameters for the quantum/classical approachqq_gan.yaml
: Parameters for the quantum/quantum approach
src
: Actual source code for training etc.main.py
: Main entry point to start training of the GANdataset.py
: Class to setup the dataset structureclassical_generator.py
: Classical generator modelquantum_generator.py
: Quantum generator modelclassical_noise_source.py
: Classical noise source modelquantum_noise_source.py
: Quantum noise source model
doc
: Diagrams and documentationnotebooks
: Tests and random experiments