Sintonizzati su YOLO Vision 2025!
25 settembre 2025
10:00 — 18:00 BST
Evento ibrido
Yolo Vision 2024
Glossario

Ingegneria delle feature (Feature Engineering)

Aumenta l'accuratezza del machine learning con l'feature engineering avanzato. Scopri le tecniche per creare, trasformare e selezionare feature di impatto.

L'ingegneria delle feature è il processo di utilizzo della conoscenza del dominio per selezionare, creare e trasformare i dati grezzi in feature che rappresentano meglio il problema sottostante per i modelli predittivi. È un passaggio critico e spesso dispendioso in termini di tempo nella pipeline di machine learning (ML), poiché la qualità delle feature influisce direttamente sulle prestazioni e sull'accuratezza del modello risultante. Un'ingegneria delle feature efficace può fare la differenza tra un modello mediocre e uno altamente accurato, spesso producendo guadagni di prestazioni più significativi rispetto alla scelta di un algoritmo diverso o a un'ampia ottimizzazione degli iperparametri.

## Il Processo di Feature Engineering

L'ingegneria delle feature è sia un'arte che una scienza, che fonde la competenza nel dominio con le tecniche matematiche. Il processo può essere suddiviso in diverse attività comuni, spesso gestite utilizzando librerie come il modulo di preelaborazione di scikit-learn o strumenti specializzati per l'ingegneria automatizzata delle feature.

  • Creazione di feature: Ciò comporta la creazione di nuove feature da quelle esistenti. Ad esempio, in un dataset di vendita al dettaglio, si potrebbe sottrarre una "data di acquisto" da una data "cliente da" per creare una feature "durata di fidelizzazione del cliente". Nell'analisi delle serie temporali, si potrebbero ricavare feature come medie mobili o stagionalità da un timestamp.
  • Trasformazioni: I dati grezzi spesso devono essere trasformati per soddisfare le ipotesi di un algoritmo di machine learning. Ciò include il ridimensionamento delle caratteristiche numeriche, l'applicazione di trasformazioni logaritmiche per gestire i dati distorti o l'utilizzo di tecniche come il binning per raggruppare i numeri in categorie.
  • Codifica: Molti modelli di ML non possono gestire direttamente i dati categorici. La codifica comporta la conversione di categorie basate su testo in rappresentazioni numeriche. I metodi comuni includono la codifica one-hot, in cui ogni valore di categoria viene convertito in una nuova colonna binaria, e la codifica delle etichette.
  • Selezione delle feature: Non tutte le feature sono utili. Alcune potrebbero essere ridondanti o irrilevanti, introducendo rumore che può portare a overfitting. La selezione delle feature mira a scegliere un sottoinsieme delle feature più rilevanti per migliorare le prestazioni del modello e ridurre i costi computazionali.

## Applicazioni nel Mondo Reale

L'impatto dell'feature engineering è evidente in molti settori. La sua efficacia dipende spesso da una profonda conoscenza del dominio per creare feature che catturino veramente i segnali predittivi.

  1. Credit Scoring: In finanza, i dati grezzi dei clienti possono includere reddito, età e cronologia dei prestiti. Un feature engineer potrebbe creare nuove variabili come "rapporto debito/reddito" (dividendo il debito totale per il reddito lordo) o "utilizzo del credito" (dividendo il saldo della carta di credito per il limite di credito). Queste feature ingegnerizzate forniscono un segnale molto più chiaro della salute finanziaria di una persona rispetto ai soli numeri grezzi, portando a modelli di rischio di credito più accurati.
  2. Manutenzione predittiva: Nel settore manifatturiero, i sensori sulle macchine producono enormi flussi di dati grezzi come vibrazioni, temperatura e velocità di rotazione. Per prevedere i guasti, un ingegnere potrebbe creare funzionalità come la "media mobile della temperatura nelle ultime 24 ore" o la "deviazione standard delle vibrazioni". Queste funzionalità possono rivelare sottili modelli di degrado che precedono un guasto meccanico, consentendo una manutenzione proattiva e prevenendo costosi tempi di inattività.

## Feature Engineering vs. Concetti Correlati

È importante distinguere l'ingegneria delle feature da termini correlati nell'IA e nella data science.

  • Feature Engineering vs. Estrazione di feature: Il feature engineering è un processo in gran parte manuale di creazione di nuove feature basato sull'intuizione e sull'esperienza. L'estrazione di feature è tipicamente un processo automatizzato di trasformazione dei dati in un insieme ridotto di feature. Nel deep learning, modelli come le reti neurali convoluzionali (CNN) eseguono automaticamente l'estrazione di feature, apprendendo feature gerarchiche (bordi, texture, forme) dai dati grezzi dei pixel senza intervento umano.
  • Feature Engineering vs. Embeddings: Gli embeddings sono una forma sofisticata e appresa di rappresentazione delle feature, comune nel NLP e nella computer vision. Invece di creare manualmente le feature, un modello apprende un vettore denso che cattura il significato semantico di un elemento (come una parola o un'immagine). Pertanto, gli embeddings sono il risultato dell'apprendimento automatico delle feature, non dell'engineering manuale.
  • Feature Engineering vs. Pre-elaborazione dei dati: La pre-elaborazione dei dati è una categoria più ampia che include il feature engineering come uno dei suoi passaggi chiave. Comprende anche altre attività essenziali come la pulizia dei dati (gestione dei valori mancanti e degli outlier) e la preparazione dei dataset per il training.

Sebbene le architetture moderne come quelle dei modelli Ultralytics YOLO automatizzino l'estrazione delle caratteristiche per attività basate su immagini come il rilevamento di oggetti e la segmentazione di istanze, i principi dell'ingegneria delle caratteristiche rimangono fondamentali. Comprendere come rappresentare i dati in modo efficace è fondamentale per il debug dei modelli, il miglioramento della qualità dei dati e l'affrontare problemi complessi che comportano la combinazione di dati visivi con dati strutturati. Piattaforme come Ultralytics HUB forniscono strumenti per gestire l'intero ciclo di vita, dalla preparazione del set di dati alla distribuzione del modello.

Unisciti alla community di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora
Link copiato negli appunti