es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo hacer PCA en un conjunto de datos extremadamente disperso

Tengo un conjunto de datos disperso que contiene 43600 características y 414800 muestras.
Quiero reducir las dimensiones a solo 50 características. Los datos serán de salida 414800*50 y también se obtendrán los coeficientes, la puntuación y la mu del PCA.
No puedo usar la función regular de PCA de MATLAB ya que es un conjunto de datos disperso y no puedo hacerlo manualmente con un bucle for o parfor porque es lento y no terminó de ejecutarse.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para conjuntos de datos dispersos, se recomienda utilizar PCA disperso en lugar de PCA regular. El PCA disperso es una técnica de reducción de dimensionalidad que produce un conjunto disperso de componentes principales, lo que significa que solo un pequeño subconjunto de características contribuye significativamente a cada componente. En MATLAB, puedes utilizar la función spca de la caja de herramientas de Estadísticas y Aprendizaje Automático para realizar PCA disperso en tu conjunto de datos.

    Para reducir las dimensiones a solo 50 características, puedes especificar el número de componentes en la función spca de la siguiente manera:

    numComponents = 50;
    [coeff, score, latent, tsquared, explained, mu] = spca(data, numComponents);
    

    Donde data es tu conjunto de datos dispersos con 414800 muestras y 43600 características. La salida tendrá dimensiones de 414800 x 50, que es lo que necesitas.

    Las variables de salida de la función spca son:
    coeff: La matriz de transformación dispersa que mapea las características originales a los componentes principales dispersos.
    score: Las puntuaciones de las muestras en los componentes principales dispersos.
    latent: La varianza explicada por cada componente principal disperso.
    tsquared: La estadística T^2 de Hotelling para cada muestra.
    explained: El porcentaje de varianza explicada por cada componente principal disperso.
    mu: La media de las columnas de data.

    Al utilizar la función spca, puedes obtener las dimensiones requeridas de tus datos sin la necesidad de bucles manuales que consumen mucho tiempo o utilizar la función PCA regular.

Comments are closed.