This repository builds on the earlier open-source release How to Train Algorithm Selection Model: Insights from Black-box Continuous Optimization.
Use Python 3.10 and a CUDA-capable GPU.
python3.10 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
pip install torch==2.5.1 --index-url https://download.pytorch.org/whl/cu124If you prefer conda or mamba, create a Python 3.10 environment first, then run the same pip install commands inside that environment.
First generate the training tables:
python organize_train_data.pyThis creates train_5D.csv and train_20D.csv.
Then run training:
for dim in 5 20; do
python train_multi_network.py --dim "$dim" --network-types mlp film_affine --n-folds 5 --seeds 0 1 2 3 4 5 6 7 8 9 --cuda cuda:0
doneResults are written to results_5D/ and results_20D/. Checkpoints are written to checkpoints/.