Qu’est-ce que l’analyse discriminante linéaire (LDA) ?

Qu’est-ce que la LDA ?

L’analyse discriminante linéaire (LDA) est une approche utilisée dans le machine learning supervisé pour résoudre les problèmes de classification multi-classes. La LDA sépare les différentes classes comportant des caractéristiques multiples grâce à la réduction de dimensionnalité des données. Cette technique est importante pour la science des données, car elle permet d’optimiser les modèles de machine learning.

L’analyse discriminante linéaire (LDA), également appelée « analyse discriminante normale (ADN) » ou « analyse factorielle discriminante » (AFD), suit le cadre d’un modèle génératif. Cela signifie que les algorithmes LDA modélisent la distribution des données pour chaque classe et utilisent le théorème de Bayes1 pour classer les nouveaux points de données. Le théorème de Bayes permet de calculer les probabilités conditionnelles, c’est-à-dire la probabilité qu’un événement se produise sachant qu’un autre événement s’est déjà produit. Les algorithmes LDA font des prédictions en utilisant le théorème de Bayes pour calculer la probabilité qu’un jeu de données d’entrée appartienne à une sortie particulière. Pour avoir un aperçu des statistiques bayésiennes et de leur impact sur les algorithmes d’apprentissage supervisé, consultez la rubrique Classification naïve bayésienne

La LDA consiste à identifier une combinaison linéaire de caractéristiques qui sépare ou caractérise deux ou plusieurs classes d’objets ou d’événements. Pour ce faire, on projette les données comportant deux ou plusieurs dimensions dans une seule dimension afin d’en faciliter la classification. C’est pourquoi cette technique est également appelée « réduction de dimensionnalité ». Grâce à cette polyvalence, la LDA permet de résoudre les problèmes de classification des données multiclasse, contrairement à la régression, qui se limite à la classification binaire. La LDA est donc souvent appliquée pour améliorer le fonctionnement d’autres algorithmes de classification tels que l’arbre de décision, la forêt d’arbres décisionnels ou encore les machines à vecteurs de support (SVM).

Graphique montrant l'effet sur un cluster de données avant et après l'application des méthodes LDA

L’origine de l’analyse discriminante linéaire

L’analyse discriminante linéaire (LDA) est basée sur l’analyse discriminante linéaire de Fisher, une méthode statistique développée par Sir Donald Fisher dans les années 1930 et simplifiée plus tard par C. R. Rao dans une version multiclasse. La méthode de Fisher vise à identifier une combinaison linéaire de caractéristiques qui fait la distinction entre deux ou plusieurs classes d’objets ou d’événements étiquetés.

La méthode de Fisher réduit les dimensions en séparant les classes de données projetées. La séparation consiste à maximiser la distance entre les moyennes projetées et à minimiser la variance projetée au sein des classes.

Une application pratique de la LDA

Supposons qu’une banque décide d’approuver ou de rejeter les demandes de prêt. La banque utilise deux éléments pour prendre cette décision : la cote de crédit du demandeur et son revenu annuel.

Ici, les deux caractéristiques ou classes sont représentées sur un plan bidimensionnel (2D) avec un axe X-Y. Si nous tentons de classer les approbations à l’aide d’une seule caractéristique, nous risquons de constater un chevauchement. En appliquant la LDA, nous pouvons tracer une ligne droite qui sépare complètement ces deux points de données de classe. La LDA utilise l’axe X – Y pour créer un nouvel axe, en séparant les différentes classes par une ligne droite et en projetant les données sur le nouvel axe.

Pour créer ce nouvel axe et réduire la dimensionnalité, la LDA suit les critères suivants :

  • Maximiser la distance entre les moyennes de deux classes.
  • Minimiser la variance au sein des classes individuelles.

Propriétés et hypothèses de la LDA

Les LDA projettent un espace de caractéristiques, c’est-à-dire un jeu de données à n dimensions, sur un espace plus petit « k », où k est inférieur ou égal à n-1, sans perdre d’informations sur les classes. Un modèle LDA comprend les propriétés statistiques calculées pour les données de chaque classe. Lorsqu’il y a plusieurs caractéristiques ou variables, ces propriétés sont calculées à partir de la loi de Gauss à plusieurs variables3.

Les variables multiples sont les suivantes :

  • Moyens
  • Matrice de covariance, qui mesure la relation entre chaque variable ou fonctionnalité et les autres au sein de la classe

