Intuition de l’ACP
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.
12345678910111213141516171819202122232425262728293031323334import 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()
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.
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
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
Intuition de l’ACP
Glissez pour afficher le menu
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.
12345678910111213141516171819202122232425262728293031323334import 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()
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.
Merci pour vos commentaires !