visit
Deploying any Machine Learning Model to production involves certain challenges which include:
Concept Drift & Data Drift:** Concept Drift is basically when the relationship between the training variable & the target output changes, whereas data drift is the change in the distribution of the data over time. Both can lead to a decline in the model's performance.
Software Engineering Issues: When we are deploying an ML Model there are certain factors that we need to think about, for example, the latency & the throughput needed, whether to have real-time or batch predictions. How to log the results for monitoring & maintaining the security & privacy of data.
Example: In Machine Learning applications where we run the predictions in the form of batches.
Example: In Machine Learning applications where we want to forecast the business performance or growth, we can use shadow deployment to compare the predicted value from the model & actual growth.
Example: In Machine Learning applications that serve as recommendation systems like content or product. We can compare the interactions of different users with different models applied & then determine which was effective in providing recommendations.
Example: Similar to Canary Deployment, A/B Testing can also be used for recommendation systems like content or product recommendation.
Example: Real-time prediction system like fraud/anomaly detection.
| Recreate | Shadow | Canary | A/B Testing | Blue/Green |
---|---|---|---|---|---|
Leads to Downtime | Yes | No | No | No | No |
Possibility of Rollback | Yes but with downtime | No need for a rollback | Yes, fast | Yes, fast | Yes, very fast |
Testing with Production Traffic | No | Yes | Yes | Yes | No |
Extra costs of Deployment | No | Yes, for testing the new model with production data | No | No | Yes, need to maintain two separate environments |