SchlossLab/mikropml

Report live updates of metrics during training

Closed this issue · 1 comments

From openjournals/joss-reviews#3073 (comment):

When testing preprocess_data() and run_ml() on a larger dataset with 1917 rows × 14426 columns, it would take an indeterminately long time. It should have a progress bar indicating the iteration #, and the estimated duration for each iteration, similar to Python's tqdm. Additionally, it can also provide live updates of the loss and other metrics as the model is being trained, to help the user stop the run if it is not satisfactory.

And openjournals/joss-reviews#3073 (comment):

I agree with @JonnyTran 's suggestion to display time to completion estimates and relevant metrics (e.g. loss or chosen metrics for current iteration) during training. The average user will find this helpful. This would also be the case when parallelizing run_ml() execution.

I looked at the documentation for caret::train, which is the function we use to train the model. Unfortunately I don't see an option to display updates on relevant metrics as the model is being trained :( So not sure there's a way for us to easily implement this.

https://rdrr.io/cran/caret/man/train.html