Les propriétés statistiques estimées à partir de l'ensemble de données sont introduites dans la fonction LDA pour faire des prédictions et créer le modèle LDA. Il existe certaines contraintes à prendre en compte, car le modèle suppose ce qui suit :

  • Le jeu de données d'entrée a une distribution gaussienne, où le tracé des points de données donne une courbe en U.
  • Le jeu de données est linéairement séparable, ce qui signifie que la méthode LDA peut tracer une ligne droite ou une limite de décision qui sépare les points de données.
  • Chaque classe a la même matrice de covariance.

Pour ces raisons, la méthode LDA peut ne pas donner de bons résultats dans les espaces de caractéristiques à haute dimension.

Rôle des vecteurs propres et des valeurs propres

La réduction de la dimensionnalité implique de séparer les points de données par une ligne droite. Mathématiquement, les transformations linéaires sont analysées à l’aide de vecteurs propres et de valeurs propres. Imaginez que vous ayez cartographié un jeu de données aux caractéristiques multiples, donnant un nuage de points multidimensionnel. Les vecteurs propres fournissent la « direction » dans le nuage de points. Les valeurs propres indiquent l’importance de ces données directionnelles. Une valeur propre élevée signifie que le vecteur propre associé est plus critique.

Lors de la réduction de la dimensionnalité, les vecteurs propres sont calculés à partir de l'ensemble de données et collectés dans deux matrices de dispersion :

  • Matrice de dispersion entre classes (informations sur la répartition des données au sein de chaque classe)
  • Matrice de dispersion intra-classe (comment les classes sont réparties entre elles).

Les dernières tendances en matière d’IA, vues par des experts

Obtenez des informations sur les actualités les plus importantes et les plus intrigantes en matière d’intelligence artificielle. Abonnez-vous à notre newsletter hebdomadaire Think. Lire la Déclaration de confidentialité d’IBM.

Merci ! Vous êtes abonné(e).

Vous recevrez votre abonnement en anglais. Vous trouverez un lien de désabonnement dans chaque newsletter. Vous pouvez gérer vos abonnements ou vous désabonner ici. Consultez la Déclaration de confidentialité d’IBM pour plus d’informations.

Préparer la mise en œuvre de l’analyse discriminante linéaire

Pour appliquer efficacement la LDA, il est essentiel de préparer votre jeu de données. Voici les étapes et les bonnes pratiques à suivre pour mettre en œuvre la LDA :

1. Prétraiter les données pour vous assurer qu’elles sont normalisées et centrées

Pour ce faire, il faut passer le paramètre n-composant de la LDA, qui identifie le nombre de discriminants linéaires à extraire.

2. Choisir un nombre de dimensions approprié pour l’espace de dimension inférieure

Pour ce faire, il faut passer le paramètre n-composant de la LDA, qui identifie le nombre de discriminants linéaires à extraire.

3. Régulariser le modèle

La régularisation vise à empêcher le surajustement, c’est-à-dire le fait que le modèle statistique s’ajuste exactement aux données d’entraînement, nuisant à sa précision.

4. Utiliser la validation croisée pour évaluer la performance du modèle

Vous pouvez évaluer les classificateurs tels que les LDA en traçant une matrice de confusion, avec les valeurs de classe réelles en lignes et les valeurs de classe prédites en colonnes. Une matrice de confusion permet de voir facilement si un classificateur confond deux classes, c’est-à-dire s’il attribue l’étiquette d’une classe à une autre. Prenons l’exemple d’une matrice de confusion 10 x 10 prédisant les images des chiffres de zéro à neuf. Les valeurs réelles sont représentées en lignes sur l’axe des ordonnées. Les prévisions sont présentées en colonnes sur l’axe des abscisses. Pour voir combien de fois un classificateur a confondu les images  de 4 et de 9 dans l’exemple de la matrice de confusion 10 x 10, il faudrait vérifier la 4e ligne et la 9e colonne.

une matrice de confusion, qui compare les chiffres réels aux prévisions

Fonction discriminante linéaire : comment ça marche ?

La fonction discriminante linéaire aide à prendre des décisions en cas de problèmes de classification en séparant les points de données selon des fonctionnalités et en les classant dans différentes classes ou catégories. Le processus de calcul peut être résumé en ces étapes clés suivantes :

Calculer la variance entre les classes

La variation au sein d'une classe correspond à la séparation entre les classes, c'est-à-dire la distance entre les moyennes de classe.

Calculer la variance au sein de la classe

La variation au sein d'une classe correspond à la distance entre les moyennes de classe et les échantillons.

Projeter les données dans un espace de dimension inférieure

Cela permet de maximiser la variation entre les classes et de minimiser la variation au sein de la classe. Nous pouvons représenter mathématiquement la fonction discriminante linéaire pour deux classes de la manière suivante.

δ(x) = x * ( σ2 * (μ01) - 2 * σ2 * (μ0212) + ln(P(w0) / P(w1)))

