Skip to content

Latest commit

 

History

History
98 lines (75 loc) · 5.3 KB

STEPS.md

File metadata and controls

98 lines (75 loc) · 5.3 KB

Analyse des Composantes Principales (ACP) : Étapes Détaillées avec Formules Mathématiques

L'analyse des composantes principales (ACP) est une méthode statistique utilisée pour réduire la dimensionnalité des données tout en conservant le maximum de variance possible. Voici les étapes détaillées pour réaliser une ACP, incluant les formules mathématiques correspondantes.

1. Collecte et Préparation des Données

  • Collecte des Données : Rassembler les données brutes sous forme d'une matrice de données (X) où les lignes représentent les observations et les colonnes représentent les variables.
  • Nettoyage des Données : Traiter les valeurs manquantes, les doublons et les outliers.
  • Normalisation : Standardiser les données pour que chaque variable ait une moyenne de zéro et un écart-type de un (si nécessaire).

2. Construction de la Matrice des Données

  • Matrice de Données : Supposons que (X) soit la matrice de données de dimension (n \times p), où (n) est le nombre d'observations et (p) le nombre de variables.

3. Centrage et Réduction

  • Centrage : Soustraire la moyenne de chaque variable aux valeurs correspondantes. [ X_{\text{centré}} = X - \mu ] où (\mu) est le vecteur des moyennes de chaque variable.
  • Réduction : Diviser chaque variable par son écart-type. [ X_{\text{centré réduit}} = \frac{X_{\text{centré}}}{\sigma} ] où (\sigma) est le vecteur des écarts-types de chaque variable.

4. Calcul de la Matrice de Covariance

  • Matrice de Covariance : Calculer la matrice de covariance (S) des données standardisées. [ S = \frac{1}{n} X_{\text{centré réduit}}^T X_{\text{centré réduit}} ] où ( n ) est le nombre d'observations.

5. Calcul des Valeurs Propres et des Vecteurs Propres

  • Valeurs Propres et Vecteurs Propres : Résoudre le problème aux valeurs propres pour obtenir les valeurs propres ((\lambda)) et les vecteurs propres ((v)) de la matrice de covariance. [ S v = \lambda v ]

6. Sélection des Composantes Principales

  • Ordre des Valeurs Propres : Trier les valeurs propres en ordre décroissant.
  • Sélection des Composantes : Sélectionner les (k) premières valeurs propres et leurs vecteurs propres correspondants, où (k) est le nombre de composantes principales retenues.

7. Calcul des Nouvelles Variables

  • Composantes Principales : Projeter les données standardisées sur les vecteurs propres sélectionnés pour obtenir les nouvelles variables (composantes principales). [ Z = X_{\text{centré réduit}} V ] où ( Z ) est la matrice des composantes principales et ( V ) est la matrice des vecteurs propres sélectionnés.

8. Interprétation et Visualisation

  • Variance Expliquée : Calculer la proportion de variance expliquée par chaque composante principale. [ \text{Variance expliquée} = \frac{\lambda}{\sum \lambda} ]
  • Visualisation : Utiliser des graphiques (comme les diagrammes de dispersion et les biplots) pour visualiser les données dans le nouvel espace de composantes principales.

9. Utilisation des Composantes Principales

  • Réduction de Dimensionnalité : Utiliser les composantes principales pour réduire la dimensionnalité des données tout en préservant autant que possible la variance.
  • Applications : Utiliser les données réduites pour diverses applications telles que la classification, la régression, le clustering, etc.

Exemple en Python

Voici un exemple de code Python pour effectuer une ACP en suivant les étapes ci-dessus :

import numpy as np
import pandas as pd
from sklearn.decomposition import PCA
from sklearn.preprocessing import StandardScaler

# Étape 1 : Collecte et préparation des données
# Supposons que df soit notre DataFrame avec les données
df = pd.DataFrame({
    'variable1': [2.5, 0.5, 2.2, 1.9, 3.1, 2.3, 2, 1, 1.5, 1.1],
    'variable2': [2.4, 0.7, 2.9, 2.2, 3, 2.7, 1.6, 1.1, 1.6, 0.9]
})

# Étape 2 et 3 : Normalisation (centrage et réduction)
scaler = StandardScaler()
X_centré_reduit = scaler.fit_transform(df)

# Étape 4 : Construction de la matrice des données
X = np.array(X_centré_reduit)

# Étape 5 : Calcul de la matrice de covariance
cov_matrix = np.cov(X, rowvar=False)

# Étape 6 : Calcul des valeurs propres et des vecteurs propres
eigen_values, eigen_vectors = np.linalg.eigh(cov_matrix)

# Étape 7 : Sélection des composantes principales
# Trier les valeurs propres en ordre décroissant
sorted_index = np.argsort(eigen_values)[::-1]
sorted_eigenvalues = eigen_values[sorted_index]
sorted_eigenvectors = eigen_vectors[:, sorted_index]

# Sélectionner les k premières valeurs propres
k = 2
selected_eigenvectors = sorted_eigenvectors[:, :k]

# Étape 8 : Calcul des nouvelles variables
Z = np.dot(X, selected_eigenvectors)

# Étape 9 : Interprétation et visualisation
explained_variance = sorted_eigenvalues / np.sum(sorted_eigenvalues)
print("Variance expliquée par chaque composante :", explained_variance)
print("Nouvelles variables (composantes principales) :", Z)

Conclusion

L'ACP est une méthode puissante pour la réduction de dimensionnalité et l'analyse exploratoire des données. Les étapes ci-dessus couvrent le processus complet, de la collecte des données à l'interprétation des résultats, en incluant les formules mathématiques essentielles.