Uses the agg backend to make matplotlib threadsafe
Adds "self-healing" by returning an ROC-AUC of 0.5 to Optuna in case of an exception in the training loop. Handles if a config combination is impossible, e.g. no imputation, but using chi2. Logs the stacktrace to wandb, so should still be debuggable.
Notes for reviewers