Implementation for ICML 2024 Paper "Online Cascade Learning for Efficient Inference over Streams".
To use this project, follow these steps:
- Clone the repository:
git clone https://github.com/flitternie/online_cascade_learning.git - Install the required dependencies:
conda env create -f requirements.yml
- Prepare your dataset using Huggingface Datasets library. Preprocessed data for reproducing paper results are available here.
- Create
<dataset_name>.pyunder./data/, specifying your datapreprocessandpostprocessfunctions. Read Data Module Specification for details. - Create
.yamlconfiguration file to customize your cascade and hyperparameters. We currently support Scikit-learn classification models and Huggingface transformers sequence classification models to compose a cascade. Most common LLMs, like OpenAI GPT, Anthropic Claude, Google Gemini, Mistral, etc., are supported! Read Configuration File Specification for details. - Run online cascade learning:
python run.py --config <path_to_config>.
Contributions are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.
Active Contributors: @Flitternie @Dingz9926
@inproceedings{nie2024online,
title={Online Cascade Learning for Efficient Inference over Streams},
author={Nie, Lunyiu and Ding, Zhimin and Hu, Erdong and Jermaine, Christopher and Chaudhuri, Swarat},
booktitle={International Conference on Machine Learning},
year={2024},
organization={PMLR}
}