This an adapted implementation of AlphaGan for Zero Shot outlier detection in https://www.kaggle.com/mlg-ulb/creditcardfraud dataset using only negative samples for training
conda env create -f environment.yaml
source activate alpha
Add your comet-ml api key and project in config.py
python main.py
Example experiment https://www.comet.ml/dragosnicolae5555/c-alpha/279172963e4041e79764b6a25d18c71b
General Framework :
- Train GAN to generate only normal data points (negative samples).
- When predicting anomaly, use GAN to reconstruct the input images of both normal and abnormal images (negative and positive samples).
- Compute reconstruction and discrimination losses.
Discriminate between normal and abnormal cases using these statistics:
Reconstruction loss are the differences between original and reconstructed images.
Discrimination loss is simply the output of the Discriminator.