Où :

  • δ(x) représente la fonction discriminante linéaire.
  • x représente le point de données d’entrée.
  • μ0 et μ1 sont les moyennes des deux classes.
  • σ2 est la variation au sein d'une classe commune.
  • P(ω0) et P(ω1) sont les probabilités a priori des deux classes.

Application de la LDA avec un exemple

Utilisons l'équation pour prendre un exemple d'approbation de prêt. En résumé, la banque décide d'approuver ou de rejeter les demandes de prêt. La banque utilise deux éléments pour prendre cette décision : le score de crédit du demandeur (x) et son revenu annuel. La banque a recueilli des données historiques sur les demandeurs de prêts précédents et si les prêts ont été approuvés.

  • La classe ω0 correspond à « Prêt refusé ».
  • La classe ω1 correspond à « Prêt accordé ».

En utilisant la fonction discriminante linéaire, la banque peut calculer un score(δ(x)) pour chaque demande de prêt. 

L’équation de la fonction discriminante linéaire pourrait ressembler à celle-ci :

δ(x) = x * ( σ2 * (μ01) - 2 * σ2 * (μ0212) + ln(P(w0) / P(w1)))

  • x représente la cote de solvabilité et le revenu annuel du demandeur.
  • μ0 et μ1 sont les moyennes de ces caractéristiques pour les deux classes : « Prêt refusé » et « Prêt accordé ».
  • σ2 est la variation au sein d'une classe commune.
  • P(ω0) est la probabilité a priori de « Prêt refusé », et P(ω1) est la probabilité a priori de « Prêt accordé ».

La banque calcule la fonction discriminante linéaire pour chaque demande de prêt.

  • Si δ(x) est positif, la demande de prêt est plus susceptible d’être approuvée.
  • Si δ(x) est négatif, la demande de prêt est plus susceptible d’être refusée.

La banque peut ainsi automatiser son processus d'approbation des prêts, prendre des décisions plus rapides et plus cohérentes tout en minimisant les biais humains.

Applications de l’analyse discriminante linéaire

Il s'agit là de scénarios typiques dans lesquels la méthode LDA peut être appliquée pour résoudre des problèmes complexes et aider les organisations à prendre de meilleures décisions.

L'évaluation du risque de crédit en finance

Pour atténuer les risques, les institutions financières doivent identifier et minimiser les défauts de crédit. La LDA peut vous aider à identifier les candidats susceptibles de ne pas rembourser leurs prêts parmi ceux qui sont solvables en passant au crible les facteurs financiers et les données comportementales.

Diagnostic des maladies dans le secteur de la santé

Un diagnostic rapide et précis de la maladie est essentiel pour un traitement efficace. Les hôpitaux et les professionnels de santé doivent interpréter une immense quantité de données médicales. La LDA permet de simplifier les ensembles de données complexes et d'améliorer la précision du diagnostic en identifiant les modèles et les relations dans les données des patients.

Segmentation client dans l’e-commerce

Pour réussir leurs opérations de marketing, les entreprises d’e-commerce doivent pouvoir classer diverses clientèles. Essentielle dans la segmentation client, la LDA leur permet d’adapter leur stratégie marketing à différents groupes de consommateurs pour personnaliser leur expérience d’achat, les fidéliser et augmenter les ventes.

Contrôle qualité dans la fabrication

Produire des biens de qualité tout en minimisant les défauts est un défi fondamental. Les données des capteurs des machines peuvent être utilisées avec la LDA pour identifier les modèles associés aux défauts. En détectant les irrégularités en temps réel, les fabricants peuvent prendre des mesures correctives immédiates, améliorer la qualité des produits et réduire les pertes.

Optimisation des campagnes marketing

Vous pouvez maximiser votre budget publicitaire en ciblant le bon public avec du contenu personnalisé, mais il peut être difficile d'identifier ces segments de public respectifs. La LDA peut simplifier ce processus en classant les attributs et comportements des clients, améliorant ainsi la personnalisation des campagnes publicitaires. Cette approche peut conduire à un retour sur investissement (ROI) plus élevé et à une meilleure expérience client.

AI Academy

Exploiter l’IA pour le service client

Découvrez comment l’IA générative peut ravir les clients avec une expérience plus transparente et augmenter la productivité de l’organisation dans ces trois domaines clés : le libre-service, les agents humains et les opérations du centre de contact.

Analyse discriminante linéaire et Python

Pour approfondir l’analyse discriminante linéaire avec Python et tirer parti de la bibliothèque scikit-learn, vous pouvez regarder le tutoriel Découvrir les algorithmes de classification avec Python et scikit-learn d’IBM watsonx. Ce tutoriel vous expliquera les bases de la résolution des problèmes liés au machine learning basé sur des classifications à l’aide de Python et de scikit-learn, également connu sous le nom de sklearn.

