Feature engineering

Questo documento descrive come il Feature Transform Engine esegue feature engineering. Feature Transform Engine esegue la selezione e le trasformazioni delle caratteristiche. Se la selezione delle funzionalità è abilitata, il motore di trasformazione delle caratteristiche crea un insieme classificato di caratteristiche importanti. Se le trasformazioni delle caratteristiche sono abilitate, Feature Transform Engine elabora le caratteristiche per garantire che l'input per l'addestramento e la pubblicazione del modello sia coerente. Feature Transform Engine può essere utilizzato da solo o insieme a qualsiasi flusso di lavoro di addestramento tabulare. Supporta framework TensorFlow e non TensorFlow.

Input

Devi fornire i seguenti input al motore di trasformazione delle caratteristiche:

  • Dati non elaborati (set di dati CSV o BigQuery).
  • Configurazione della suddivisione dati.
  • Configurazione della selezione delle funzionalità.
  • Configurazione della trasformazione delle caratteristiche.

Output

Feature Transform Engine genera i seguenti output:

  • dataset_stats: statistiche che descrivono il set di dati non elaborato. Ad esempio, dataset_stats fornisce il numero di righe nel set di dati.
  • feature_importance: il punteggio di importanza delle funzionalità. Questo output viene generato se la selezione delle funzionalità è abilitata.
  • materialized_data, che è la versione trasformata di un gruppo di suddivisione dati contenente la suddivisione addestramento, valutazione e test.
  • training_schema: schema dei dati di addestramento nella specifica OpenAPI, che descrive i tipi di dati di addestramento.
  • instance_schema: schema di istanza nella specifica OpenAPI, che descrive i tipi di dati dei dati di previsione.
  • transform_output: i metadati della trasformazione. Se utilizzi TensorFlow per la trasformazione, i metadati includono il grafico TensorFlow.

Passaggi di elaborazione

Procedi come descritto di seguito:

Selezione delle caratteristiche

Lo scopo principale della selezione delle caratteristiche è ridurre il numero di caratteristiche utilizzate nel modello. Il set di funzionalità ridotto dovrebbe acquisire la maggior parte delle informazioni dell'etichetta in modo più compatto. La selezione delle caratteristiche consente di ridurre i costi di addestramento e pubblicazione dei modelli senza influire notevolmente sulla qualità del modello.

Se la selezione delle caratteristiche è abilitata, Feature Transform Engine assegna un punteggio di importanza a ciascuna caratteristica. Puoi scegliere di generare i punteggi di importanza dell'insieme completo di funzionalità o di un sottoinsieme ridotto di quelle più importanti.

Vertex AI offre i seguenti algoritmi di selezione delle caratteristiche:

Tieni presente che non esiste un algoritmo di selezione delle caratteristiche che funzioni sempre meglio su tutti i set di dati e per tutti gli scopi. Se possibile, esegui tutti gli algoritmi e combina i risultati.

Informazioni reciproche rettificate (AMI)

L'AMI è un aggiustamento del punteggio di Mutual Information (MI) per tenere conto del caso. Ciò tiene conto del fatto che l'MI è generalmente più elevato per due clustering con un numero maggiore di cluster, indipendentemente dal fatto che siano effettivamente condivise più informazioni.

L'AMI è in grado di rilevare la pertinenza delle caratteristiche e dell'etichetta, ma non è sensibile alla ridondanza delle caratteristiche. L'AMI deve essere considerata se ci sono molte funzionalità (ad esempio più di 2000) e non c'è molta ridondanza. È più veloce rispetto agli altri algoritmi descritti qui, ma potrebbe rilevare caratteristiche ridondanti.

Maximizzazione condizionale delle informazioni reciproche (CMIM)

CMIM è un algoritmo greedy che sceglie le caratteristiche in modo iterativo in base a informazioni reciproche condizionali delle caratteristiche candidati rispetto alle caratteristiche selezionate. In ogni iterazione, seleziona la funzionalità che massimizza le informazioni reciproche minime con l'etichetta che non è ancora stata acquisita dalle caratteristiche selezionate.

CMIM gestisce in modo efficace la ridondanza delle funzionalità e funziona bene nei casi tipici.

Massimizzazione delle informazioni reciproche congiunte (JMIM)

JMIM è un algoritmo greedy simile a CMIM. JMIM seleziona la caratteristica che massimizza le informazioni reciproche congiunte del nuovo e delle caratteristiche preselezionate con l'etichetta, mentre CMIM prende maggiormente in considerazione la ridondanza.

JMIM è un algoritmo di selezione delle funzionalità di alta qualità.

Ridondanza minima di pertinenza massima (MRMR)

MRMR è un algoritmo greedy che funziona in modo iterativo. È simile a CMIM. Ogni iterazione sceglie la funzionalità che massimizza la pertinenza rispetto all'etichetta riducendo al minimo la ridondanza a coppie rispetto alle caratteristiche selezionate nelle iterazioni precedenti.

MRMR è un algoritmo di selezione delle caratteristiche di alta qualità.

Passaggi successivi

Dopo aver eseguito il feature engineering, puoi addestrare un modello per la classificazione o la regressione: