11 votos

Hace ICA requieren para el funcionamiento de la PCA en primer lugar?

He revisado una aplicación basada en papel diciendo que la aplicación de PCA antes de la aplicación de ICA (utilizando fastICA paquete). Mi pregunta es, ¿ ICA (fastICA) requieren de la PCA para ejecutarse en primer lugar?

Este documento menciona que

... también se argumenta que la pre-aplicación de PCA mejora ICA rendimiento por (1) descartar pequeños tirados autovalores antes de blanqueamiento y (2) la reducción de la complejidad computacional mediante la minimización de pares dependencias. PCA decorrelates los datos de entrada; el resto de los de orden superior, dependencias están separados por el ICA.

También otros papeles son la aplicación de PCA antes de ICA, por ejemplo, este.

Hay otros pros y contras para ejecutar PCA antes de ICA? Por favor proporcione la teoría con referencias.

10voto

James Kolpack Puntos 123

El fastICA enfoque requiere de un pre-whitening paso: los datos primero se transforman con la PCA, el cual conduce a una diagonal de la matriz de covarianza y, a continuación, cada dimensión se normaliza tal que la matriz de covarianza es igual a la matriz identidad (blanqueamiento).

Hay infinitas transformaciones de los datos que resultan en la identidad de la matriz de covarianza, y si las fuentes eran de Gauss que dejaría de allí (Gaussiana multivariante de las distribuciones, la media y la covarianza son suficientes estadísticas), en presencia de no-Gaussiano fuentes usted puede minimizar en cierta medida de la dependencia en el blanqueado de datos, por lo tanto usted busca una rotación de la blanqueado de datos que maximiza la independencia. FastICA logra esto usando teórico de la información de medidas y una iteración de punto fijo esquema.

Me gustaría recomendar el trabajo de Hyvärinen para obtener una comprensión más profunda del problema:

  • A. Hyvärinen. Rápido y Robusto de Punto Fijo de Algoritmos para el Análisis de Componentes Independientes. IEEE transactions on de Redes Neuronales 10(3):626-634, 1999.
  • A. Hyvärinen, J. Karhunen, E. Oja, El Análisis De Componentes Independientes, Wiley & Sons. 2001

Por favor, tenga en cuenta que haciendo PCA y haciendo de reducción de dimensiones no son exactamente la misma cosa: cuando usted tiene más observaciones (por señal) de las señales, se puede realizar un PCA de retener el 100% de la varianza explicada, y luego continuar con el blanqueamiento y la iteración de punto fijo para obtener una estimación de las componentes independientes. Si debe realizar la reducción de dimensiones, o no, es altamente dependiente del contexto, y se basa en el modelado de los supuestos y la distribución de los datos.

4voto

Chris Pick Puntos 76

La aplicación de PCA a sus datos tiene el único efecto de la rotación de la original de los ejes de coordenadas. Es una transformación lineal, exactamente como, por ejemplo, la transformada de Fourier. Por lo tanto, como tal, lo que realmente puede no hacer nada a sus datos.

Sin embargo, los datos representados en el nuevo PCA espacio tiene algunas propiedades interesantes. Siguientes coordenadas en rotación de la PCA, se pueden descartar algunas dimensiones basadas en criterios establecidos, tales como el porcentaje de varianza total explicada por los nuevos ejes. Dependiendo de su señal, usted puede conseguir una cantidad considerable de reducción dimensional por este método y este sería, sin duda aumentar el rendimiento de los siguientes ICA. Haciendo un ICA sin descartar ninguna de las PCA componentes no tendrá ningún impacto en el resultado de la siguiente ICA.

Además, también se puede fácilmente blanquear los datos en la PCA de espacio debido a la ortogonalidad de los ejes de coordenadas. Blanqueamiento tiene el efecto de igualación de desviaciones en todas las dimensiones. Yo diría que esto es necesario para una ICA para que funcione correctamente. De lo contrario, sólo unos pocos PCA componentes con mayores variaciones dominaría ICA resultados.

Yo no realmente ver cualquier inconvenientes para PCA basado en el preproceso antes de ICA.

Giancarlo de la cites ya la mejor referencia para ICA...

3voto

Greg Ver Steeg Puntos 181

La derivación del algoritmo fastICA sólo requiere el blanqueamiento en un solo paso. Primero, tienes que elegir la dirección de el paso (como un gradiente de la pendiente) y esto no requiere de blanqueado de datos. Entonces, tenemos que seleccionar el tamaño de paso, que depende de la inversa de la de Hess. Si los datos son blanqueados, a continuación, este Hess es diagonal y invertible.

Así que es necesario? Si usted acaba de arreglar el tamaño de paso constante (por lo tanto no requiere de blanqueamiento) a la que tendría estándar de gradiente de la pendiente. Gradiente de descenso con un fijo pequeño tamaño de paso normalmente convergen, pero posiblemente mucho más lento que el método original. Por otro lado, si usted tiene una gran matriz de datos, a continuación, el blanqueamiento puede ser bastante caro. Usted puede ser mejor incluso con la más lenta convergencia que recibe, sin blanquear.

Me sorprendió no ver a la mención de esto en la literatura. Un documento en el que se describe el problema: El nuevo Rápido-ICA Algoritmos para la Separación Ciega de fuentes sin Prewhitening por Jimin Vosotros y Ting Huang.

Ellos sugieren que un poco de la opción más barata para el blanqueamiento. Me gustaría que incluyó la comparación obvia de la simple ejecución de ICA sin blanquear como una línea de base, pero ellos no. Como uno más de los datos de punto he intentado correr fastICA sin blanquear en juguete de los problemas y funcionó bien.

Actualización: otra buena referencia de abordar el blanqueamiento está aquí: robusto análisis de componentes independientes, Zaroso y Comon. Ellos proporcionan algoritmos que no requieren de blanqueamiento.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X