MLOps vs DevOps
DevOps è una metodologia di sviluppo del software basata sui principi di
Continuous Integration e
Continuous Delivery.
La sua finalità è di rendere più efficiente e veloce lo sviluppo effettuando cicli frequenti di testing, integrazione e rilascio.
Queste pratiche risultano
necessarie ma non sufficienti per lo sviluppo di un software basato su algoritmi di Machine Learning, per i seguenti motivi:
- Continuous Integration non riguarda solamente i componenti software, ma anche i dati e il modello;
- Continuous Delivery non riguarda più un solo pacchetto software o servizio, ma anche l’intera pipeline di addestramento del modello;
- un modello necessita di essere riaddestrato nel tempo.
E’ necessario, quindi, introdurre la nozione di
Continuous Training, il cui significato è di
automatizzare il
riaddestramento del modello e la
distribuzione del nuovo servizio di predizione.