logo

Incrustación localmente lineal en el aprendizaje automático

LLE (Incrustación localmente lineal) es un enfoque no supervisado diseñado para transformar datos de su espacio original de alta dimensión en una representación de menor dimensión, al mismo tiempo que se esfuerza por conservar las características geométricas esenciales de la estructura de características no lineal subyacente. LLE opera en varios pasos clave:

  • En primer lugar, construye un gráfico de vecinos más cercanos para capturar estas relaciones locales. Luego, optimiza los valores de peso para cada punto de datos, con el objetivo de minimizar el error de reconstrucción al expresar un punto como una combinación lineal de sus vecinos. Esta matriz de pesos refleja la fuerza de las conexiones entre puntos.
  • A continuación, LLE calcula una representación de dimensiones inferiores de los datos al encontrar vectores propios de una matriz derivada de la matriz de peso. Estos vectores propios representan las direcciones más relevantes en el espacio reducido. Los usuarios pueden especificar la dimensionalidad deseada para el espacio de salida y LLE selecciona los vectores propios superiores en consecuencia.

A modo de ilustración, consideremos una Conjunto de datos de rollo suizo , que es inherentemente no lineal en su espacio de alta dimensión. LLE, en este caso, trabaja para proyectar esta estructura compleja en un plano de dimensiones inferiores, preservando sus propiedades geométricas distintivas durante todo el proceso de transformación.



Tabla de contenidos

Implementación matemática del algoritmo LLE

La idea clave de LLE es que localmente, en las proximidades de cada punto de datos, los datos se encuentran aproximadamente en un subespacio lineal. LLE intenta desplegar o desenrollar los datos preservando estas relaciones lineales locales.

formatear cadena java

Aquí hay una descripción matemática del algoritmo LLE:

Minimizar: suma_ {i} | x{_i} - sum _{j} w _{ij} x{_j}|^2



Sujeto a: sum {_j} w _{ij} = 1

Dónde:

  • Xirepresenta el i-ésimo punto de datos.
  • Enyoson los pesos que minimizan el error de reconstrucción para el punto de datos xiutilizando a sus vecinos.

Su objetivo es encontrar una representación de datos de dimensiones inferiores preservando al mismo tiempo las relaciones locales. La expresión matemática para LLE implica minimizar el error de reconstrucción de cada punto de datos expresándolo como una suma ponderada de sus k vecinos más cercanos 'contribuciones. Esta optimización está sujeta a restricciones que garantizan que los pesos sumen 1 para cada punto de datos. La incrustación localmente lineal (LLE) es una técnica de reducción de dimensionalidad utilizada en el aprendizaje automático y el análisis de datos. Se centra en preservar las relaciones locales entre puntos de datos al asignar datos de alta dimensión a un espacio de menor dimensión. Aquí explicaremos el algoritmo LLE y sus parámetros.



Algoritmo de incrustación localmente lineal

El algoritmo LLE se puede dividir en varios pasos:

  • Selección de barrio: Para cada punto de datos en el espacio de alta dimensión, LLE identifica sus k vecinos más cercanos. Este paso es crucial porque LLE supone que cada punto de datos puede aproximarse bien mediante una combinación lineal de sus vecinos.
  • Construcción de matriz de peso: LLE calcula un conjunto de pesos para cada punto de datos para expresarlo como una combinación lineal de sus vecinos. Estos pesos se determinan de tal manera que se minimice el error de reconstrucción. A menudo se utiliza la regresión lineal para encontrar estos pesos.
  • Preservación de la estructura global: Después de construir la matriz de ponderaciones, LLE pretende encontrar una representación de dimensiones inferiores de los datos que conserve mejor las relaciones lineales locales. Para ello, busca un conjunto de coordenadas en el espacio de dimensiones inferiores para cada punto de datos que minimice una función de costo. Este función de costo Evalúa qué tan bien cada punto de datos puede ser representado por sus vecinos.
  • Incrustación de salida: Una vez que se completa el proceso de optimización, LLE proporciona la representación final de dimensiones inferiores de los datos. Esta representación captura la estructura esencial de los datos al tiempo que reduce su dimensionalidad.

Parámetros en el algoritmo LLE

LLE tiene algunos parámetros que influyen en su comportamiento:

  • k (Número de Vecinos): Este parámetro determina cuántos vecinos más cercanos se consideran al construir la matriz de pesos. Una k mayor captura relaciones más globales pero puede introducir ruido. Una k más pequeña se centra en las relaciones locales pero puede ser sensible a los valores atípicos. Seleccionar un valor apropiado para k es esencial para el éxito del algoritmo.
  • Dimensionalidad del espacio de salida: Puede especificar la dimensionalidad del espacio de dimensiones inferiores al que se asignarán los datos. A menudo, esto se elige en función de los requisitos del problema y del equilibrio entre la complejidad computacional y la preservación de la información.
  • Métrica de distancia: LLE se basa en una métrica de distancia para definir la proximidad entre puntos de datos. Las opciones comunes incluyen distancia euclidiana, distancia de Manhattan o funciones de distancia personalizadas. La elección de la métrica de distancia puede afectar los resultados.
  • Regularización (Opcional): En algunos casos, se agregan términos de regularización a la función de costos para evitar el sobreajuste. La regularización puede resultar útil cuando se trata de datos ruidosos o cuando el número de vecinos es elevado.
  • Algoritmo de optimización (opcional): LLE a menudo utiliza técnicas de optimización como Valor singular de descomposición (SVD) o métodos de vectores propios para encontrar la representación de dimensiones inferiores. Estos métodos de optimización pueden tener sus propios parámetros que se pueden ajustar.

