Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Intuition de l’ACP | Introduction à la Réduction de Dimensionnalité
Réduction de Dimensionnalité avec l'ACP

bookIntuition de l’ACP

Note
Définition

L'analyse en composantes principales (ACP) est une technique puissante qui identifie de nouveaux axes – appelés composantes principales – qui sont des directions dans vos données capturant la plus grande variance.

L'ACP conserve les directions où vos données varient le plus, car elles capturent les principaux motifs et la structure.

Considérez l'ACP comme une lampe torche éclairant un objet en 3D et examinant l'ombre projetée sur un mur. L'angle de la lumière modifie le niveau de détail de l'ombre. L'ACP trouve le meilleur angle afin que l'ombre, ou la projection, révèle le plus d'informations sur la forme de l'objet. De manière similaire, l'ACP projette vos données sur de nouveaux axes pour préserver autant de variation que possible.

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

En identifiant les directions où vos données varient le plus, l'ACP permet de réduire la dimensionnalité tout en préservant les informations les plus importantes. Se concentrer sur ces directions de variance maximale garantit que la structure et les motifs de votre jeu de données restent clairs. Cette compréhension vous prépare à explorer les fondements mathématiques de l'ACP dans les sections suivantes.

question mark

Quelle est l'intuition principale derrière les composantes principales dans l'ACP ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 4

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Awesome!

Completion rate improved to 8.33

bookIntuition de l’ACP

Glissez pour afficher le menu

Note
Définition

L'analyse en composantes principales (ACP) est une technique puissante qui identifie de nouveaux axes – appelés composantes principales – qui sont des directions dans vos données capturant la plus grande variance.

L'ACP conserve les directions où vos données varient le plus, car elles capturent les principaux motifs et la structure.

Considérez l'ACP comme une lampe torche éclairant un objet en 3D et examinant l'ombre projetée sur un mur. L'angle de la lumière modifie le niveau de détail de l'ombre. L'ACP trouve le meilleur angle afin que l'ombre, ou la projection, révèle le plus d'informations sur la forme de l'objet. De manière similaire, l'ACP projette vos données sur de nouveaux axes pour préserver autant de variation que possible.

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

En identifiant les directions où vos données varient le plus, l'ACP permet de réduire la dimensionnalité tout en préservant les informations les plus importantes. Se concentrer sur ces directions de variance maximale garantit que la structure et les motifs de votre jeu de données restent clairs. Cette compréhension vous prépare à explorer les fondements mathématiques de l'ACP dans les sections suivantes.

question mark

Quelle est l'intuition principale derrière les composantes principales dans l'ACP ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 4
some-alt