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 logistique, 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).
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.
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 ci-après :
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 analyses multivariées sont les suivantes :
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 :
Pour ces raisons, la méthode LDA peut ne pas donner de bons résultats dans les espaces de caractéristiques à haute dimension.
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 dimensionnalité, les vecteurs propres sont calculés à partir de l’ensemble de données et collectés dans deux matrices de dispersion :
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.
La fonction discriminante linéaire permet de prendre des décisions en cas de problèmes de classification en séparant les points de données selon des caractéristiques et en les classant dans différentes classes ou catégories. Le processus de calcul peut être résumé par les étapes clés suivantes :
La variance inter-classe correspond à la séparabilité des classes, c’est-à-dire la distance entre les moyennes des classes.
La variance intra-classe correspond à la distance entre les moyennes des classes et les échantillons.
Cela permet de maximiser la variance inter-classe et de minimiser la variance intra-classe. Nous pouvons représenter mathématiquement la fonction discriminante linéaire pour deux classes de la manière suivante.
δ(x) = x * ( σ2 * (μ0-μ1) - 2 * σ2 * (μ02-μ12) + ln(P(w0) / P(w1)))
Où :
Utilisons l’équation sur l’exemple d’une approbation de prêt. En résumé, la banque décide d’approuver ou de rejeter les demandes de prêt. Elle base sa décision sur deux caractéristiques : la cote 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, précisant si les prêts ont été approuvés.
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 * (μ0-μ1) - 2 * σ2 * (μ02-μ12) + ln(P(w0) / P(w1)))
La banque calcule la fonction discriminante linéaire pour chaque demande de prêt.
La banque peut ainsi automatiser son processus d’approbation des prêts, prenant des décisions plus rapides et plus cohérentes tout en minimisant les biais humains.
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.
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.
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 tendances et les relations dans les données des patients.
Pour un marketing efficace, les entreprises d’e-commerce doivent pouvoir classer diverses clientèles en catégories. Essentielle dans la segmentation client, la LDA leur permet d’adapter leur stratégie marketing à différents groupes de consommateurs. Résultat : une expérience d’achat plus personnalisée, augmentant les ventes et la fidélité des clients.
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 tendances associées aux différents 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 le gaspillage.
Vous pouvez maximiser votre budget publicitaire en ciblant le bon public avec du contenu personnalisé, mais il peut être difficile d’identifier les-dits segments. La LDA peut simplifier ce processus en classant les attributs et les 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.
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.
Dans le cadre de ce tutoriel détaillé, vous allez commencer par importer les bibliothèques Python nécessaires pour travailler avec le jeu de données Iris, effectuer le prétraitement des données, et créer et évaluer votre modèle LDA :
<Python code snippet>
import numpy as np import pandas as pd import matplotlib.pyplot as plt import sklearn import seaborn as sns from sklearn.preprocessing import StandardScaler, LabelEncoder from sklearn.model_selection import train_test_split from sklearn.discriminant_analysis import LinearDiscriminantAnalysis from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import 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.
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. En ayant connaissances des compromis inhérent à ce type d’analyse, les data scientists et les professionnels du machine learning peuvent prendre des décisions éclairées quant à son adéquation à une tâche particulière.
- Distributions avec des 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 séparant les deux classes de manière linéaire. 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 auraient 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 caractéristiques. 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’elle 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 la variance.
IBM Granite est notre famille de modèles d’IA ouverts, performants et fiables, conçus pour les entreprises et optimisés pour dimensionner vos applications d’IA. Explorez les options de langage, de code, de séries temporelles et de garde-fous.
Nous avons interrogé 2 000 entreprises à propos de leurs initiatives d’IA pour découvrir ce qui fonctionne, ce qui ne fonctionne pas et comment progresser.
Découvrez des approches d’apprentissage supervisées telles que les machines à vecteurs de support et les classificateurs probabilistes.
Apprenez des concepts fondamentaux et développez vos compétences grâce à des ateliers pratiques, à des cours, à des projets guidés, à des essais et à d’autres ressources.
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.
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.
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.
1 James Joyce, Bayes' Theorem, Stanford Encyclopedia of Philosophy, 2003
2Dan A. Simovici, Lecture notes on Fisher Linear Discriminant Name, 2013
3 Penn State Eberly College of Science, Linear Discriminant Analysis, 2023
4 J. T. Oates, Lecture notes on Linear Discriminant Analysis, 2014
5 Guangliang Chen, lecture notes on Linear Discriminant Analysis (LDA), 2020
6, 7 sci-kit learn, Linear and Quadratic Discriminant Analysis, 2023
IBM web domains
ibm.com, ibm.org, ibm-zcouncil.com, insights-on-business.com, jazz.net, mobilebusinessinsights.com, promontory.com, proveit.com, ptech.org, s81c.com, securityintelligence.com, skillsbuild.org, softlayer.com, storagecommunity.org, think-exchange.com, thoughtsoncloud.com, alphaevents.webcasts.com, ibm-cloud.github.io, ibmbigdatahub.com, bluemix.net, mybluemix.net, ibm.net, ibmcloud.com, galasa.dev, blueworkslive.com, swiss-quantum.ch, blueworkslive.com, cloudant.com, ibm.ie, ibm.fr, ibm.com.br, ibm.co, ibm.ca, community.watsonanalytics.com, datapower.com, skills.yourlearning.ibm.com, bluewolf.com, carbondesignsystem.com