The team that owns the "active user" feature changes its definition, and your model's quality drops without any change on your side. What helps prevent this?
Options
- Data contracts and versioned features: agreed schemas and definitions, change notifications, and automatic validation of the incoming data (Correct option)
- Hope it does not happen again
- Retrain the model every hour
- Stop using shared features
Answer
Data contracts and versioned features: agreed schemas and definitions, change notifications, and automatic validation of the incoming data
Why
Models depend on upstream data they do not control. A change of meaning keeps the same column name and type, so a schema check alone does not see it.
A data contract states what each field means, its type, ranges and freshness, who owns it and how changes are announced. Versioning lets the model keep reading v1 until it is retrained for v2, and validation alerts when the data stops matching the contract.
Treat upstream data like an API you consume.
Remember
Treat upstream data like an API: contract, version, validate.