yuji-roh / fr-train

FR-Train: A Mutual Information-Based Approach to Fair and Robust Training (ICML 2020)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FR-Train: A Mutual Information-Based Approach to Fair and Robust Training

Authors: Yuji Roh, Kangwook Lee, Steven Euijong Whang, and Changho Suh

In Proceedings of the 37th International Conference on Machine Learning (ICML), 2020

This directory is for simulating FR-Train [https://arxiv.org/abs/2002.10234, ICML 2020] on synthetic dataset. The program needs PyTorch and Jupyter Notebook.

The directory contains total 8 files: 1 README, 1 python file, 2 jupyter notebooks, and 4 data files (3 numpy files for synthetic data, 1 text file for poisoning index)

To simulate FR-Train, please use the jupyter notebooks in the directory. FRTrain_clean.ipynb and FRTrain_poisoned.ipynb contain clean mode and poisoned mode, respectively.

The jupyter notebooks will load the data and put the arranged dataset into train_model(). The variable 'y_train' contains different data depending on whether it is a clean or poisoned mode.

The train_model() will train FR-Train by using the classes in FRTrain_arch.py. After the training, train_model() will return the test accuracy and disparate impact to the caller.

The python file is FRTrain_arch.py contains the defined structures of FR-Train: generator and two discriminators (for fairness and robustness each).

The detailed explanations about each component have been written in the codes as comments. Thanks!

About

FR-Train: A Mutual Information-Based Approach to Fair and Robust Training (ICML 2020)


Languages

Language:Jupyter Notebook 94.4%Language:Python 5.6%