¿Qué es el análisis discriminante lineal (LDA)?

¿Qué es el LDA?

El análisis discriminante lineal (LDA) es un enfoque utilizado en el machine learning supervisado para resolver problemas de clasificación multiclase. El LDA separa múltiples clases con múltiples características mediante la reducción de la dimensionalidad de los datos. Esta técnica es importante en la ciencia de datos, ya que ayuda a optimizar los modelos de machine learning.

El análisis discriminante lineal, también conocido como análisis discriminante normal (NDA) o análisis de función discriminante (DFA), sigue un marco de modelo generativo. Esto significa que los algoritmos LDA modelan la distribución de datos para cada clase y utilizan el teorema de Bayes1 para clasificar nuevos puntos de datos. Bayes calcula probabilidades condicionales, es decir, la probabilidad de que se produzca un suceso si se ha producido otro. Los algoritmos LDA realizan predicciones utilizando Bayes para calcular la probabilidad de que un conjunto de datos de entrada pertenezca a un output determinado. Para una revisión de la estadística bayesiana y su repercusión en los algoritmos de aprendizaje supervisado, véase clasificadores Naïve Bayes.

El LDA funciona identificando una combinación lineal de características que separa o caracteriza dos o más clases de objetos o sucesos. El LDA hace esto proyectando datos con dos o más dimensiones en una sola dimensión para que puedan clasificarse más fácilmente. Por ello, a veces se denomina a esta técnica reducción de la dimensionalidad. Esta versatilidad garantiza que el LDA pueda utilizarse para problemas de clasificación de datos multiclase, a diferencia de la regresión logística, que se limita a la clasificación binaria. Por lo tanto, el LDA se aplica a menudo para mejorar el funcionamiento de otros algoritmos de clasificación de aprendizaje, como los árboles de decisiónbosques aleatorios o las máquinas de vectores de soporte (SVM).

Gráfico que muestra el efecto sobre un grupo de datos antes y después de aplicar los métodos LDA

El origen del análisis discriminante lineal

El análisis discriminante lineal (LDA) se basa en el discriminante lineal de Fisher, un método estadístico desarrollado por Sir Ronald Fisher en la década de 1930 y simplificado posteriormente por C. R. Rao como versión multiclase. El método de Fisher pretende identificar una combinación lineal de características que discrimine entre dos o más clases de objetos o sucesos etiquetados.

El método de Fisher reduce las dimensiones separando clases de datos proyectados. Separar significa maximizar la distancia entre las medias proyectadas y minimizar la varianza proyectada dentro de las clases.

Una aplicación práctica del LDA

Supongamos que un banco está decidiendo si aprueba o rechaza solicitudes de préstamo. El banco utiliza dos características para tomar esta decisión: la puntuación crediticia del solicitante y sus ingresos anuales.

Aquí, las dos características o clases se trazan en un plano bidimensional (2D) con un eje X-Y. Si intentáramos clasificar las aprobaciones utilizando una sola característica, podríamos observar solapamientos. Al aplicar LDA, podemos trazar una línea recta que separa completamente estos dos puntos de datos de clase. El LDA lo logra utilizando el eje X-Y para crear un nuevo eje, separando las diferentes clases con una línea recta y proyectando los datos sobre el nuevo eje.

Para crear este nuevo eje y reducir la dimensionalidad, el LDA sigue estos criterios:

  • Maximizar la distancia entre las medias de dos clases.
  • Minimizar la varianza dentro de las clases individuales.

Propiedades y supuestos del LDA

Los LDA funcionan proyectando un espacio de características, es decir, un conjunto de datos con n dimensiones, en un espacio más pequeño "k", donde k es menor o igual que n - 1, sin perder información de clase. Un modelo LDA comprende las propiedades estadísticas que se calculan para los datos de cada clase. Cuando hay múltiples características o variables, estas propiedades se calculan sobre la distribución multivariante gaussiana3.

Las multivariables son:

  • Medias
  • Matriz de covarianza, que mide cómo se relaciona cada variable o característica con otras dentro de la clase

