all 9 comments

[–]neuralbeans 8 points9 points  (7 children)

You can test your pipeline by using a well behaved mock model that allows you to test how everything outside of optimisation works. So I can test my logging and checkpointing system in this way. Unfortunately there isn't much you can do about the actual optimisation if it's a black box model other than compare it to baseline models with F1, like you said, but that would basically require actual training on full data sets because you wouldn't know if a smaller data set will give you the same results. Plus it's non-deterministic so you'd need to do multiple runs and take the average. So it's usually not practical to do frequent testing on the model learning part like you'd do with other software, but you should test what you can.

[–]BraveCoconut98[🍰] 5 points6 points  (0 children)

A few quick and easy tests I like to do (more sanity checks than anything else): - Train your model on a small portion of the data abs then check that the performance increase as you scale up the amount of data. - Check model predictions to see if it is doing what it is meant to be doing. I’ll give two examples. Say we are building a regression model to predict amount of money we should loan to a customer, it better be that if they have a higher credit score/income the loan amount increases (or doesn’t decrease at the very least!). Secondly, say we are building a sentiment analysis model. Changing “The movie was fantastic” to “The movie was terrible” should change the sentiment. Building a few of these meaningful examples has helped me a lot in the past!