Glossario

Riduzione della dimensionalità

Semplifica i dati ad alta densità con le tecniche di riduzione della dimensionalità. Migliora le prestazioni, la visualizzazione e l'efficienza dei modelli ML oggi stesso!

Addestra i modelli YOLO semplicemente
con Ultralytics HUB

Per saperne di più

La riduzione della dimensionalità è un processo cruciale nell'apprendimento automatico (ML) e nell'analisi dei dati utilizzato per ridurre il numero di caratteristiche (o dimensioni) in un set di dati conservando il maggior numero possibile di informazioni significative. I dati ad alta dimensionalità, contenenti numerose caratteristiche, possono portare a problemi noti come "maledizione della dimensionalità", in cui i modelli diventano computazionalmente costosi da addestrare, richiedono più memoria, sono inclini all'overfitting e possono faticare a generalizzare bene a causa della distribuzione rada dei dati. Le tecniche di riduzione della dimensionalità mirano a mitigare questi problemi trasformando i dati in uno spazio meno dimensionale, semplificando il modello, migliorando la velocità di addestramento, migliorando le prestazioni del modello e consentendo una più facile visualizzazione dei dati.

Come funziona la riduzione della dimensionalità

Le tecniche di riduzione della dimensionalità rientrano generalmente in due categorie principali:

  1. Selezione delle caratteristiche: Questi metodi selezionano un sottoinsieme delle caratteristiche originali, scartando quelle ritenute irrilevanti o ridondanti. L'obiettivo è quello di mantenere le caratteristiche più informative senza alterarle. I metodi possono essere classificati come filtro (basato su proprietà statistiche), wrapper (basato sulle prestazioni del modello) o embedded (integrato nel processo di formazione del modello).
  2. Estrazione di caratteristiche: Questi metodi trasformano i dati originali ad alta densità in un nuovo spazio di caratteristiche a bassa densità. Invece di selezionare semplicemente le caratteristiche, creano nuove caratteristiche (spesso combinazioni di quelle originali) che catturano le informazioni essenziali. Questo è un concetto fondamentale che viene approfondito nella voce di glossario sull'estrazione delle caratteristiche.

Tecniche chiave

Diversi algoritmi sono comunemente utilizzati per la riduzione della dimensionalità:

  • Analisi delle componenti principali (PCA): Una tecnica lineare molto utilizzata per l'estrazione di caratteristiche. La PCA identifica le componenti principali - nuove caratteristiche non correlate che catturano la massima varianza dei dati originali. Proietta i dati su queste componenti, riducendo di fatto le dimensioni e preservando la maggior parte della variabilità dei dati. Spesso viene implementata utilizzando librerie come Scikit-learn.
  • t-distributed Stochastic Neighbor Embedding (t-SNE): Una tecnica non lineare utilizzata principalmente per la visualizzazione di dati ad alta densità in due o tre dimensioni. t-SNE si concentra sulla conservazione della struttura locale dei dati, mappando i punti di dati ad alta densità in punti a bassa densità in modo che i punti simili rimangano vicini. Sebbene sia eccellente per la visualizzazione, è computazionalmente intenso e meno adatto alla riduzione generale della dimensionalità prima dell'addestramento del modello rispetto alla PCA. Il sito di Laurens van der Maaten offre risorse su t-SNE.
  • Autoencoder: Un tipo di rete neurale (NN) utilizzata per l'apprendimento non supervisionato e l'estrazione di caratteristiche. Un autoencoder è composto da un codificatore che comprime i dati di ingresso in una rappresentazione latente a bassa dimensionalità (strato del collo di bottiglia) e da un decodificatore che ricostruisce i dati originali da questa rappresentazione. La rappresentazione latente compressa serve come output a dimensionalità ridotta. Spesso questi sistemi vengono realizzati utilizzando framework come PyTorch o TensorFlow.

Riduzione della dimensionalità e concetti correlati

  • Estrazione di caratteristiche: Come già detto, l'estrazione delle caratteristiche è un tipo di riduzione della dimensionalità che crea nuove caratteristiche da quelle vecchie. Tecniche come la PCA e gli autoencoder rientrano in questa categoria.
  • Ingegneria delle caratteristiche: Si tratta di un processo più ampio che prevede la creazione, la selezione e la trasformazione delle caratteristiche per migliorare le prestazioni del modello. La riduzione della dimensionalità (sia la selezione che l'estrazione) è considerata una parte dell'ingegneria delle caratteristiche. Un'ingegneria delle caratteristiche efficace richiede spesso un'esperienza di dominio.
  • Compressione dei dati: Sebbene entrambe mirino a ridurre le dimensioni dei dati, la riduzione della dimensionalità si concentra specificamente sulla conservazione delle informazioni rilevanti per le attività di ML, scartando potenzialmente alcuni dettagli ricostruttivi. La compressione dei dati standard (come i file ZIP) mira a ridurre al minimo le dimensioni di archiviazione senza perdite o con perdite accettabili per la ricostruzione, non necessariamente ottimizzando l'input del modello ML.

Applicazioni di AI e ML

La riduzione della dimensionalità è fondamentale in molte applicazioni di Intelligenza Artificiale (AI) e ML:

Vantaggi e sfide

Vantaggi:

  • Riduce i costi di calcolo e i tempi di formazione.
  • Riduce al minimo i requisiti di memoria e di archiviazione.
  • Può attenuare la maledizione della dimensionalità e ridurre l 'overfitting.
  • Migliora le prestazioni del modello eliminando il rumore e la ridondanza.
  • Consente la visualizzazione di dati complessi e altamente dimensionali.

Sfide:

  • Potenziale perdita di informazioni importanti se non applicate con cura.
  • La scelta della tecnica appropriata e del numero di dimensioni da raggiungere può essere impegnativa.
  • Le caratteristiche trasformate (nell'estrazione delle caratteristiche) a volte possono essere difficili da interpretare rispetto alle caratteristiche originali.
  • Alcune tecniche, come il t-SNE, sono computazionalmente costose.

La comprensione e l'applicazione della riduzione della dimensionalità è essenziale per gestire efficacemente insiemi di dati grandi e complessi nello sviluppo dell'intelligenza artificiale moderna.

Leggi tutto