Las propiedades estadísticas que se estiman a partir del conjunto de datos se introducen en la función LDA para realizar predicciones y crear el modelo LDA. Hay que tener en cuenta algunas limitaciones, ya que el modelo parte de los siguientes supuestos:

  • El conjunto de datos de entrada tiene una distribución gaussiana, en la que el trazado de los puntos de datos da una curva en forma de campana.
  • El conjunto de datos es linealmente separable, lo que significa que LDA puede trazar una línea recta o un límite de decisión que separe los puntos de datos.
  • Cada clase tiene la misma matriz de covarianza.

Por estas razones, el LDA puede no funcionar bien en espacios de características de alta dimensión.

Función de los vectores y valores propios

La reducción de la dimensionalidad consiste en separar los puntos de datos con una línea recta. Matemáticamente, las transformaciones lineales se analizan mediante vectores y valores propios. Imagine que ha trazado un conjunto de datos con múltiples características, lo que da lugar a un gráfico de dispersión multidimensional. Los vectores propios proporcionan la "dirección" dentro del diagrama de dispersión. Los valores propios denotan la importancia de estos datos direccionales. Un valor propio alto significa que el vector propio asociado es más crítico.

Durante la reducción de la dimensionalidad, los vectores propios se calculan a partir del conjunto de datos y se recogen en dos matrices de dispersión:

  • Matriz de dispersión entre clases (información sobre la dispersión de los datos dentro de cada clase)
  • Matriz de dispersión dentro de la clase (cómo se reparten las clases entre sí).

Las últimas tendencias en IA, presentadas por expertos

Obtenga conocimientos organizados sobre las noticias más importantes e intrigantes de la IA. Suscríbase a nuestro boletín semanal Think. Consulte la Declaración de privacidad de IBM.

¡Gracias! Está suscrito.

Su suscripción se enviará en inglés. Encontrará un enlace para darse de baja en cada boletín. Puede gestionar sus suscripciones o darse de baja aquí. Consulte nuestra Declaración de privacidad de IBM para obtener más información.

Preparación de la aplicación del análisis discriminante lineal

Para utilizar eficazmente el LDA, es esencial preparar previamente el conjunto de datos. Estos son los pasos y las buenas prácticas a seguir en la aplicación del LDA:

1. Preprocesar los datos para asegurarse de que están normalizados y centrados

Esto se logra pasando el parámetro de componente n del LDA, que identifica el número de discriminantes lineales a recuperar.

2. Elegir un número apropiado de dimensiones para el espacio de dimensión inferior

Esto se logra pasando el parámetro de componente n del LDA, que identifica el número de discriminantes lineales a recuperar.

3. Regularizar el modelo

La regularización busca evitar el sobreajuste, lo que ocurre cuando el modelo estadístico se ajusta exactamente a sus datos de entrenamiento y menoscaba su precisión.

4. Usar la validación cruzada para evaluar el rendimiento del modelo

Puede evaluar clasificadores como el LDA representando una matriz de confusión, con los valores de clase reales como filas y los valores de clase predichos como columnas. Una matriz de confusión permite ver fácilmente si un clasificador confunde dos clases, es decir, si etiqueta erróneamente una clase como otra. Por ejemplo, consideremos una matriz de confusión de 10 x 10 que predice imágenes de cero a nueve. Los valores reales se representan en filas en el eje Y. Las predicciones se representan en columnas en el eje x. Para ver cuántas veces un clasificador confundió imágenes de 4 y 9 en el ejemplo de matriz de confusión de 10 x 10, se comprobaría la 4a fila y la 9a columna.

una matriz de confusión, trazando los datos reales frente a las predicciones

Cómo funciona la función discriminante lineal

La función discriminante lineal ayuda a tomar decisiones en problemas de clasificación separando los puntos de datos en función de las características y clasificándolos en diferentes clases o categorías. El proceso de cálculo puede resumirse en estos pasos clave:

Calcular la varianza entre clases

La varianza entre clases es la separabilidad entre clases, es decir, la distancia entre las medias de las clases.

Calcular la varianza dentro de la clase

La varianza dentro de la clase es la distancia entre las medias de las clases y las muestras.

Proyectar los datos en un espacio de menor dimensionalidad

