How should you maintain a deployed model?
One way to maintain models with fresh data is to train and deploy your models using the same process you used to build your models in the first place. As you can imagine this process can be time-consuming. How often do you retrain your models? Weekly? Daily?
On the other hand, as you are manually retraining your models you may discover a new algorithm or a different set of features that provide improved accuracy.
Another way to keep your models up-to-date is to have an automated system to continuously evaluate and retrain your models. This type of system is often referred to as continuous learning, and may look something like this:
- Save new training data as you receive it. For example, if you are receiving updated prices of houses on the market, save that information to a database.
- When you have enough new data, test its accuracy against your machine learning model.
- If you see the accuracy of your model degrading over time, use the new data, or a combination of the new data and old training data to build and deploy a new model.