Automazione

Sviluppare modelli di Machine Learning per la produzione

Sinan Ozdemir

Data Scientist, Entrepreneur, and Author

Introduzione all’automazione ML

  • L’automazione garantisce affidabilità ed efficienza delle pipeline ML
  • Riduce il rischio di errore umano
  • Snellisce sviluppo e deployment
  • I quattro principi MLOps sono:
    • Continuous Integration (CI)
    • Continuous Deployment (CD)
    • Continuous Training (CT)
    • Continuous Monitoring (CM)
Sviluppare modelli di Machine Learning per la produzione

Quattro principi dell’automazione

Continuous Integration (CI) Integrare regolarmente le modifiche in un repository condiviso coding

Continuous Delivery (CD) Build, test e deploy automatici delle modifiche al codice package

Continuous Training (CT) Addestrare e aggiornare continuamente il modello con nuovi dati

brain

Continuous Monitoring (CM) Monitorare in modo continuo prestazioni e accuratezza del modello monitor

Sviluppare modelli di Machine Learning per la produzione

Continuous integration e delivery

Continuous Integration (CI)

  • Garantisce che il codice sia sempre funzionante
  • Riduce il rischio di errore umano
  • Intercetta i problemi presto

Continuous Delivery (CD)

  • Deployment rapido e coerente dei modelli
  • Riduce il time-to-production
  • Riduce il rischio di errore umano

Strumenti CI/CD: Git, AWS CodePipeline, Jenkins, Travis CI

jenkins

Sviluppare modelli di Machine Learning per la produzione

Addestramento e monitoraggio continui

Continuous Training (CT)

  • Mantiene il modello accurato e aggiornato
  • Riduce il rischio di degrado del modello
  • Riduce i tempi di ri-addestramento

Continuous Monitoring (CM)

  • Riduce il rischio di degrado del modello
  • Migliora l’accuratezza complessiva
  • Fornisce metriche ML coerenti e affidabili
  • Individua i problemi in anticipo

monitor

Sviluppare modelli di Machine Learning per la produzione

Esempio di automazione ML su larga scala

  1. CI: Il codice del modello viene effettuato commit su Git.

  2. CD: Il codice viene buildato e testato con un tool CI/CD come Jenkins. Se passa, si distribuisce.

    • Il modello è serializzato.
    • Le dipendenze sono definite con Docker.
    • L’immagine Docker è distribuita.
  3. CM: Le prestazioni del modello sono monitorate continuamente.

    • Il monitoraggio guida le decisioni sul modello.
    • Strumenti CM: Prometheus e Grafana
  4. CT: Il modello è addestrato su nuovi dati.

  5. Si scrive nuovo codice / si aggiornano i modelli... ritorno al punto 1

Sviluppare modelli di Machine Learning per la produzione

Passons à la pratique !

Sviluppare modelli di Machine Learning per la produzione

Preparing Video For Download...