L'ingegnerizzazione delle caratteristiche () è il processo di estrazione, trasformazione, selezione e creazione di variabili (dette caratteristiche o feature) a partire dai dati grezzi, con l'obiettivo di migliorare le prestazioni e la capacità di generalizzazione di un modello di apprendimento automatico.
Mentre gli algoritmi di apprendimento ottimizzano i parametri all'interno di uno spazio vettoriale dato, il processo di feature engineering agisce sulla struttura dello stesso spazio di rappresentazione. Una rappresentazione efficace dei dati riduce l'impatto della maledizione della dimensionalità, accelera la convergenza dei metodi di ottimizzazione e consente a modelli semplici (come i modelli lineari) di approssimare relazioni complesse e non lineari.
Tipologie di trasformazioni
Codifica di variabili categoriche I dati simbolici od ordinali devono essere convertiti in rappresentazioni numeriche continue per poter essere elaborati da algoritmi di apprendimento da campioni in forma vettoriale:
codifica One-Hot (One-Hot Encoding): mappa ciascuna categoria su un vettore binario -dimensionale in cui l'unica posizione attiva corrisponde al livello assegnato:
Codifica rispetto al target (Target Encoding o Mean Encoding): sostituisce ogni valore categorico con la media stimata della variabile di risposta condizionata a tale categoria. Per prevenire il sovradattamento su categorie a frequenza molto bassa, si adotta una regolarizzazione empirica di tipo bayesiano:
dove è la media del target per la categoria , è il numero di osservazioni della categoria e è una funzione sigmoide monotonicamente crescente rispetto alla dimensione del campione.
Trasformazioni parametriche e non lineari In presenza di distribuzioni asimmetriche o con code lunghe (fat-tailed), si applicano trasformazioni funzionali atte a stabilizzare la varianza e ad approssimare una distribuzione normale:
Trasformazione logaritmica:
Trasformazione di Box-Cox: famiglia di trasformazioni, con parametro , che possono essere applicate a valori strettamente positivi ():
Trasformazione di Yeo-Johnson: estensione della Box-Cox, definita anche per valori nulli o negativi. Consente di stabilizzare la varianza e rendere la distribuzione dei dati il più possibile vicina a una distribuzione normale, gestendo simultaneamente valori positivi, nulli e negativi. La funzione della trasformazione dipendente dal parametro reale è definita a tratti:
Riscalatura e normalizzazione L'ampiezza delle scale numeriche incide direttamente sui metodi basati sull'ottimizzazione per discesa del gradiente o sul calcolo delle distanze euclidee (ad es. K-nearest neighbors, SVM):
Standardizzazione (Z-score normalization): trasforma i dati in modo da ottenere media nulla e varianza unitaria:
Min-Max Scaling: proietta i valori nell'intervallo chiuso (tipicamente ):
Generazione di caratteristiche polinomiali e d'interazione Per consentire a modelli a struttura lineare di rappresentare effetti non additivi o curvature nello spazio delle risposte, si introducono esplicitamente combinazioni moltiplicative delle variabili originarie:
Nel contesto dell'analisi delle serie storiche, si impiegano variabili ritardate (lag feature) e statistiche calcolate su finestre mobili (rolling statistics) di ampiezza :
Selezione delle caratteristiche
Un uso estensivo dell'estrazione di nuove caratteristiche comporta rischi di iper-dimensionalità e multicollinearità. Per mitigare tali rischi, si impiegano tre classi principali di metodi di selezione delle caratteristiche (feature selection) :
Metodi filter I metodi filter valutano la rilevanza delle variabili basandosi unicamente sulle proprietà statistiche intrinseche dei dati, indipendentemente dall'algoritmo di apprendimento utilizzato. Tra le metriche comunemente adottate vi è l'informazione mutua , che misura la dipendenza non lineare tra la caratteristica e la variabile target :
Metodi Wrapper I metodi wrapper impiegano un algoritmo predittivo come oracolo per valutare la qualità di diversi sottoinsiemi di caratteristiche. Tra le strategie ricorsive figura l'eliminazione ricorsiva delle caratteristiche (Recursive Feature Elimination, RFE), la quale rimuove iterativamente le variabili con peso o importanza minore stimata dall'oracolo.
Metodi Embedded I metodi embedded eseguono la selezione delle caratteristiche contestualmente alla fase di addestramento del modello. L'esempio classico è rappresentato dai modelli di regressione regolarizzati tramite una penalità in norma (Lasso):
La natura non differenziabile nell'origine della norma forza a zero i coefficienti associati alle caratteristiche meno rilevanti, realizzando un'implicita selezione delle variabili.
Deep learning e l'apprendimento delle rappresentazioni
L'avvento del apprendimento profondo ha cambiato radicalmente il ruolo della feature engineering, introducendo il paradigma dell'apprendimento automatico delle rappresentazioni (representation learning).
Apprendimento end-to-end e feature engineering manuale Nelle reti neurali profonde (come le CNN o i transformer), gli strati nascosti intermedi apprendono gerarchie di caratteristiche astratte direttamente dai dati grezzi (pixel, audio, testo), ottimizzando simultaneamente l'estrazione della rappresentazione e la decisione finale tramite retropropagazione dell'errore (end-to-end learning):
dove mappa l'input grezzo in uno spazio latente poi effettua la predizione. In tali contesti, le tecniche non automatiche di feature engineering sono state ampiamente sostituite da tecniche codificate nell'architettura di rete e da strategie di data augmentation.
Layer di embedding e dati tabulari profondi Anche nel deep learning applicato a dati strutturati o tabulari, il feature engineering mantiene un ruolo chiave. Invece di ricorrere alla codifica One-Hot (che soffre di elevata dimensionalità e sparsità), si utilizzano strati di embedding apprendibili per mappare variabili categoriali ad alta cardinalità in vettori densi nello spazio reale:
dove è la matrice di embedding ottimizzata durante l'addestramento e è il vettore indicatore della categoria . Architetture dedicate ai dati tabulari (come TabNet, FT-Transformer e modelli basati sull'attenzione) combinano questi embedding con forme automatizzate di selezione delle caratteristiche interne.
Metodi recenti e sviluppi avanzati
Feature engineering automatizzato I metodi di Automated Feature Engineering (AutoFE) integrano il feature engineering all'interno dei framework di apprendimento auto-supervisionato. Tali approcci esplorano lo spazio delle possibili trasformazioni mediante:
Ricerca basata su grafi di trasformazione: generazione sistematica di alberi di trasformazioni algebriche e statistiche (ad es. librerie come Featuretools). Apprendimento per rinforzo (RL): un agente esplora la combinazione di operazioni di trasformazione e selezione, ricevendo un premio (reward) proporzionale all'aumento delle prestazioni del modello a valle.
Modelli di Fondazione e LLM L'adozione dei modelli linguistici di grandi dimensioni (LLM) ha introdotto nuove metodologie per l'estrazione e la creazione automatizzata di caratteristiche, sia per dati non strutturati sia per dati tabulari:
Estraziome di feature semantiche mediante embedding: conversione di campi di testo o attributi descrittivi grezzi in vettori di embedding semantici estratti da transformer pre-addestrati, da concatenare ai dati tabulari tradizionali. Generazione guidata da conoscenza di dominio (LLM-driven FE): utilizzo di LLM con tecniche di prompt engineering o ricerca evolutiva per proporre (codice per la generazione di) nuove variabili matematicamente o logicamente significative, sfruttando la conoscenza del mondo codificata nel modello durante il pre-addestramento. Ingegnerizzazione del contesto per la gestione dei dati mancanti: arricchimento contestuale e imputazione intelligente di valori mancanti mediante ragionamento probabilistico guidato da prompt con pochi-esempi (few-shot prompting).
Note
Bibliografia
Voci correlate Apprendimento di rappresentazioni Apprendimento profondo Lasso Maledizione della dimensionalità Modello linguistico di grandi dimensioni
Categoria:Apprendimento automatico Categoria:Rappresentazione della conoscenza Categoria:Ingegneria della conoscenza Categoria:Statistica multivariata