Conoscere il problema aziendale
In qualità di ingegnere di machine learning presso Proseware, si collabora con molte parti interessate tecniche. Oltre a collaborare con il team di data science che ha eseguito il training di un modello di classificazione del diabete, si collabora anche con gli sviluppatori del software responsabile dell'applicazione Web (usata dai professionisti) che userà il modello.
Per adattarsi ai nuovi requisiti, l'app Web verrà aggiornata nel tempo e, in modo analogo, anche il modello dovrebbe cambiare nel tempo. Ogni volta che si verifica una deriva dei dati o una diminuzione delle prestazioni del modello, verrà chiesto al team di data science di rivedere il modello e aggiornare di conseguenza il codice.
Ogni volta che è necessario modificare il modello, il team di data science dovrà sperimentare, testare e creare un pacchetto del modello. Mentre si lavora a un modello nuovo e migliorato, il modello in produzione deve rimanere invariato per garantire un'esperienza stabile ai professionisti che lavorano con l'app Web.
In qualità di ingegnere di machine learning, si vuole configurare lo sviluppo basato sulle funzionalità per i data scientist. Usando i rami per il controllo del codice sorgente, si proteggerà il ramo principale, che contiene il codice di produzione, e si consentirà ai data scientist di sperimentare in modo sicuro nei propri rami.
Per configurare lo sviluppo basato sulle funzionalità, è necessario:
- Bloccare tutti i push diretti al ramo principale.
- Usare le richieste pull ogni volta che è necessario un aggiornamento del codice.
- Attivare controlli di qualità del codice ogni volta che viene creata una richiesta pull per verificare automaticamente il codice.
- Unire una richiesta pull solo quando le modifiche vengono approvate manualmente.