Esto maximiza la varianza entre clases y minimiza la varianza dentro de la clase. Podemos representar matemáticamente la función discriminante lineal para dos clases con la siguiente.

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

Donde:

  • δ (x) representa la función discriminante lineal.
  • x representa el punto de datos de entrada.
  • μ0 y μ1 son las medias de las dos clases.
  • σ2 es la varianza común dentro de la clase.
  • P(ω0) y P(ω1) son las probabilidades a priori de las dos clases.

Aplicación del LDA con un ejemplo

Utilicemos la ecuación para trabajar con un ejemplo de aprobación de un préstamo. Para recapitular, el banco decide si aprueba o rechaza las solicitudes de préstamo. El banco utiliza dos características para tomar esta decisión: la puntuación crediticia del solicitante (x) y sus ingresos anuales. El banco ha recopilado datos históricos sobre solicitantes de préstamos anteriores y si los préstamos fueron aprobados.

  • La clase ω0 representa "Préstamo rechazado".
  • La clase ω1 representa el "prestamo aprobado".

Mediante la función discriminante lineal, el banco puede calcular una puntuación (δ(x)) para cada solicitud de préstamo. 

La ecuación para la función discriminante lineal podría parecerse a esto:

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

  • x representa la puntuación de crédito y los ingresos anuales del solicitante.
  • μ0 y μ1 son las medias de estas características para las dos clases: "Préstamo rechazado" y "Préstamo aprobado".
  • σ2 es la varianza común dentro de la clase.
  • P(ω0 ) es la probabilidad a priori de "Préstamo rechazado", y P(ω1) es la probabilidad a priori de "Préstamo aprobado".

El banco calcula la función discriminante lineal para cada solicitud de préstamo.

  • Si δ(x) es positivo, sugiere que es más probable que se apruebe la solicitud de préstamo.
  • Si δ(x) es negativo, sugiere que es más probable que se rechace la solicitud de préstamo.

De este modo, el banco puede automatizar su proceso de aprobación de préstamos, tomar decisiones más rápidas y coherentes y minimizar los sesgos humanos.

Aplicaciones del análisis discriminante lineal

Estos son escenarios típicos en los que puede aplicarse LDA para abordar problemas complejos y ayudar a las organizaciones a tomar mejores decisiones.

Evaluación del riesgo crediticio en finanzas

Para mitigar el riesgo, las instituciones financieras deben identificar y minimizar los impagos. El LDA puede ayudar a identificar a los solicitantes que pueden tener probabilidades de impago en comparación con los que son solventes al analizar los factores financieros y los datos de comportamiento.

Diagnóstico de enfermedades en la asistencia sanitaria

Un diagnóstico rápido y preciso de la enfermedad es crucial para un tratamiento eficaz. Los hospitales y los proveedores sanitarios deben interpretar una inmensa cantidad de datos médicos. El LDA ayuda a simplificar conjuntos de datos complejos y a mejorar la precisión diagnóstica mediante la identificación de patrones y relaciones en los datos de los pacientes.

Segmentación de clientes en el comercio electrónico

Para una comercialización eficaz, las empresas de comercio electrónico deben ser capaces de categorizar diversas bases de clientes. El LDA es fundamental para segmentar a los clientes, lo que permite a las empresas de comercio electrónico adaptar sus estrategias de marketing a los distintos grupos de clientes. El resultado son experiencias de compra más personalizadas, que aumentan la fidelidad de los clientes y las ventas.

Control de calidad en la fabricación

Producir bienes de alta calidad minimizando los defectos es un reto fundamental. Los datos de los sensores de la maquinaria pueden utilizarse con el LDA para identificar patrones asociados a defectos. Al detectar irregularidades en tiempo real, los fabricantes pueden tomar medidas correctivas inmediatas, y pueden mejorar la calidad del producto y reducir las mermas.

Optimización de campañas de marketing

Puede maximizar su presupuesto publicitario dirigiéndose al público adecuado con contenidos personalizados, pero identificar esos segmentos de audiencia respectivos puede resultar difícil. El LDA puede simplificar este proceso clasificando los atributos y comportamientos de los clientes, mejorando la personalización de las campañas publicitarias. Este enfoque puede conducir a un mayor retorno de la inversión (ROI) y a una mejor experiencia del cliente.

