├── LICENSE.txt ├── README.md ├── disparate_impact ├── README.md ├── adult_data_demo │ ├── demo_constraints.py │ └── prepare_adult_data.py └── synthetic_data_demo │ ├── decision_boundary_demo.py │ ├── fairness_acc_tradeoff.py │ ├── generate_synthetic_data.py │ └── img │ ├── a_cons.png │ ├── a_cons_fine.png │ ├── data.png │ ├── f_cons.png │ └── tradeoff.png ├── disparate_mistreatment ├── README.md ├── propublica_compas_data_demo │ ├── demo_constraints.py │ └── load_compas_data.py └── synthetic_data_demo │ ├── decision_boundary_demo.py │ ├── fairness_acc_tradeoff.py │ ├── generate_synthetic_data.py │ ├── img │ ├── data.png │ ├── fairness_acc_tradeoff_cons_type_1.png │ ├── syn_cons_dtype_1_cons_type_1.png │ ├── syn_cons_dtype_1_cons_type_2.png │ └── syn_cons_dtype_1_cons_type_4.png │ └── plot_syn_boundaries.py ├── fair_classification ├── funcs_disp_mist.py ├── linear_clf_pref_fairness.py ├── loss_funcs.py ├── stats_pref_fairness.py └── utils.py └── preferential_fairness ├── README.md ├── adult_data_demo ├── demo_constraints.py └── prepare_adult_data.py └── synthetic_data_demo ├── decision_boundary_demo.py ├── generate_synthetic_data.py ├── img ├── data.png ├── parity.png ├── preferred_both.png ├── preferred_impact.png └── unconstrained.png └── plot_synthetic_boundaries.py /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/README.md -------------------------------------------------------------------------------- /disparate_impact/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_impact/README.md -------------------------------------------------------------------------------- /disparate_impact/adult_data_demo/demo_constraints.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_impact/adult_data_demo/demo_constraints.py -------------------------------------------------------------------------------- /disparate_impact/adult_data_demo/prepare_adult_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_impact/adult_data_demo/prepare_adult_data.py -------------------------------------------------------------------------------- /disparate_impact/synthetic_data_demo/decision_boundary_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_impact/synthetic_data_demo/decision_boundary_demo.py -------------------------------------------------------------------------------- /disparate_impact/synthetic_data_demo/fairness_acc_tradeoff.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_impact/synthetic_data_demo/fairness_acc_tradeoff.py -------------------------------------------------------------------------------- /disparate_impact/synthetic_data_demo/generate_synthetic_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_impact/synthetic_data_demo/generate_synthetic_data.py -------------------------------------------------------------------------------- /disparate_impact/synthetic_data_demo/img/a_cons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_impact/synthetic_data_demo/img/a_cons.png -------------------------------------------------------------------------------- /disparate_impact/synthetic_data_demo/img/a_cons_fine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_impact/synthetic_data_demo/img/a_cons_fine.png -------------------------------------------------------------------------------- /disparate_impact/synthetic_data_demo/img/data.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_impact/synthetic_data_demo/img/data.png -------------------------------------------------------------------------------- /disparate_impact/synthetic_data_demo/img/f_cons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_impact/synthetic_data_demo/img/f_cons.png -------------------------------------------------------------------------------- /disparate_impact/synthetic_data_demo/img/tradeoff.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_impact/synthetic_data_demo/img/tradeoff.png -------------------------------------------------------------------------------- /disparate_mistreatment/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/README.md -------------------------------------------------------------------------------- /disparate_mistreatment/propublica_compas_data_demo/demo_constraints.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/propublica_compas_data_demo/demo_constraints.py -------------------------------------------------------------------------------- /disparate_mistreatment/propublica_compas_data_demo/load_compas_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/propublica_compas_data_demo/load_compas_data.py -------------------------------------------------------------------------------- /disparate_mistreatment/synthetic_data_demo/decision_boundary_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/synthetic_data_demo/decision_boundary_demo.py -------------------------------------------------------------------------------- /disparate_mistreatment/synthetic_data_demo/fairness_acc_tradeoff.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/synthetic_data_demo/fairness_acc_tradeoff.py -------------------------------------------------------------------------------- /disparate_mistreatment/synthetic_data_demo/generate_synthetic_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/synthetic_data_demo/generate_synthetic_data.py -------------------------------------------------------------------------------- /disparate_mistreatment/synthetic_data_demo/img/data.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/synthetic_data_demo/img/data.png -------------------------------------------------------------------------------- /disparate_mistreatment/synthetic_data_demo/img/fairness_acc_tradeoff_cons_type_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/synthetic_data_demo/img/fairness_acc_tradeoff_cons_type_1.png -------------------------------------------------------------------------------- /disparate_mistreatment/synthetic_data_demo/img/syn_cons_dtype_1_cons_type_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/synthetic_data_demo/img/syn_cons_dtype_1_cons_type_1.png -------------------------------------------------------------------------------- /disparate_mistreatment/synthetic_data_demo/img/syn_cons_dtype_1_cons_type_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/synthetic_data_demo/img/syn_cons_dtype_1_cons_type_2.png -------------------------------------------------------------------------------- /disparate_mistreatment/synthetic_data_demo/img/syn_cons_dtype_1_cons_type_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/synthetic_data_demo/img/syn_cons_dtype_1_cons_type_4.png -------------------------------------------------------------------------------- /disparate_mistreatment/synthetic_data_demo/plot_syn_boundaries.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/disparate_mistreatment/synthetic_data_demo/plot_syn_boundaries.py -------------------------------------------------------------------------------- /fair_classification/funcs_disp_mist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/fair_classification/funcs_disp_mist.py -------------------------------------------------------------------------------- /fair_classification/linear_clf_pref_fairness.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/fair_classification/linear_clf_pref_fairness.py -------------------------------------------------------------------------------- /fair_classification/loss_funcs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/fair_classification/loss_funcs.py -------------------------------------------------------------------------------- /fair_classification/stats_pref_fairness.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/fair_classification/stats_pref_fairness.py -------------------------------------------------------------------------------- /fair_classification/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/fair_classification/utils.py -------------------------------------------------------------------------------- /preferential_fairness/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/preferential_fairness/README.md -------------------------------------------------------------------------------- /preferential_fairness/adult_data_demo/demo_constraints.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/preferential_fairness/adult_data_demo/demo_constraints.py -------------------------------------------------------------------------------- /preferential_fairness/adult_data_demo/prepare_adult_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/preferential_fairness/adult_data_demo/prepare_adult_data.py -------------------------------------------------------------------------------- /preferential_fairness/synthetic_data_demo/decision_boundary_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/preferential_fairness/synthetic_data_demo/decision_boundary_demo.py -------------------------------------------------------------------------------- /preferential_fairness/synthetic_data_demo/generate_synthetic_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/preferential_fairness/synthetic_data_demo/generate_synthetic_data.py -------------------------------------------------------------------------------- /preferential_fairness/synthetic_data_demo/img/data.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/preferential_fairness/synthetic_data_demo/img/data.png -------------------------------------------------------------------------------- /preferential_fairness/synthetic_data_demo/img/parity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/preferential_fairness/synthetic_data_demo/img/parity.png -------------------------------------------------------------------------------- /preferential_fairness/synthetic_data_demo/img/preferred_both.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/preferential_fairness/synthetic_data_demo/img/preferred_both.png -------------------------------------------------------------------------------- /preferential_fairness/synthetic_data_demo/img/preferred_impact.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/preferential_fairness/synthetic_data_demo/img/preferred_impact.png -------------------------------------------------------------------------------- /preferential_fairness/synthetic_data_demo/img/unconstrained.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/preferential_fairness/synthetic_data_demo/img/unconstrained.png -------------------------------------------------------------------------------- /preferential_fairness/synthetic_data_demo/plot_synthetic_boundaries.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mbilalzafar/fair-classification/HEAD/preferential_fairness/synthetic_data_demo/plot_synthetic_boundaries.py --------------------------------------------------------------------------------