PCA y LDA entre los métodos de reducción de dimensionalidad más utilizados
PCA esencialmente toma la dirección de varianza máxima como característica principal y "descorrelaciona" los datos en direcciones ortogonales, incluso si los datos no están correlacionados en diferentes direcciones ortogonales. La dimensión con la mayor variación es el componente principal.
PCA es un método común de reducción de dimensionalidad lineal que asigna datos de alta dimensión a datos de baja dimensión mediante proyección lineal. La expectativa es que en la dimensión de proyección, cuanto mayor sea la varianza de la nueva característica en sí, mejor. Cuanto mayor sea la varianza, más efectiva será la característica y menor será la correlación entre las nuevas características obtenidas.
La operación específica del algoritmo PCA es centrar todas las muestras, calcular la matriz de covarianza de las muestras, luego realizar la descomposición de valores propios en la matriz de covarianza y tomar los n valores propios más grandes correspondientes a los vectores propios para construir una matriz de proyección.
Otro ejemplo:
Aquí hay un ejemplo sencillo del proceso PCA.
Supongamos que tenemos 10 objetos 2D (2.5,2.4), (0.5,0.7), (2.2,2.9), (1.9,2.2), (3.1,3.0), (2.3,2.7), ( 2,1.6), (1,1.1), (1.5,1.6), (1.1,0.9) los conjuntos de datos deben degradarse a 1D utilizando las funciones PCA.
Primero, centramos la muestra, donde la media de la muestra es (1,81, 1,91), y todas las muestras se restan de este vector de media, es decir, el conjunto de datos centrado es (0,69, 0,49) , (-1,31, -1,21), (0,39, 0,99), (0,09, 0,29), (1,29, 1,09), (0,49, 0,79), (0,19, -0,31), (-0,81, -0,81), (- 0,31, -0,31), (-0,71, -1,01).
Ahora comenzamos a encontrar la matriz de covarianza de la muestra. Dado que nuestros datos son bidimensionales, la matriz de covarianza es:
Para nuestros datos, la matriz de covarianza es:
. p>
El valor propio obtenido es (0.0490833989, 1.28402771), y el vector propio correspondiente es:
Dado que el valor propio k=1 más grande es 1.28402771, el vector propio de k=1 es Entonces tenemos W=
Proyectamos todos los conjuntos de datos y obtenemos los 10 conjuntos de datos unidimensionales después de la reducción de dimensionalidad de PCA: (-0.827970186, 1.77758033, -0.992197494, -0.274210416, - 1.67580142, -0.912949103, 0.0991094375, 1.14457216, 0.438046137 , 1.22382056)
En el algoritmo PCA anterior, asumimos que hay un hiperplano lineal que puede proyectar los datos. Pero a veces los datos no son lineales y no se pueden dimensionar directamente mediante PCA. Aquí, necesitamos usar la misma idea de función central que la máquina de vectores de soporte, primero mapear el conjunto de datos de n dimensiones a N>n de alta dimensión linealmente separable, y luego bajar de N dimensiones a dimensiones bajas n', donde el número de dimensiones Satisface n' El análisis de componentes principales utilizando la función del núcleo generalmente se denomina análisis de componentes principales del núcleo (KPCA, en lo sucesivo denominado KPCA), y la función del núcleo también se denomina función del núcleo. PCA, en adelante denominada KPCA. Supongamos que los datos en un espacio de alta dimensión se generan mediante el mapeo de datos en un espacio de n dimensiones. Luego, para la descomposición propia del espacio n-dimensional: El método de mapeo es: Realizando una descomposición de valores propios en la matriz de covarianza en el espacio de alta dimensión Luego, la reducción de dimensionalidad se realiza utilizando el mismo método que PCA. En términos generales, no es necesario calcular explícitamente el mapeo, pero se realiza mediante funciones del núcleo cuando se requiere el cálculo. Dado que KPCA requiere operaciones de funciones del núcleo, su complejidad computacional es mucho mayor que la de PCA. Aquí se resume el algoritmo PCA. Como método de reducción de dimensionalidad del aprendizaje no supervisado, solo requiere la descomposición de valores propios para comprimir y eliminar el ruido de los datos. Por lo tanto, se utiliza ampliamente en escenarios prácticos. Para superar algunas deficiencias de PCA, existen muchas variaciones de PCA, como KPCA en la Sección 6, que se utiliza para resolver problemas de reducción de dimensionalidad no lineal; PCA incremental es un método de PCA incremental que se utiliza para resolver problemas de limitación de memoria; un método PCA utilizado para resolver problemas de reducción de dimensionalidad de datos dispersos. Las principales ventajas del algoritmo PCA son: LDA (Análisis discriminante lineal) es otro método de reducción de dimensionalidad supervisado comúnmente utilizado. LDA tiene una gama muy amplia de aplicaciones en el campo del reconocimiento de patrones (como reconocimiento facial, reconocimiento de barcos, etc.), por lo que es necesario comprender los principios de su algoritmo. Cabe señalar que LDA aquí es diferente del texto. Es diferente de LDA (Latent Dirichlet Allocation), que es un modelo de tema para procesar documentos. LDA es una técnica de aprendizaje supervisado para la reducción de dimensionalidad, lo que significa que cada muestra en su conjunto de datos es. diferente Hay una salida de categoría. Esto es diferente de PCA, que es una técnica de reducción de dimensionalidad no supervisada que no considera la salida de la categoría de muestra. La idea de LDA se puede resumir en una. frase: "Después de la proyección, la varianza dentro de la clase se minimiza y la varianza entre clases se maximiza". ¿Qué significa esto? Queremos una proyección de baja dimensión de los datos, y después de la proyección, queremos que los puntos proyectados de cada clase estén lo más cerca posible y que la distancia entre los centros de clases de diferentes clases sea lo más grande posible. Esto todavía puede ser un poco abstracto, echemos un vistazo. El caso más simple, asumiendo que tenemos dos clases de datos, rojo y azul, como se muestra a continuación, muestra que las características de estos datos son bidimensionales. Necesitamos proyectar estos datos en una línea recta unidimensional para que la proyección. Los puntos de cada tipo de datos están lo más cerca posible y la distancia entre los tipos de centros de datos rojo y azul es lo más cercana posible. Lo anterior es el proceso del algoritmo de reducción de dimensionalidad utilizando LDA. De hecho, además de la reducción de dimensionalidad, la idea básica de la clasificación LDA es suponer que los datos de muestra de cada categoría se ajustan a la distribución gaussiana, de modo que después de usar LDA para la proyección, podamos usar la estimación de máxima verosimilitud para calcular. la media y la varianza de los datos proyectados de cada categoría, y luego obtener la función de densidad de probabilidad de distribución gaussiana de la categoría. Cuando llega una nueva muestra, podemos proyectarla y luego llevar las características de la muestra proyectada a la distribución gaussiana. función de densidad de probabilidad de cada categoría para calcular la probabilidad de que pertenezca a esa categoría. La categoría con mayor probabilidad es la categoría predicha. Se utiliza LDA y PCA para la reducción de dimensionalidad. , por lo que vale la pena comparar las similitudes y diferencias entre los dos en la reducción de dimensionalidad. Como se puede ver en la figura siguiente, bajo ciertas condiciones de distribución de datos, el efecto de reducción de dimensionalidad de LDA es mejor que ese. de PCA Por supuesto, bajo ciertas distribuciones de datos específicas, PCA tiene un mejor efecto de reducción de dimensionalidad que LDA, como se muestra en la siguiente figura: El algoritmo LDA se puede utilizar cualquiera de los dos. También se puede utilizar para la reducción de dimensionalidad, pero por ahora se utiliza principalmente para la reducción de dimensionalidad. En nuestro análisis de datos relacionados con el reconocimiento de imágenes, LDA es una herramienta poderosa. Las ventajas y desventajas del algoritmo LDA se resumen a continuación. /p> Las principales ventajas del algoritmo LDA son: Referencia: Blog del Sr. Liu Jianping