Deep Representation One-class Classification (DROC).
This is not an officially supported Google product.
Tensorflow 2 implementation of the paper: Learning and Evaluating Representations for Deep One-class Classification published at ICLR 2021 as a conference paper by Kihyuk Sohn, Chun-Liang Li, Jinsung Yoon, Minho Jin, and Tomas Pfister.
This directory contains a two-stage framework for deep one-class classification example, which includes the self-supervised deep representation learning from one-class data, and a classifier using generative or discriminative models.
requirements.txt includes all the dependencies for this project, and an example of install and run the project is given in run.sh.
script/prepare_data.sh includes an instruction how to prepare data for CatVsDog and CelebA datasets. For CatVsDog dataset, the data needs to be downloaded manually. Please uncomment line 2 to set
DATA_DIR to download datasets before starting it.
The options for the experiments are specified thru the command line arguments. The detailed explanation can be found in
train_and_eval_loop.py. Scripts for running experiments can be found
Contrastive learning with distribution augmentation:
train_and_eval_loop.py, the evaluation results can be found in
MODEL_DIR is specified as model_dir of