https://github.com/seedatnabeel/TRIAGE
TRIAGE: Characterizing and auditing training data for improved regression (NeurIPS 2023)
https://github.com/seedatnabeel/TRIAGE
data-centric-ai data-centric-machine-learning reliable-ai trustworthy-ai trustworthy-machine-learning
Last synced: about 1 month ago
JSON representation
TRIAGE: Characterizing and auditing training data for improved regression (NeurIPS 2023)
- Host: GitHub
- URL: https://github.com/seedatnabeel/TRIAGE
- Owner: seedatnabeel
- License: apache-2.0
- Created: 2023-10-11T09:22:37.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-14T14:57:20.000Z (about 2 years ago)
- Last Synced: 2024-04-18T18:54:54.789Z (almost 2 years ago)
- Topics: data-centric-ai, data-centric-machine-learning, reliable-ai, trustworthy-ai, trustworthy-machine-learning
- Language: Jupyter Notebook
- Homepage:
- Size: 22.6 MB
- Stars: 6
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.rst
- License: LICENSE
- Authors: AUTHORS.rst
Awesome Lists containing this project
- awesome-machine-learning-interpretability - TRIAGE -  | "This repository contains the implementation of TRIAGE, a "Data-Centric AI" framework for data characterization tailored for regression.” | (Technical Resources / Open Source/Access Responsible AI Software Packages)
README
# TRIAGE: Characterizing and auditing training data for improved regression
[]()
[](https://github.com/seedatnabeel/TRIAGE/blob/main/LICENSE)

This repository contains the implementation of TRIAGE, a "Data-Centric AI" framework for data characterization tailored for regression.
TRIAGE can be used to characterize data using ***any*** machine learning regressor trained iteratively. We provide an interface for using TRIAGE, which can be used with **Pytorch models**, as well as, **SKLearn style API models** including *XGBoost, LightGBM and CatBoost*.
The utility of TRIAGE extends to a variety of use-cases.
For more details, please read our [NeurIPS 2023 paper](https://arxiv.org/): *TRIAGE: Characterizing and auditing training data for improved regression*.
---
# Installation
1. Clone the repository
2. Create a new conda environment with Python 3.8. e.g:
```shell
conda create --name triage_env python=3.8
```
3. With the venv activated, run the following command from the repository directory:
- Minimum requirements to run TRIAGE on your own data
```shell
pip install -r requirements-min.txt
```
or for all
```shell
pip install -r requirements.txt
```
4. Link the venv to the kernel:
```shell
python -m ipykernel install --user --name=triage_env
```
----
# Getting started
## TRIAGE on your own data with 2-lines of code added to your training loops!
To get started with TRIAGE on your own data, we provide tutorial notebooks to illustrate the usage of TRIAGE. Examples are provided for both Pytorch and SKLearn (XGBoost, Catboost, LightGBM) models/regressors.
These notebooks can be found in the ``/tutorials`` folder. We use an open-source dataset from OpenML as an example dataset in the tutorials for ease of accessbility.
1. ``tutorial_torch.ipynb``
- Example integration of TRIAGE with Pytorch models
2. ``tutorial_sklearn.ipynb``
- Example integration of TRIAGE with SKLearn style models trained iteratively (e.g. XGBoost, LigthGBM, CatBoost)
3. ``tutorial_torch_dataloader.ipynb``
- Example integration of TRIAGE with Pytorch models using the dataloader of Pytorch
----
# Use-cases
We highlight different use-cases of TRIAGE in notebooks which can be found in the ``/use_cases`` folder.
---
# Citing
If you use this code, please cite the associated paper:
```
@inproceedings
{seedat2023triage,
title={TRIAGE: Characterizing and auditing training data for improved regression},
author={Seedat, Nabeel and Crabbe, Jonathan and Qian, Zhaozhi and van der Schaar, Mihaela},
booktitle={Thirty-seventh Conference on Neural Information Processing Systems},
year={2023}
}
```