Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Intuizione della PCA | Introduzione alla Riduzione della Dimensionalità
Riduzione della Dimensionalità con PCA

bookIntuizione della PCA

Note
Definizione

L'analisi delle componenti principali (PCA) è una tecnica potente che identifica nuovi assi - chiamati componenti principali - che rappresentano le direzioni nei dati che catturano la maggiore varianza.

La PCA mantiene le direzioni in cui i dati variano maggiormente, poiché queste catturano i principali schemi e la struttura.

Si può pensare alla PCA come a una torcia che illumina un oggetto 3D e ne osserva l'ombra su una parete. L'angolo della luce modifica i dettagli dell'ombra. La PCA trova il miglior angolo affinché l'ombra, o projection, riveli il più possibile la forma dell'oggetto. Allo stesso modo, la PCA proietta i dati su nuovi assi per preservare quanta più variazione possibile.

12345678910111213141516171819202122232425262728293031323334
import numpy as np import matplotlib.pyplot as plt # Generate a simple 2D dataset np.random.seed(0) mean = [0, 0] cov = [[3, 2], [2, 2]] # Covariance matrix X = np.random.multivariate_normal(mean, cov, 200) # Compute the mean of the data mean_vector = np.mean(X, axis=0) # Compute the covariance matrix and its eigenvectors cov_matrix = np.cov(X.T) eigenvalues, eigenvectors = np.linalg.eig(cov_matrix) # First principal component (direction of maximum variance) pc1 = eigenvectors[:, np.argmax(eigenvalues)] # Plot the data plt.figure(figsize=(8,6)) plt.scatter(X[:,0], X[:,1], alpha=0.3, label="Data points") plt.quiver( mean_vector[0], mean_vector[1], pc1[0], pc1[1], angles='xy', scale_units='xy', scale=1.5, color='red', width=0.01, label="First principal component" ) plt.xlabel("Feature 1") plt.ylabel("Feature 2") plt.title("Direction of Maximum Variance (First Principal Component)") plt.legend() plt.axis("equal") plt.show()
copy

Identificando le direzioni in cui i dati variano maggiormente, PCA consente di ridurre le dimensioni preservando le informazioni più importanti. Concentrarsi su queste direzioni di massima varianza garantisce che la struttura e i pattern del dataset rimangano chiari. Questa comprensione prepara ad approfondire le basi matematiche della PCA nelle prossime sezioni.

question mark

Qual è l'intuizione principale dietro le componenti principali nella PCA?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 4

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Awesome!

Completion rate improved to 8.33

bookIntuizione della PCA

Scorri per mostrare il menu

Note
Definizione

L'analisi delle componenti principali (PCA) è una tecnica potente che identifica nuovi assi - chiamati componenti principali - che rappresentano le direzioni nei dati che catturano la maggiore varianza.

La PCA mantiene le direzioni in cui i dati variano maggiormente, poiché queste catturano i principali schemi e la struttura.

Si può pensare alla PCA come a una torcia che illumina un oggetto 3D e ne osserva l'ombra su una parete. L'angolo della luce modifica i dettagli dell'ombra. La PCA trova il miglior angolo affinché l'ombra, o projection, riveli il più possibile la forma dell'oggetto. Allo stesso modo, la PCA proietta i dati su nuovi assi per preservare quanta più variazione possibile.

12345678910111213141516171819202122232425262728293031323334
import numpy as np import matplotlib.pyplot as plt # Generate a simple 2D dataset np.random.seed(0) mean = [0, 0] cov = [[3, 2], [2, 2]] # Covariance matrix X = np.random.multivariate_normal(mean, cov, 200) # Compute the mean of the data mean_vector = np.mean(X, axis=0) # Compute the covariance matrix and its eigenvectors cov_matrix = np.cov(X.T) eigenvalues, eigenvectors = np.linalg.eig(cov_matrix) # First principal component (direction of maximum variance) pc1 = eigenvectors[:, np.argmax(eigenvalues)] # Plot the data plt.figure(figsize=(8,6)) plt.scatter(X[:,0], X[:,1], alpha=0.3, label="Data points") plt.quiver( mean_vector[0], mean_vector[1], pc1[0], pc1[1], angles='xy', scale_units='xy', scale=1.5, color='red', width=0.01, label="First principal component" ) plt.xlabel("Feature 1") plt.ylabel("Feature 2") plt.title("Direction of Maximum Variance (First Principal Component)") plt.legend() plt.axis("equal") plt.show()
copy

Identificando le direzioni in cui i dati variano maggiormente, PCA consente di ridurre le dimensioni preservando le informazioni più importanti. Concentrarsi su queste direzioni di massima varianza garantisce che la struttura e i pattern del dataset rimangano chiari. Questa comprensione prepara ad approfondire le basi matematiche della PCA nelle prossime sezioni.

question mark

Qual è l'intuizione principale dietro le componenti principali nella PCA?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 4
some-alt