Pour ce tutoriel détaillé, vous commencerez par importer les bibliothèques Python nécessaires pour travailler avec le jeu de données Iris, vous effectuerez le prétraitement des données et vous créerez et évaluerez votre modèle LDA :

<Python code snippet>

importer numpy en tant que np
importer pandas en tant que pd
importer matplotlib.pyplot en tant que plt
importer sklearn
importer seaborn en tant que SNS
à partir de sklearn.preprocessing importer StandardScaler, LabelEncoder
à partir de sklearn.model_selection importer train_test_split
à partir de sklearn.discriminant_analysis importe LinearDiscriminantAnalysis
à partir de sklearn.ensemble importe RandomForestClassifier
à partir de sklearn.metrics, importer accuracy_score, confusion_matrix

Si les bibliothèques ne sont pas installées, vous pouvez résoudre ce problème avec pip install.

Consultez également cette documentation scikit-learn pour obtenir un aperçu des principaux paramètres et attributs, ainsi que des exemples généraux d’implémentations de Python utilisant sklearn.discriminant_analysis.LinearDiscriminantAnalysis.

Avantages et inconvénients de l’analyse discriminante linéaire

Il est essentiel de comprendre les avantages et les limites de l'analyse discriminante linéaire (LDA) lors de son application à divers problèmes de classification. La connaissance des compromis aide les data scientists et les praticiens du machine learning à prendre des décisions éclairées quant à son adéquation à une tâche particulière.

Principaux avantages

  • Simplicité et efficacité des calculs : la LDA est un algorithme simple et puissant. Il est relativement facile à comprendre et à mettre en œuvre, ce qui le rend accessible à ceux qui découvrent le machine learning. De plus, son calcul efficace garantit des résultats rapides.
  • Gérer les données à haute dimensionnalité : La LDA est efficace lorsque le nombre de caractéristiques est supérieur au nombre d’échantillons d’entraînement. Par conséquent, la LDA est utile dans les champs d’application tels que l’analyse de texte, la reconnaissance d’images et la génomique, souvent associés à des données à haute dimensionnalité.
  • Gérer la multicolinéarité : La LDA peut gérer la multicolinéarité, c’est-à-dire la présence de fortes corrélations entre différentes caractéristiques. Il transforme les données en un espace de dimension inférieure tout en préservant l’intégrité des informations.

Principaux inconvénients

- Distributions moyennes partagées : la LDA rencontre des difficultés lorsque les distributions de classes partagent des moyennes. La LDA peine à créer un nouvel axe qui sépare de manière linéaire les deux classes. Par conséquent, il se peut que la LDA ne fasse pas la distinction entre les classes dont les propriétés statistiques se chevauchent. Par exemple, imaginez un scénario dans lequel deux espèces de fleurs ont une longueur et une largeur de pétales très similaires. La LDA aura peut-être du mal à séparer ces espèces sur la seule base de ces fonctionnalités. Les techniques alternatives, telles que les méthodes d'analyse discriminante non linéaire, sont privilégiées ici.

- Ne convient pas aux données non étiquetées : la LDA est appliquée en tant qu'algorithme d'apprentissage supervisé, c'est-à-dire qu'il classe ou sépare les données étiquetées. En revanche, l'analyse en composantes principales (ACP), une autre technique de réduction des dimensions, ignore les étiquettes de classes et préserve des écarts.

Solutions connexes
IBM watsonx.ai

Entraînez, validez, réglez et déployez une IA générative, des modèles de fondation et des capacités de machine learning avec IBM watsonx.ai, un studio d’entreprise nouvelle génération pour les générateurs d’IA. Créez des applications d’IA en peu de temps et avec moins de données.

Découvrir watsonx.ai
Solutions d’intelligence artificielle

Mettez l’IA au service de votre entreprise en vous appuyant sur l’expertise de pointe d’IBM dans le domaine de l’IA et sur son portefeuille de solutions.

Découvrir les solutions d’IA
Conseils et services en matière d’IA

Réinventez les workflows et les opérations critiques en ajoutant l’IA pour optimiser les expériences, la prise de décision et la valeur métier en temps réel.

Découvrir les services d’IA
Passez à l’étape suivante

Bénéficiez d’un accès centralisé aux fonctionnalités couvrant le cycle de développement de l’IA. Produisez des solutions IA puissantes offrant des interfaces conviviales, des workflows et un accès à des API et SDK conformes aux normes du secteur.

Découvrir watsonx.ai Réserver une démo en direct