Home
topics
PCA
Data di pubblicazione: 8 dicembre 2023
L'analisi delle componenti principali (PCA) riduce il numero di dimensioni in grandi set di dati a componenti principali che conservano la maggior parte delle informazioni originali. Ciò avviene trasformando le variabili potenzialmente correlate in un insieme più piccolo di variabili, denominate componenti principali.
La PCA, il cui sviluppo è attribuito a Karl Pearson, ha guadagnato popolarità grazie alla maggiore disponibilità di computer, che ha consentito calcoli statistici multivariati1 su larga scala. La PCA è molto efficace per visualizzare ed esplorare set di dati ad alta dimensionalità, o dati con molte caratteristiche, in quanto può identificare facilmente tendenze, modelli o outlier.
La PCA è comunemente utilizzata per la pre-elaborazione dei dati da utilizzare con algoritmi di machine learning. È in grado di estrarre le caratteristiche più informative da set di dati di grandi dimensioni, preservando le informazioni più rilevanti dal set di dati iniziale. Questo riduce la complessità del modello, poiché l'aggiunta di ogni nuova caratteristica influisce negativamente sulle sue prestazioni, un fenomeno comunemente noto come "la maledizione della dimensionalità". Proiettando un set di dati ad alta dimensionalità in uno spazio di caratteristiche più piccolo, la PCA riduce al minimo, o elimina del tutto, problemi comuni come la multicollinearità e l'overfitting. La multicollinearità si verifica quando due o più variabili indipendenti sono altamente correlate tra loro, il che può essere problematico per la modellazione causale. I modelli overfit si generalizzeranno male ai nuovi dati, diminuendone del tutto il valore. La PCA è un approccio comunemente utilizzato nell'analisi di regressione, ma è anche impiegato per una varietà di casi d'uso, come il riconoscimento dei modelli, l'elaborazione dei segnali, l'elaborazione delle immagini e altro.
Sebbene ci siano altre varianti della PCA, come la regressione delle componenti principali e la PCA kernel, questo articolo si concentrerà sul metodo principale presente nella letteratura attuale.
La PCA è una tecnica di riduzione delle dimensioni come l'analisi discriminante lineare (LDA). A differenza della LDA, la PCA non si limita alle attività di apprendimento supervisionato. Per le attività di apprendimento non supervisionato, ciò significa che la PCA può ridurre le dimensioni senza dover considerare le etichette di classe o le categorie. La PCA è anche strettamente correlata all'analisi fattoriale. Entrambe riducono il numero di dimensioni o variabili in un set di dati, minimizzando la perdita di informazioni. La PCA scompone le variabili in un sottoinsieme di componenti principali linearmente indipendenti. L'analisi fattoriale, tuttavia, è generalmente utilizzata per comprendere le strutture sottostanti dei dati, concentrandosi su variabili latenti o fattori non misurati, che catturano la dispersione di una variabile.
La PCA e il k-means clustering sono entrambe tecniche di machine learning non supervisionato utilizzate per l'analisi dei dati, ma hanno obiettivi e metodi diversi. La PCA viene utilizzata per ridurre la dimensionalità dei dati, mentre il k-means clustering raggruppa i punti dati in base alla similarità. La tecnica selezionata dipende dal set di dati specifico e dagli obiettivi dell'analisi.
La PCA crea nuove variabili, come le componenti principali, che sono combinazioni lineari delle variabili originali. La PCA prende come input un set di dati con più variabili e produce un set di dati in un sottospazio inferiore, ovvero un set di dati ridotto con meno variabili. Viene spesso utilizzata nell'analisi esplorativa dei dati per la creazione di modelli predittivi, ma viene anche utilizzata nella pre-elaborazione dei dati per la riduzione della dimensionalità.
K-means è un algoritmo di clustering che assegna punti dati ai cluster in base alla loro distanza dai centri del cluster. Prende come input un set di dati con più variabili e produce un set di dati e produce un set di cluster con punti dati simili. Viene spesso utilizzato per raggruppare i dati per una varietà di casi d'uso, come la segmentazione delle immagini, la segmentazione dei clienti e il rilevamento delle anomalie.
Leggi perché IBM è stata nominata leader nel report IDC MarketScape: Worldwide AI Governance Platforms 2023.
La PCA riassume il contenuto informativo di grandi set di dati in un insieme più piccolo di variabili non correlate, note come componenti principali. Queste componenti principali sono combinazioni lineari delle variabili originali che hanno la massima varianza rispetto ad altre combinazioni lineari. Queste componenti catturano quante più informazioni possibili dal set di dati originale.
Questa tecnica statistica coinvolge sia l'algebra lineare sia le operazioni sulle matrici e trasforma il set di dati originale in un nuovo sistema di coordinate strutturato in base alle componenti principali. Gli autovettori e gli autovalori della matrice di covarianza che sostengono le componenti principali consentono l'analisi di queste trasformazioni lineari.
Immagina di aver mappato un set di dati con più caratteristiche, ottenendo un grafico a dispersione multidimensionale. Gli autovettori forniscono la direzione della varianza nel grafico a dispersione. Gli autovalori sono i coefficienti degli autovettori; essi denotano l'importanza di questi dati direzionali. Pertanto, un autovalore elevato indica che l'autovettore corrispondente è più critico. Poiché le componenti principali rappresentano le direzioni della massima varianza nei dati, sono anche gli autovettori della matrice di covarianza.
Nella PCA vengono calcolate due componenti principali: la prima componente principale (PC1) e la seconda componente principale (PC2).
La prima componente principale (PC1) è la direzione nello spazio lungo la quale i punti dati presentano la varianza più alta o maggiore. È la linea che rappresenta meglio la forma dei punti proiettati. Maggiore è la variabilità catturata nella prima componente, maggiore è l'informazione conservata dal set di dati originale. Nessun'altra componente principale può avere una variabilità superiore.
Calcoliamo la seconda componente principale (PC2) allo stesso modo della PC1. La PC2 rappresenta la varianza più elevata successiva nel set di dati e non deve essere correlata con la PC1. Ciò significa che PC2 deve essere ortogonale, cioè perpendicolare, a PC1. Questa relazione può essere espressa anche come correlazione tra PC1 e PC2 uguale a zero.
In genere, viene utilizzato un grafico a dispersione per mostrare la relazione tra PC1 e PC2 quando si applica la PCA a un set di dati. Gli assi PC1 e PC2 saranno perpendicolari l'uno all'altro.
Se ci sono componenti successive, queste manterranno le stesse proprietà, in quanto non saranno correlate con altre componenti e spiegheranno qualsiasi variazione residua.
Scopri come ridurre la dimensionalità di un set di dati applicando la PCA con Python.
Il processo di calcolo della PCA è riassunto nei passaggi seguenti, che illustrano come vengono calcolate le componenti principali e come si relazionano ai dati originali.
Poiché la PCA può propendere verso specifiche caratteristiche, è importante valutare se sia necessaria la normalizzazione dei dati. I dati dovrebbero riflettere una distribuzione normale con media pari a zero e una deviazione standard pari a uno.
In questa fase, i valori medi delle variabili vengono calcolati e sottratti dal set di dati originale in modo che ogni variabile contribuisca equamente all'analisi. Questo valore viene poi diviso per la deviazione standard di ciascuna variabile, in modo che tutte le variabili utilizzino la stessa scala.
La covarianza (cov) misura la forte correlazione di due o più variabili. La matrice di covarianza riassume le covarianze associate a tutte le combinazioni di coppie delle variabili iniziali nel set di dati. Il calcolo della matrice di covarianza aiuta a identificare le relazioni tra le variabili, ovvero il modo in cui le variabili variano rispetto alla propria media l'una in confronto all'altra. Questa matrice di dati è una matrice simmetrica, il che significa che le combinazioni di variabili possono essere rappresentate come d × d, dove d è il numero di dimensioni. Ad esempio, per un set di dati tridimensionale, ci sarebbero 3 × 3 o 9 combinazioni di variabili nella matrice di covarianza.
Il segno delle variabili nella matrice ci dice se le combinazioni sono correlate:
Qui, calcoliamo gli autovettori (componenti principali) e gli autovalori della matrice di covarianza. Come autovettori, le componenti principali rappresentano le direzioni della massima varianza nei dati. Gli autovalori rappresentano la quantità di varianza in ciascuna componente. La classificazione degli autovettori in base agli autovalori identifica l'ordine delle componenti principali.
In questa fase decidiamo quali componenti conservare e quali scartare. Le componenti con autovalori bassi non sono generalmente così significative. Gli scree plot generalmente tracciano la proporzione di varianza totale spiegata e la proporzione cumulativa di varianza. Queste metriche aiutano a determinare il numero ottimale di componenti da conservare. Il punto in cui l'asse Y degli autovalori o della varianza totale spiegata crea un "gomito" indicherà generalmente quante componenti PCA vogliamo includere.
Infine, i dati vengono trasformati nel nuovo sistema di coordinate definito dalle componenti principali. Vale a dire che il vettore delle caratteristiche creato dagli autovettori della matrice di covarianza proietta i dati sui nuovi assi definiti dalle componenti principali. Questo crea nuovi dati, catturando la maggior parte delle informazioni ma con meno dimensioni rispetto al set di dati originale.
Un grafico PCA è un diagramma a dispersione creato utilizzando le prime due componenti principali come assi. La prima componente principale (PC1) è l'asse x e la seconda componente principale (PC2) è l'asse y. Il grafico a dispersione mostra le relazioni tra le osservazioni (punti dati) e le nuove variabili (le componenti principali). La posizione di ciascun punto mostra i valori di PC1 e PC2 per quell'osservazione.
La direzione e la lunghezza delle frecce del tracciato indicano i carichi delle variabili, ovvero il contributo di ciascuna variabile alle componenti principali. Se una variabile ha un carico elevato per una determinata componente, è fortemente correlata a quella componente. Questo può evidenziare quali variabili hanno un impatto significativo sulle variazioni dei dati.
Il numero di componenti principali che rimangono dopo l'applicazione della PCA può aiutare a interpretare l'output dei dati. La prima componente principale spiega la maggior parte della varianza dei dati e ogni componente successiva spiega una varianza minore. Pertanto, il numero di componenti può indicare la quantità di informazioni conservate dal set di dati originale. Un numero ridotto di componenti dopo aver applicato la PCA potrebbe indicare che non è stata catturata gran parte della variazione dei dati. Più componenti indicano una maggiore variazione dei dati, ma i risultati potrebbero essere più difficili da interpretare. È possibile decidere il numero ottimale di componenti da mantenere utilizzando uno scree plot o la varianza spiegata cumulativa.
L'applicazione della PCA può aiutare a pre-elaborare o estrarre le caratteristiche più informative da set di dati con molte variabili. La pre-elaborazione riduce la complessità preservando le informazioni rilevanti. Gli scenari comuni che utilizzano la PCA includono:
La PCA riduce la dimensionalità delle immagini conservando le informazioni essenziali. Aiuta a creare rappresentazioni compatte delle immagini, rendendole più facili da archiviare e trasmettere.
La PCA aiuta a visualizzare dati ad alta dimensionalità proiettandoli in uno spazio dimensionale inferiore, come un grafico 2D o 3D. Ciò semplifica l'interpretazione e l'esplorazione dei dati.
La PCA può rimuovere il rumore o le informazioni ridondanti dai dati, concentrandosi sulle componenti principali che catturano i modelli sottostanti.
La PCA è stata applicata anche nel settore sanitario. Ad esempio, ha contribuito a diagnosticare malattie in modo più precoce e accurato. L'articolo Breast Cancer Prediction using Principal Component Analysis with Logistic Regression analizza un noto set di dati sul cancro al seno2 (link esterno a ibm.com) raccolto da pazienti presso l'University of Wisconsin Hospitals di Madison. L'autore dello studio, Akbar, utilizza la PCA per ridurre le dimensioni dei sei diversi attributi dei dati:
Un algoritmo di classificazione di apprendimento supervisionato, la regressione logistica, è stato quindi applicato per prevedere la presenza di un cancro al seno.
Sono disponibili molte altre tecniche di riduzione della dimensionalità, tra cui l'analisi discriminante lineare, la la foresta casuale, l' approssimazione e proiezione di varietà uniformi (UMAP) e il t-distributed stochastic neighbor (t-SNE). Per valutare se la PCA è l'approccio giusto per la tua analisi, considera i seguenti fattori:
Ripensa il modo in cui lavori con l'AI: il nostro team globale e diversificato, composto da oltre 20.000 esperti di AI, può aiutarti a progettare e scalare l'AI e l'automazione in tutta l'azienda in modo rapido e sicuro, lavorando con la nostra tecnologia IBM watsonx e con un ecosistema aperto di partner, per fornire qualsiasi modello AI, su qualsiasi cloud, guidato da etica e fiducia.
Rendi operativa l'AI in tutta la tua azienda per offrire benefici in modo rapido ed etico. Il nostro ricco portafoglio di prodotti AI di livello aziendale e di soluzioni di analytics è progettato per ridurre gli ostacoli all'adozione dell'AI e per creare le giuste basi di dati, ottimizzando i risultati e l'uso responsabile.
Moltiplica la potenza dell'AI con la nostra piattaforma di dati e intelligenza artificiale di nuova generazione. IBM watsonx è un portfolio di strumenti, applicazioni e soluzioni per il business, progettati per ridurre i costi e gli ostacoli dell'adozione dell'AI, ottimizzando al contempo i risultati e l'utilizzo responsabile dell'AI.
Scopri di più sulla relazione tra la matrice delle componenti e il grafico delle componenti nell'output della PCA con la nostra community di data science.
Questo articolo studia il problema dell'analisi delle componenti principali (PCA) nei modelli di calcolo distribuiti e in streaming.
Scopri come perfezionare i tuoi modelli e le tue previsioni con diversi approcci alla pre-elaborazione dei dati.
Riduci la dimensionalità di un set di dati applicando la PCA con Python.
Ottimizza la classificazione di un set di dati applicando la PCA con R.
Tutti i link sono esterni a ibm.com