We used an 80%-10%-10% train-validation-test split, with the validation set used for tuning and hyperparameter optimization. All presented results on model performance are on the test set. All models were trained 10 times on the same data and different random seeds; all error bars seen in the manuscript represent ±1 standard deviation.