Overview
OKAPI is a genetic programming framework that automatically evolves complete fusion schemas for deep learning ensembles. Unlike traditional approaches that only optimize weights, OKAPI evolves both the ensemble structure and model selection simultaneously using a novel stateful tree representation.
Evaluated on 12 MedMNISTv2 medical imaging datasets, OKAPI achieves competitive performance while reducing ensemble size from 30 models to just 2-5 models through multi-objective Pareto optimization.
Key Innovations
- Stateful Tree Representation: Value Nodes store intermediate predictions; Operator Nodes combine them with flexible fusion operators (mean, weighted mean, min, max, threshold-based)
- Multi-Objective Optimization: Simultaneously optimizes ROC-AUC, PR-AUC, and ensemble complexity using Pareto-based survival selection with ideal point proximity
- Automated Model Selection: Evolves which models to include and how to combine them, not just fusion weights
- Parsimony Without Penalty: Achieves competitive performance with 83-93% fewer models through evolutionary pressure
- Multiple Backends: NumPy and PyTorch implementations for flexibility
- Built-in Visualization: Tree structure rendering for evolved schemas
Installation
# Clone from GitHub
git clone https://github.com/damiankucharski/OKAPI
cd OKAPI
pip install -e .