LLE (incrustación localmente lineal) representa un avance significativo en el análisis estructural, superando las técnicas tradicionales de modelado de densidad como las locales. PCA o mezclas de analizadores factoriales. La limitación de los modelos de densidad radica en su incapacidad para establecer consistentemente un conjunto de coordenadas globales capaces de incorporar observaciones en toda la variedad estructural. En consecuencia, resultan inadecuados para tareas como generar proyecciones de baja dimensión del conjunto de datos original. Estos modelos destacan únicamente en la identificación de características lineales, como se muestra en la imagen a continuación. Sin embargo, no logran capturar patrones curvos intrincados, una capacidad inherente al LLE.

Eficiencia computacional mejorada con LLE. LLE ofrece una eficiencia computacional superior debido a su manejo de matrices dispersas, superando a otros algoritmos.

Implementación de incrustación localmente lineal

Importación de bibliotecas

Python3

#importing Libraries> import> numpy as np> import> matplotlib.pyplot as plt> from> sklearn.datasets>import> make_swiss_roll> from> sklearn.manifold>import> LocallyLinearEmbedding>
>
>

El código comienza importando las bibliotecas necesarias, incluidas numpy, matplotlib.pyplot , make_swiss_roll de sklearn.datasets y LocallyLinearEmbedding de sklearn.manifold .

Generación de un conjunto de datos sintéticos (rollo suizo)

Python3

# Code for Generating a synthetic dataset (Swiss Roll)> n_samples>=> 1000> # Define the number of neighbors for LLE> n_neighbors>=> 10> X, _>=> make_swiss_roll(n_samples>=>n_samples)>
>
>

Genera un conjunto de datos sintéticos que se asemeja a un Swiss Roll utilizando la función make_swiss_roll de scikit-learn.

n_samples especifica la cantidad de puntos de datos que se generarán.
n_neighbors define el número de vecinos utilizados en el algoritmo LLE.

Aplicación de incrustación localmente lineal (LLE)

Python3

# Including Locally Linear Embedding> lle>=> LocallyLinearEmbedding(n_neighbors>=>n_neighbors, n_components>=>2>)> X_reduced>=> lle.fit_transform(X)>
>
>

Se crea una instancia del algoritmo LLE con LocallyLinearEmbedding. El parámetro n_neighbors determina la cantidad de vecinos a considerar durante el proceso de incrustación.

Luego, el algoritmo LLE se ajusta a los datos originales X utilizando el ajuste_transformación método. Este paso reduce el conjunto de datos a dos dimensiones (n_components=2).

Visualización de los datos originales y reducidos

Python3

# Code for Visualizing the original Versus reduced data> plt.figure(figsize>=>(>12>,>6>))> plt.subplot(>121>)> plt.scatter(X[:,>0>], X[:,>1>], c>=>X[:,>2>], cmap>=>plt.cm.Spectral)> plt.title(>'Original Data'>)> plt.xlabel(>'Feature 1'>)> plt.ylabel(>'Feature 2'>)> plt.subplot(>122>)> plt.scatter(X_reduced[:,>0>], X_reduced[:,>1>], c>=>X[:,>2>], cmap>=>plt.cm.Spectral)> plt.title(>'Reduced Data (LLE)'>)> plt.xlabel(>'Component 1'>)> plt.ylabel(>'Component 2'>)> plt.tight_layout()> plt.show()>
>
>

Producción:


Incrustación localmente lineal



javamvc

En la segunda subtrama, los datos reducidos obtenidos de LLE (X_reduced) se visualizan de manera similar a los datos originales. El color de los puntos de datos todavía está determinado por la tercera característica de los datos originales (X[:, 2]). plt.tight_layout() La función se utiliza para garantizar un espacio adecuado entre las subtramas.

Ventajas de LLE

El método de reducción de dimensionalidad conocido como incrustación localmente lineal (LLE) tiene muchos beneficios para el procesamiento y la visualización de datos. Los siguientes son los principales beneficios de LLE:

  • Preservación de estructuras locales : LLE es excelente para mantener las relaciones o estructuras locales dentro de los datos. Capta con éxito la geometría inherente de variedades no lineales manteniendo distancias por pares entre puntos de datos cercanos.
  • Manejo de la no linealidad : LLE tiene la capacidad de capturar patrones y estructuras no lineales en los datos, en contraste con técnicas lineales como Análisis de componentes principales (PCA). Cuando se trabaja con conjuntos de datos complicados, curvos o retorcidos, resulta especialmente útil.
  • Reducción de dimensionalidad : LLE reduce la dimensionalidad de los datos preservando sus propiedades fundamentales. Especialmente cuando se trabaja con conjuntos de datos de alta dimensión, esta reducción simplifica la presentación, la exploración y el análisis de los datos.

Desventajas de LLE

  • Maldición de dimensionalidad : LLE puede experimentar la maldición de dimensionalidad cuando se utiliza con datos de dimensiones extremadamente altas, al igual que muchos otros enfoques de reducción de dimensionalidad. El número de vecinos necesarios para capturar interacciones locales aumenta a medida que lo hace la dimensionalidad, lo que potencialmente aumenta el costo computacional del enfoque.
  • Requisitos de memoria y computacionales : Para grandes conjuntos de datos, la creación de una matriz de adyacencia ponderada como parte de LLE puede consumir mucha memoria. La etapa de descomposición de valores propios también puede resultar agotadora desde el punto de vista computacional para grandes conjuntos de datos.
  • Datos atípicos y ruidosos : LLE es susceptible a anomalías y puntos de datos inestables. La calidad de la incrustación puede verse afectada y las relaciones lineales locales pueden verse distorsionadas por valores atípicos.