Da Jr Data Scientist/Machine learning a Data Scientist/Machine Learning Engineer Expert

Pubblicato: 2020-12-07

Da Jr Data Scientist/Apprendimento automatico a Data Scientist/Ingegnere di apprendimento automatico full-stack

L'attuale prospettiva nel campo della scienza dei dati è cambiata in modo significativo rispetto a tre o anche due anni fa. La curva di apprendimento non dovrebbe mai finire. Quindi, per prosperare, è necessario sviluppare il giusto set di competenze per soddisfare le attuali aspettative del settore.

"L'adattabilità riguarda la potente differenza tra adattarsi per far fronte e adattarsi per vincere". — Max McKeown.

Diamo un'occhiata agli elementi chiave che possono aiutarci a passare da Jr Data Scientist / Machine learning a Full stack Data Scientist / Machine learning.

Sommario

L'aspettativa passata

È fondamentale comprendere la responsabilità passata per adattarsi alle attuali aspettative del settore. Quindi, in poche parole, il ruolo quotidiano di un Data Scientist in passato generalmente prevedeva:

  • Lo spazio dell'IA era ancora relativamente nuovo (sebbene non negli accademici) e molte aziende e startup ne stavano analizzando l'applicazione e il caso d'uso valido.
  • La ricerca era l'obiettivo principale. L'avvertenza qui era che questa ricerca molte volte non era direttamente in linea con il nucleo dell'organizzazione. Quindi inizialmente non ci si aspettava così tanta credibilità.
  • In genere, le aziende univano i ruoli di un Data Scientist con un Data Analyst o un Data Engineer. Ancora una volta, a causa della vaghezza dell'applicazione aziendale AI.
  • Gli individui avevano anche una specie di dilemma simile. Molte delle loro ricerche o del loro lavoro non erano direttamente in linea, praticamente non praticabili per essere serviti come prodotto.

La prospettiva attuale

La democratizzazione dell'IA ha visto notevoli sviluppi da parte di aziende e startup. Proviamo a capirlo,

  • Il settore ora distingue il ruolo di Data Scientist, Machine Learning Engineer, Data Analyst, Data Engineer e persino MLops engineer.
  • Le aziende non consentono più la ricerca in natura, poiché sanno esattamente quale caso d'uso stanno attingendo. Sono inoltre necessari una mentalità chiara e un approccio discreto simile da parte di un individuo.
  • Ogni Ricerca o POC deve avere un prodotto tangibile e fruibile.

Leggi anche: Carriera nell'apprendimento automatico

La dissezione approfondita di tutti i Ruoli

Se dobbiamo scegliere un'area in cui le aziende hanno eccelso nello spazio dell'IA, è senza dubbio la chiara aspettativa da tutte le varietà dei ruoli, che sono in poche parole:

  1. Data Scientist: un Data Scientist è una persona che (generalmente con un background di statistiche/matematica) utilizza una varietà di mezzi, inclusa l'IA, per estrarre informazioni preziose dai dati.
    • Una differenza fondamentale tra Data Analyst e Data Scientist è: il primo generalmente si basa sulla conoscenza del dominio e sui metodi manuali della vecchia scuola per dare un senso ai dati su scala piccola e media, mentre il secondo è responsabile della raccolta, dell'analisi e dell'interpretazione dei dati su scala più ampia utilizzando strumenti più ampi come AI, SQL, metodi manuali della vecchia scuola, ecc.,
    • La conoscenza del dominio non è un must, ma avere è utile.
    • Il compito principale è mantenere ed estrarre informazioni utili per il business dai dati e non sviluppare il software o il prodotto.
    • Uno statistico o un matematico possono diventare un buon Data Scientist.

2. Machine Learning Engineer: un ingegnere del software di nicchia che sviluppa un prodotto o servizio basato sull'IA.

    • Un ingegnere ML deve possedere tutta l'esperienza dell'ingegneria del software tradizionale insieme alla conoscenza dell'IA perché alla fine costruirà software con l'IA al centro.
    • Il compito principale non è estrarre i dati ma sviluppare uno strumento di intelligenza artificiale in grado di eseguire lo stesso lavoro.
    • Uno sviluppatore con una buona conoscenza dell'apprendimento automatico/deep learning e dell'ingegneria del software può diventare un buon ingegnere dell'apprendimento automatico.

3. Machine Learning Operation Engineer: un ingegnere software di nicchia che mantiene e automatizza la pipeline utilizzata dal sistema ML.

    • Campo relativamente nuovo ispirato a DevOps. Sebbene diverso dai ruoli DevOps tradizionali.
    • A differenza dell'ingegneria del software tradizionale, lo sviluppo di qualsiasi prodotto/software/servizio basato sull'IA non si ferma al completamento della costruzione del software. Deve essere aggiornato regolarmente con nuovi dati, ovvero 'Data-Drift'.
    • Il lavoro principale include tutto il lavoro DevOps tradizionale, nonché la manutenzione/automazione della pipeline e la deriva dei dati
    • Uno sviluppatore con una buona conoscenza di machine learning/deep learning, ingegneria del software e tecnologie cloud può diventare un buon ingegnere MlOps.

Per un nuovo cercatore o qualcuno che mira ad avanzare nella sua carriera, tutti questi ruoli e aspettative devono essere ben compresi. Dato che le aziende stanno distinguendo chiaramente questo ruolo, si prevede che ciò varrà anche per gli individui. La mentalità vaga è totalmente inutile.

Lo stack di un sistema di Machine Learning a stack completo

Passiamo ora al punto essenziale. Per diventare un Full stack Machine Learning Engineer, è necessario comprendere il concetto alla base dello stack.

Cos'è lo stack completo?

  • Simile all'ingegneria del software tradizionale, anche lo sviluppo di un sistema basato sull'intelligenza artificiale richiede una suite di strumenti. Questa suite completa può essere definita Full Stack.
  • L'intero stack viene in genere creato utilizzando tre elementi costitutivi, la tecnologia Cloud, la tecnologia Governance e la tecnologia AI.
  • Ci sono più componenti per costruire un sistema di intelligenza artificiale attraverso i tre elementi costitutivi. L'elenco include Configurazione, Trasformazione e verifica della raccolta dati, Codice ML (formazione e convalida), Strumenti di gestione delle risorse (processi e macchine), Infrastruttura di servizio, Monitoraggio (può essere associato a Data Drift). Questo elenco non è esaustivo, ma è certamente generico e può essere modificato secondo necessità.
  • Quindi, per aderire al sistema ML ben performante, dobbiamo utilizzare la pila di strumenti per coprire tutti i componenti sopra menzionati, a volte anche più di uno per una singola parte.

Qual è l'importanza della capacità di progettare un sistema Full stack?

Pic Credit: debito tecnico nascosto nella carta dei sistemi di apprendimento automatico

  • Come accennato in precedenza, le aziende di oggi non consentono la ricerca/POC senza una tangibile sostenibilità del prodotto.
  • Non esagero se dico che la formazione del modello non è la parte più importante, anzi la classificherò terza o addirittura quarta. La persona che può progettare e mantenere lo stack diventa vitale per l'Azienda, perché,
    • Se la stessa persona che sta per addestrare un modello mantiene anche una pipeline di dati (o contribuisce), allora può progettarla per soddisfare le esigenze esatte.
    • Comprendere l'infrastruttura di distribuzione aiuterà a creare un ambiente più incentrato sulle prestazioni.
    • Comprendere Servire infra aiuterà nella parte di velocità e latenza (che è generalmente il grido più alto per qualsiasi sistema ML).
    • Comprendere il monitoraggio aiuterà con Data Drift e nelle prestazioni del modello a lungo termine.
    • Quindi, un individuo che conosce tutto questo può rendere l'intera pipeline più efficiente e aumentare le prestazioni. Ma soprattutto, consente di risparmiare sui costi per l'azienda poiché ora una singola persona può gestire più ruoli, aumentando così a sua volta il valore dell'individuo per l'azienda.

Quindi, per riassumere, è essenziale non essere solo ossessionato dall'accuratezza del modello, ma ossessionato da tutte le metriche chiave delle prestazioni: velocità, latenza, precisione, esigenze interne, richieste di servizio, ecc.

Leggi anche: Idee per progetti di apprendimento automatico

Panoramica di come funziona un sistema full stack

Panoramica del ciclo di vita del sistema Ideal ML

Credito foto: Microsoft MLOps

Una pipeline ML ideale deve seguire i seguenti concetti:

  1. Governo:
    • Versione del codice del progetto
    • Versione dei dati
    • Versionamento del modello
    • Documentazione
  2. Negozio di artefatti universale per archiviare risorse con versione
  3. Progetto di pipeline generico:
    • Politica comune di scoperta + sperimentazione
    • Monitoraggio degli esperimenti (come alcune metriche, risultati, prestazioni)
    • Una strategia comune per interconnettere i componenti del gasdotto
    • Pubblica i risultati
  4. Un meccanismo per riprodurre, ricreare, portare facilmente
  5. Supporto per CI/CD
  6. Infra sufficienti per supportare lo sviluppo e la produzione
  7. Facile adattamento per la produzione e gli endpoint
  8. Scalabile Servire infra per soddisfare le richieste sempre crescenti

Panoramica della pipeline

  1. Una configurazione di impostazione una tantum con lo stack
  2. Versione Dataset con DVC.
  3. Esperimento di tracciamento Stratocaster con MLflow/Wandb.
  4. Registra risultati, metriche e così via con MLflow/Wandb in Universal Artifact Store (archiviazione BLOB di Azure come back-end).
  5. Log Model (o qualsiasi risorsa correlata) come asset con versione con MLflow/Wandb su Universal Artifact Store.
  6. Pacchetto di singoli componenti con Docker.
  7. Archivia i componenti del pacchetto con il repository Docker desiderato
  8. Il packaging e la pubblicazione devono essere eseguiti utilizzando il CI/CD.
  9. Pianificazione dell'addestramento automatizzato del modello basato sul monitoraggio continuo per Data Drift.

Ottieni la certificazione di data science dalle migliori università del mondo. Impara i programmi Executive PG, Advanced Certificate Program o Master per accelerare la tua carriera.

Conclusione

Per rimanere un giocatore di squadra rilevante, pieno di risorse e chiave, è necessario aumentare la nostra tenda della conoscenza. Aiuterà senza dubbio a progredire in qualsiasi ambiente competitivo.

Se sei interessato a saperne di più sull'apprendimento automatico, dai un'occhiata al Diploma PG di IIIT-B e upGrad in Machine Learning e AI, progettato per i professionisti che lavorano e offre oltre 450 ore di formazione rigorosa, oltre 30 casi di studio e incarichi, IIIT- B Status di Alumni, oltre 5 progetti pratici pratici e assistenza sul lavoro con le migliori aziende.

Pianifica ora la tua carriera nella scienza dei dati.

Richiedi il programma di certificazione professionale in Data Science da IIM-Kozhikode