Cos'è l'ingegneria delle funzionalità?

Le funzionalità del modello sono gli input che i modelli di machine learning (ML) utilizzano durante l'addestramento e l'inferenza per effettuare previsioni. L'accuratezza di un modello di ML si basa su un set e una composizione di funzionalità precisi. Ad esempio, in un'applicazione di ML che suggerisce una playlist musicale, le funzionalità possono includere le valutazioni dei brani, le canzoni ascoltate in precedenza e il tempo di ascolto di ciascuna di esse. La creazione di funzionalità può richiedere uno sforzo ingegneristico significativo. L'ingegneria delle funzionalità implica l'estrazione e la trasformazione di variabili dai dati grezzi, come listini prezzi, descrizioni dei prodotti e volumi di vendita, in modo da poter utilizzare le funzionalità per l'addestramento e la previsione. I passaggi necessari per progettare le funzionalità includono l'estrazione e la pulizia dei dati e quindi la creazione e l'archiviazione delle funzionalità.  

Quali sono le sfide dell'ingegneria delle funzionalità?

L'ingegneria delle funzionalità rappresenta una sfida perché implica una combinazione di analisi dei dati, conoscenza del dominio aziendale e una certa dose di intuizione. Nella creazione di funzionalità, si è tentati di ricorrere immediatamente ai dati disponibili, eppure spesso si dovrebbe iniziare a considerare quali dati sono necessari parlando con esperti, con brainstorming e ricerche presso terze parti. Senza questo esercizio, potrebbero sfuggire importanti variabili predittive.

Estrazione di dati

La raccolta dei dati è il processo di assemblaggio di tutti i dati necessari per il ML. La raccolta dati può essere noiosa, dal momento che i dati provengono da più origini di dati, inclusi laptop, data warehouse, cloud, applicazioni e dispositivi. Trovare modi per connettersi a diverse origini di dati può essere difficile. I volumi di dati stanno inoltre crescendo esponenzialmente, così che vi sono molti dati da ricercare. Inoltre, i dati hanno formati e tipologie ampiamente differenti in base all'origine. Per esempio, dati video e dati tabulari non sono semplici da utilizzare insieme.

Creazione di funzionalità

L'etichettatura dei dati è il processo di identificazione dei dati grezzi (immagini, file di testo, video, ecc.) e l'aggiunta di una o più etichette significative e informative per fornire contesto, in modo che un modello di ML possa imparare da esso. Ad esempio, le etichette potrebbero indicare se una foto contiene un uccello o un'auto, quali parole sono state pronunciate in una registrazione audio o se una radiografia contiene un'irregolarità. L'etichettatura dei dati può essere utilizzata per vari casi d'uso, tra cui visione artificiale, elaborazione del linguaggio naturale e riconoscimento vocale.

Archiviazione delle funzionalità

Dopo che i dati sono stati ripuliti ed etichettati, i team di ML spesso li esplorano per assicurarsi che siano corretti e pronti per il ML. Le visualizzazioni come istogrammi, diagrammi a dispersione, diagrammi a scatola e baffi, grafici a linee e grafici a barre sono tutti strumenti utili a confermare la correttezza dei dati. Inoltre, le visualizzazioni aiutano i team di data science a completare l'analisi esplorativa dei dati. Questo processo utilizza le visualizzazioni per scoprire pattern, evidenziare anomalie, provare un'ipotesi o verificare delle supposizioni. L'analisi esplorativa dei dati non richiede modellazione formale; invece, i team di data science possono utilizzare le visualizzazioni per decifrare i dati. 

In che modo AWS può aiutare con l'ingegneria delle funzionalità?

Con Amazon SageMaker Data Wrangler è possibile semplificare il processo di ingegneria delle funzionalità utilizzando un'unica interfaccia visiva. Utilizzando lo strumento di selezione dei dati di SageMaker Data Wrangler, è possibile scegliere i dati grezzi desiderati da diverse origini dei dati e importarli con un solo clic. SageMaker Data Wrangler contiene oltre 300 trasformazioni dei dati incorporate in modo da poter normalizzare, trasformare e combinare rapidamente le funzionalità senza dover scrivere codice. Una volta che i dati sono stati preparati, è possibile creare flussi di lavoro di ML completamente automatizzati con le Pipeline Amazon SageMaker e salvare i dati per riutilizzarli in Amazon SageMaker Feature Store. SageMaker Feature Store è un repository dedicato che consente di archiviare le funzionalità e di accedervi, semplificando la denominazione, l'organizzazione e il riutilizzo delle stesse da parte di team diversi. SageMaker Feature Store fornisce un archivio unificato per le funzionalità durante le fasi di addestramento e inferenza in tempo reale, senza la necessità di scrivere codice aggiuntivo o di creare procedure manuali per assicurare la coerenza delle funzionalità.

Fasi successive per l'ingegneria delle funzionalità con AWS

Registrati per creare un account gratuito

Ottieni accesso istantaneo al Piano gratuito di AWS.

Registrati 
Inizia subito nella console

Inizia subito a creare con il machine learning nella Console di gestione AWS.

Accedi