Automated Machine Learning (AutoML)

Ti starai chiedendo se stai iniziando un nuovo progetto di machine learning (ML) se l'addestramento manuale è l'unica opzione per creare un modello di machine learning. Con all'addestramento manuale, scrivi il codice usando un framework ML per creare un modello. Durante questo processo, si sceglie quali algoritmi esplorare e ottimizzare iterativamente iperparametri per trovare il modello giusto.

Naturalmente, l'addestramento del modello non è l'unica cosa a cui bisogna pensare. Nella sulla creazione di un modello di machine learning dal prototipo alla produzione comporta attività ripetitive e competenze specialistiche. Un semplice ML esplorativo un flusso di lavoro simile al seguente:

Figura 1. Un semplice flusso di lavoro di machine learning.
Figura 1. Flusso di lavoro semplice per l'esplorazione del machine learning.

Attività ripetitive: il flusso di lavoro ML può comportare lavori ripetitivi e degli esperimenti. Ad esempio, durante lo sviluppo del modello solitamente devi esplorare diverse combinazioni di algoritmi e iperparametri per identificare il modello più appropriato. Con l'addestramento manuale, scrivi un codice specializzato addestrare il modello e quindi modificare il codice per eseguire esperimenti con ML diversi. algoritmi e iperparametri per trovare il modello migliore. Per attività di piccole dimensioni o esplorative per i progetti più grandi questo processo manuale potrebbe non essere un problema, le attività ripetitive possono richiedere molto tempo.

Competenze specializzate: lo sviluppo manuale di un modello ML richiede di machine learning. In pratica, non tutti i team che intendono sviluppare un modello di machine learning potrebbero possedere queste competenze. Se un team non dispone di un data scientist dedicato, manualmente potrebbero non essere eseguibili.

Fortunatamente, alcuni passaggi nello sviluppo del modello possono essere automatizzati per ridurre il carico di lavoro ripetitivo e la necessità di competenze specialistiche. Automatizzazione di questi è l'oggetto di questo modulo sul machine learning automatizzato (AutoML).

Che cos'è AutoML?

AutoML è un processo di automazione alcune attività in un flusso di lavoro di machine learning. Puoi pensare ad AutoML come a un insieme di strumenti e tecnologie che rendono la creazione modelli di machine learning in modo più rapido e accessibile a un gruppo più ampio di utenti. Sebbene l'automazione possa aiutare durante il flusso di lavoro ML, le attività associate ad AutoML sono quelle incluse nel ciclo di sviluppo dei modelli come mostrato nella Figura 1. Queste attività ripetitive includono:

  • Data engineering
      .
    • con il feature engineering.
    • Selezione delle caratteristiche.
  • Addestramento
      .
    • Identificare un algoritmo ML appropriato.
    • Selezione degli iperparametri migliori.
  • Analisi
      .
    • Valutazione delle metriche generate durante l'addestramento sulla base di test e di convalida dei set di dati.

Con AutoML, puoi concentrarti sul tuo problema di ML e sui dati anziché sulle caratteristiche selezione, ottimizzazione degli iperparametri e scelta dell'algoritmo giusto.