Condividi tramite


Progettazione e gestione delle funzionalità

Questa pagina illustra la progettazione delle funzionalità e le funzionalità di gestione per le aree di lavoro abilitate per Unity Catalog. Se l’area di lavoro non è abilitata per il catalogo Unity, consultare Archivio delle funzionalità dell’area di lavoro (legacy).

Perché usare Databricks come archivio funzionalità?

Con Databricks Data Intelligence Platform, l’intero flusso di lavoro di training del modello viene eseguito su una singola piattaforma:

  • Pipeline di dati che inseriscono dati non elaborati, creano tabelle delle funzionalità, eseguono il training di modelli ed eseguono l’inferenza batch. Quando si esegue il training e si registra un modello usando la progettazione delle funzionalità in Unity Catalog, il modello viene incluso in un pacchetto con i metadati delle funzionalità. Quando si usa il modello per l’assegnazione di punteggi batch o l’inferenza online, recupera automaticamente i valori delle funzionalità. Il chiamante non deve conoscerli o includere la logica per cercare o aggiungere funzionalità per assegnare un punteggio ai nuovi dati.
  • Modellare e gestire gli endpoint disponibili con un solo clic e che forniscono millisecondi di latenza.
  • Monitoraggio di dati e modelli.

Inoltre, la piattaforma fornisce quanto segue:

  • Individuazione delle funzionalità. È possibile esplorare e cercare le funzionalità nell’interfaccia utente di Databricks.
  • Governance. Le tabelle delle funzionalità, le funzioni e i modelli sono tutti regolati dal catalogo Unity. Quando si esegue il training di un modello, eredita le autorizzazioni dai dati su cui è stato eseguito il training.
  • Derivazione. Quando si crea una tabella delle funzionalità in Azure Databricks, le fonti dei dati usate per creare la tabella delle funzionalità vengono salvate e sono accessibili. Per ogni funzionalità di una tabella delle funzionalità, è anche possibile accedere ai modelli, ai notebook, ai processi e agli endpoint che usano suddetta funzionalità.
  • Accesso tra aree di lavoro. Le tabelle, le funzioni e i modelli di funzionalità sono automaticamente disponibili in qualsiasi area di lavoro che abbia accesso al catalogo.

Requisiti

  • L’area di lavoro deve avere il catalogo Unity abilitato.
  • La progettazione delle funzionalità in Unity Catalog richiede Databricks Runtime 13.3 LTS o versione successiva.

Se l’area di lavoro non soddisfa questi requisiti, consultare la sezione Archivio funzionalità dell’area di lavoro (legacy) per informazioni su come usare l'archivio funzionalità dell'area di lavoro.

Come funziona la progettazione delle funzionalità in Databricks?

Il tipico flusso di lavoro di Machine Learning che usa la progettazione di funzionalità in Databricks segue questo percorso:

  1. Scrivere codice per convertire i dati non elaborati in funzionalità e creare un dataframe Spark contenente le funzionalità desiderate.
  2. Creare una tabella Delta nel catalogo unity. Qualsiasi tabella Delta con una chiave primaria è automaticamente una tabella delle funzionalità.
  3. Eseguire il training e registrare un modello usando la tabella delle funzionalità. Quando si esegue questa operazione, il modello archivia le specifiche delle funzionalità usate per il training. Quando il modello viene usato per l’inferenza, unisce automaticamente le funzionalità dalle tabelle delle funzionalità appropriate.
  4. Registrare il modello nel Model Registry.

È quindi possibile usare il modello per fare previsioni sui nuovi dati. Per i casi d’utilizzo batch, il modello recupera automaticamente le funzionalità necessarie da Feature Store.

Flusso di lavoro di Feature Store per i casi d’utilizzo di Machine Learning in batch.

Per i casi d’utilizzo in tempo reale, pubblicare le funzionalità in una tabella online. Sono supportati anche negozi online di terze parti. Consultare Archivi online di terze parti.

In fase di inferenza, il modello legge le funzionalità pre-calcolate dall’archivio online e le aggiunge ai dati forniti nella richiesta client all’endpoint di gestione del modello.

Flusso di lavoro del Feature Store per i modelli di machine learning serviti.

Iniziare a usare la progettazione delle funzionalità: notebook di esempio

Per iniziare, provare questi notebook di esempio. Il notebook di base illustra come creare una tabella delle funzionalità, usarla per eseguire il training di un modello e quindi eseguire l’assegnazione dei punteggi batch usando la ricerca automatica delle funzionalità. Presenta anche l’interfaccia utente di “Progettazione Funzionalità” e mostra come usarlo per cercare funzionalità e comprendere come vengono create e usate le funzionalità.

Notebook di esempio di progettazione delle funzionalità di base nel catalogo Unity

Ottenere il notebook

Il notebook di esempio sui taxi illustra il processo di creazione di funzionalità, l'aggiornamento e l'uso di tali funzionalità per il training del modello e l'inferenza batch.

Notebook di esempio di progettazione delle funzionalità in taxi del catalogo Unity

Ottenere il notebook

Tipi di dati supportati

La progettazione delle funzionalità in Unity Catalog e l’archivio delle funzionalità dell’area di lavoro supportano i tipi di dati PySpark seguenti:

  • IntegerType
  • FloatType
  • BooleanType
  • StringType
  • DoubleType
  • LongType
  • TimestampType
  • DateType
  • ShortType
  • ArrayType
  • BinaryType [1]
  • DecimalType [1]
  • MapType [1]
  • StructType[2]

[1] BinaryType, DecimalTypee MapType sono supportati in tutte le versioni di Progettazione funzionalità in Unity Catalog e nell’area di lavoro Feature Store v0.3.5 o versione successiva. [2] StructType è supportato in Feature Engineering v0.6.0 o versione successiva.

I tipi di dati elencati in precedenza supportano tipi di funzionalità comuni nelle applicazioni di Machine Learning. Ad esempio:

  • È possibile archiviare vettori densi, tensori e incorporamenti come ArrayType.
  • È possibile archiviare vettori, tensori e incorporamenti di tipo sparse come MapType.
  • È possibile archiviare il testo come StringType.

Quando vengono pubblicate negli archivi online e ArrayType MapType le funzionalità vengono archiviate in formato JSON.

L’interfaccia utente di Feature Store visualizza i metadati sui tipi di dati delle funzionalità:

Esempio di tipi di dati complessi

Ulteriori informazioni

Per altre informazioni sulle procedure consigliate, scaricare la Guida completa agli store di funzionalità.