PCA (analisi delle componenti principali): cos’è e come funziona
La PCA, o analisi delle componenti principali, riduce le dimensioni dei dati conservando l'informazione utile: ecco cos'è, come funziona e a cosa serve.

La PCA, ovvero l’analisi delle componenti principali (in inglese Principal Component Analysis), è una tecnica statistica che serve a semplificare i dati complessi senza perdere l’informazione che conta davvero. Prende un dataset con tante variabili e lo riscrive con poche nuove variabili, chiamate componenti principali, capaci di riassumere gran parte di ciò che i dati originali raccontano. Se lavori con i dati o ti stai avvicinando all’intelligenza artificiale, capire l’analisi delle componenti principali ti aiuta a gestire dataset enormi, a visualizzarli e a prepararli per gli algoritmi.
In questa guida vedrai in modo semplice cos’è la PCA, come funziona passo dopo passo, a cosa serve nella pratica e quali sono i suoi limiti. Niente formule complicate: l’obiettivo è farti capire l’idea di fondo e quando conviene usarla.
Che cos’è la PCA, l’analisi delle componenti principali
Immagina di avere una tabella con centinaia di colonne: ogni colonna è una variabile, ogni riga un’osservazione. Molte di queste colonne, però, dicono più o meno la stessa cosa. Il peso e l’altezza di una persona, per esempio, tendono a crescere insieme: sono correlati. Quando le variabili si sovrappongono in questo modo, una parte dei dati è ridondante e non aggiunge nulla di nuovo.
La PCA nasce proprio per affrontare questa ridondanza. L’idea è costruire un nuovo insieme di variabili, le componenti principali, che sono combinazioni delle vecchie ma non sono più correlate tra loro. La prima componente cattura la maggiore quantità possibile di variabilità dei dati, la seconda cattura la parte più grande di ciò che resta, e così via. In questo modo puoi tenere solo le prime componenti e scartare le altre, riducendo il numero di dimensioni senza buttare via l’informazione importante.
Si tratta di una tecnica non supervisionata: non ha bisogno di etichette o di una risposta da prevedere, ma lavora solo sulla struttura interna dei dati. Se vuoi capire meglio questa distinzione, trovi una spiegazione dettagliata nella nostra guida all’apprendimento supervisionato e non supervisionato.
Perché ridurre il numero di dimensioni
Quando le variabili sono tante, i modelli diventano lenti, difficili da interpretare e più esposti al rischio di adattarsi al rumore invece che al segnale. È il cosiddetto problema della dimensionalità, che affligge quasi tutti i dataset moderni. Ridurre le dimensioni con l’analisi in componenti principali rende i calcoli più rapidi, i grafici più leggibili e spesso migliora anche le prestazioni degli algoritmi che usi in seguito.
Come funziona la PCA, passo dopo passo
Dietro l’analisi delle componenti principali c’è un procedimento matematico preciso, ma la logica si può raccontare in pochi passaggi. Vediamoli senza perderci nei dettagli.
Il primo passo è standardizzare i dati. Variabili misurate su scale diverse, come euro e chilogrammi, vanno riportate a una scala comune, di solito con media zero e deviazione standard uno. Senza questo passaggio, le variabili con numeri più grandi dominerebbero il risultato solo per via dell’unità di misura, falsando tutto.
Il secondo passo è misurare come le variabili si muovono insieme, cioè calcolare la loro matrice di covarianza. Questa matrice dice quali variabili sono correlate e quanto lo sono.
Il terzo passo è il cuore del metodo: da quella matrice si ricavano gli autovettori e gli autovalori. Gli autovettori indicano le direzioni lungo cui i dati variano di più, e sono proprio le componenti principali. Gli autovalori dicono quanta variabilità è associata a ciascuna direzione.
L’ultimo passo è la proiezione: i dati originali vengono riscritti rispetto alle nuove direzioni. Tenendo solo le prime componenti, quelle con gli autovalori più alti, ottieni una versione compatta e più maneggevole del dataset.
Varianza e componenti principali
Il concetto chiave è la varianza, cioè quanto i dati sono dispersi. Ogni componente principale spiega una certa percentuale della varianza totale. Sommando le percentuali delle prime componenti sai quanta informazione stai conservando. Spesso bastano due o tre componenti per spiegare l’ottanta o il novanta per cento della varianza di dataset anche molto grandi: è questo che rende la PCA così potente e usata.
Autovettori e autovalori in parole semplici
Se i termini autovettore e autovalore ti spaventano, prova a vederli così. Immagina una nuvola di punti a forma di ellisse allungata. L’asse più lungo dell’ellisse è la prima componente principale: la direzione lungo cui i punti si allontanano di più. L’asse perpendicolare, più corto, è la seconda componente. Gli autovalori non sono altro che la lunghezza di questi assi, cioè quanta varianza c’è in ogni direzione.
Un esempio pratico di analisi delle componenti principali
Pensa a un dataset che descrive delle automobili con decine di caratteristiche: cilindrata, potenza, consumi, peso, lunghezza, accelerazione e così via. Molte di queste misure sono legate tra loro, perché un’auto grande e potente tende ad avere anche consumi elevati e peso alto.
Applicando la PCA potresti scoprire che la prima componente principale rappresenta, in sostanza, la dimensione e la potenza complessiva dell’auto, mentre la seconda distingue le vetture sportive da quelle da città. Con due sole componenti riesci a disegnare un grafico in cui ogni auto è un punto, e le vetture simili finiscono vicine. Hai trasformato decine di colonne in due, mantenendo il senso dei dati.
Questo tipo di sintesi è preziosa in moltissimi campi, dalla ricerca di mercato alla genetica, dove i dataset hanno migliaia di variabili impossibili da guardare tutte insieme.
A cosa serve la PCA: le applicazioni
L’analisi componenti principali ha usi molto concreti nel lavoro quotidiano con i dati. Il più comune è la visualizzazione: ridurre a due o tre dimensioni permette di disegnare grafici comprensibili di dataset altrimenti impossibili da rappresentare su carta o su uno schermo.
Un secondo uso è la compressione. Conservando solo le componenti più importanti puoi memorizzare i dati in forma più leggera. Con le immagini, per esempio, la PCA può ridurre lo spazio occupato mantenendo quasi intatta la qualità percepita.
C’è poi la riduzione del rumore: le ultime componenti spesso contengono soprattutto disturbi casuali, quindi eliminarle ripulisce i dati. Infine la PCA è un ottimo passaggio di preparazione prima di addestrare altri modelli di machine learning e viene usata di frequente anche nelle tecniche di data mining per esplorare grandi archivi di informazioni.
Vantaggi e limiti della PCA
Il vantaggio principale è evidente: meno dimensioni significano modelli più veloci, grafici più chiari e minore rischio di sovradattamento. La PCA elimina anche la correlazione tra le variabili, una cosa che diversi algoritmi gradiscono molto.
Ci sono però dei limiti da conoscere. Le componenti principali sono combinazioni delle variabili originali, quindi perdono interpretabilità: la prima componente non è “il prezzo” o “il peso”, ma un misto di tutto. Inoltre la PCA presuppone relazioni lineari tra le variabili e può risultare poco efficace quando i legami sono più complessi. Infine è molto sensibile alla scala, motivo per cui la standardizzazione iniziale non è mai facoltativa.
Per questo la PCA non sostituisce gli altri algoritmi di machine learning, ma li affianca: è uno strumento di preparazione e di esplorazione, da usare con criterio e consapevolezza.
Come fare una PCA in Python
Nella pratica quasi nessuno calcola la PCA a mano. La libreria più usata è scikit-learn, che mette a disposizione una classe dedicata pronta all’uso. Il flusso tipico per eseguire un’analisi PCA prevede pochi passaggi: importi i dati, li standardizzi, crei l’oggetto PCA indicando quante componenti vuoi tenere e infine trasformi il dataset.
In termini semplici, dopo aver standardizzato i dati chiami il metodo che addestra la PCA e restituisce le nuove coordinate. Puoi poi leggere quanta varianza spiega ogni componente e decidere quante tenerne. La documentazione ufficiale della classe PCA di scikit-learn descrive tutti i parametri disponibili e qualche esempio di codice.
Domande frequenti sulla PCA
Che differenza c’è tra PCA e clustering?
Sono due cose diverse. La PCA riduce il numero di variabili riscrivendo i dati con meno dimensioni, mentre il clustering raggruppa le osservazioni simili tra loro. Spesso si usano insieme: prima la PCA per semplificare i dati, poi il clustering per trovare i gruppi al loro interno.
Quante componenti principali devo tenere?
Dipende da quanta varianza vuoi conservare. Una regola pratica è tenere abbastanza componenti da spiegare almeno l’ottanta o il novanta per cento della varianza totale. Un grafico della varianza cumulata ti aiuta a individuare il punto giusto in cui fermarti.
La PCA è un algoritmo di intelligenza artificiale?
La PCA è una tecnica statistica di riduzione della dimensionalità, nata molto prima dell’AI moderna. Viene però usata moltissimo nel machine learning come passaggio di preparazione dei dati, quindi la troverai spesso descritta insieme agli algoritmi di apprendimento automatico.
Serve sempre standardizzare i dati prima della PCA?
Quasi sempre sì. Se le variabili hanno scale molto diverse, senza standardizzazione la PCA darebbe troppo peso a quelle con numeri più grandi. Fa eccezione solo il caso in cui tutte le variabili siano già misurate sulla stessa scala.
Conclusioni
L’analisi delle componenti principali è uno degli strumenti più eleganti e utili per chi lavora con i dati: trasforma la complessità in qualcosa di gestibile, ti fa vedere strutture nascoste e prepara il terreno per modelli migliori. Non è una bacchetta magica e va usata capendone i limiti, ma padroneggiarla ti mette una marcia in più.
Se vuoi continuare a costruire basi solide, esplora le nostre altre guide dedicate ai fondamenti dei dati e dell’intelligenza artificiale: capire come le macchine imparano parte sempre da qui.