Skip to content

Augmented CycleGAN used for generating chemical compositions

License

Notifications You must be signed in to change notification settings

qai222/CompAugCycleGAN

Repository files navigation

CompAugCycleGAN

Python PyTorch CUDA cc RSC

⬇️ Download: Source code DOI:10.5281/zenodo.6227643 || Pretrained DOI:10.5281/zenodo.5721355

🕛 Latest release: 2022/02/22

TOC

Python modules

There are three submodules:

  1. cacgan.data contains classes used for processing amine-templated oxide data. atmo.csv is the csv form of ATMO dataset.
  2. cacgan.analysis are functions for analyzing ATMO composition dataset
  3. cacgan.gans is the main module for constructing Augmented CycleGAN. This is based on the Pytorch code of Augmented CycleGAN by Amjad Almahairi.

other functions include

Scripts

  • generate_dataset.py create composition datasets used for model training, by default these are two .pkl files in dataset: dataset_ab.pkl -- chemical compositions, dimset.pkl -- dimensionalities.
    • additionally, earth mover's distance matrix can be generated using the same script
  • eval_tuned.py evaluates the pretrained/tuned model which can be downloaded from DOI and placed in the tuned folder.
    • alternatively, use zenodo_get 10.5281/zenodo.5721355 in command line to download
  • hpc_pbs folder contains code for hyperparameter tuning and submission script for HPC (PBS).
  • tutorial.ipynb a notebook showing how to generate dataset and to train the augmented cycleGAN model.
  • test_emd.py unittest for sinkhorn calculator (testing results against pyemd).
  • test_layer unittest for layers used in models.

Dimensionality predictor