AI Academy

Ponga la IA a trabajar para el servicio de atención al cliente

Vea cómo la IA generativa puede satisfacer a los clientes con una experiencia más fluida y aumentar la productividad de la organización en estas tres áreas clave: autoservicio, agentes humanos y operaciones del centro de contacto.

Análisis discriminante lineal y Python

Para profundizar en el análisis discriminante lineal con Python y aprovechar la biblioteca scikit-learn, puede explorar este tutorial Learn classification algorithms using Python and scikit-learn en IBM watsonx. El tutorial le ayuda con lo básico para resolver un problema de machine learning basado en la clasificación con Python y scikit-learn .

En el tutorial paso a paso, primero importará las bibliotecas de Python necesarias para trabajar con el conjunto de datos Iris, realizará el preprocesamiento de datos y creará y evaluará su modelo 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 las librerías no están instaladas, puede resolverlo usando pip install.

Consulte también este documento de scikit-learn para obtener una descripción general de los parámetros clave, los atributos y los ejemplos generales de las implementaciones de Python que utilizan sklearn.discriminant_analysis.LinearDiscriminantAnalysis.

Ventajas e inconvenientes del análisis discriminante lineal

Comprender las ventajas y limitaciones del análisis discriminante lineal (LDA) es crucial a la hora de aplicarlo a diversos problemas de clasificación. El conocimiento de las compensaciones ayuda a los científicos de datos y a los profesionales del machine learning a tomar decisiones informadas sobre su idoneidad para una tarea concreta.

Ventajas clave

  • Utilizar la simplicidad y la eficiencia de la computación: el LDA es un algoritmo simple pero potente. Es relativamente fácil de entender y aplicar, lo que lo hace accesible a quienes se inician en el machine learning. Además, su eficaz cálculo garantiza resultados rápidos.
  • Gestionar datos de alta dimensión: el LDA es eficaz cuando el número de características es mayor que el número de muestras de entrenamiento. Por lo tanto, el LDA es valiosa en aplicaciones como el análisis de texto, el reconocimiento de imágenes y la genómica, donde los datos suelen ser de alta dimensión.
  • Manejar la multicolinealidad: el LDA puede tratar la multicolinealidad, que es la presencia de correlaciones elevadas entre diferentes características. Transforma los datos en un espacio de menor dimensión manteniendo la integridad de la información.

Inconvenientes principales

- Distribuciones medias compartidas: el LDA se enfrenta a retos cuando las distribuciones de clases comparten medias. El LDA lucha por crear un nuevo eje que separe linealmente ambas clases. Como resultado, LDA podría no discriminar eficazmente entre clases con propiedades estadísticas que se solapan. Por ejemplo, imaginemos un escenario en el que dos especies de flores tienen una longitud y una anchura de pétalos muy similares. El LDA puede tener dificultades para separar estas especies basándose únicamente en estas características. En este caso se prefieren técnicas alternativas, como los métodos de análisis discriminante no lineal.

- No adecuado para datos no etiquetados: El LDA se aplica como algoritmo de aprendizaje supervisado, es decir, clasifica o separa datos etiquetados. En cambio, el análisis de componentes principales (PCA), otra técnica de reducción de dimensiones, ignora las etiquetas de clase y preserva la varianza.

Soluciones relacionadas
IBM watsonx.ai

Entrene, valide, ajuste e implemente IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de nueva generación para desarrolladores de IA. Cree aplicaciones de IA en menos tiempo y con menos datos.

Descubra watsonx.ai
Soluciones de inteligencia artificial

Ponga la IA a trabajar en su negocio con la experiencia líder en IA del sector de IBM y junto a su cartera de soluciones.

Explore las soluciones de IA
Consultoría y servicios de IA

Reinvente las operaciones y flujos de trabajo críticos añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.

Explore los servicios de IA
Dé el siguiente paso

Obtenga acceso único a capacidades que abarcan el ciclo de vida de desarrollo de la IA. Produzca potentes soluciones de IA con interfaces intuitivas, flujos de trabajo y acceso a API y SDK estándar del sector.

Explore watsonx.ai Solicite una demostración en directo