This article from Airbnb Engineering explores the critical decisions involved in managing and retraining machine learning models in production, emphasizing that "retraining" encompasses three distinct actions: refitting, respecifying, and holding. It details the risks and trade-offs associated with each choice, particularly in systems where forecasts directly impact business decisions. The core system design takeaway is the need for a disciplined approach to model updates to maintain accuracy and stability amidst real-world data shifts and structural changes, moving beyond a simple scheduled "retrain."
Read original on Airbnb EngineeringManaging machine learning models in a production environment, especially when their outputs drive significant business decisions, is a complex system design challenge. Airbnb's experience with their forecasting models highlights that the common term "retrain" oversimplifies a crucial decision-making process that can significantly impact a system's reliability and accuracy.
The article deconstructs "retraining" into three distinct strategies, each with its own costs, benefits, and risks for a production system:
The "Retrain" Fallacy
A common mistake in production ML systems is treating "retrain" as a single, automatic action, often on a fixed schedule. This default to refitting can lead to systemic issues, such as chasing noise, carrying stale assumptions (ghosts), or overcorrecting for temporary shocks.
Airbnb developed a triage system based on understanding *what changed* in the underlying data process:
This disciplined approach ensures that architectural decisions around model updates are deliberate and aligned with the observed behavior of the system and the underlying data, preventing costly and counterproductive "fixes" that can destabilize forecasting accuracy over time.