¿Cómo seleccionar variables independientes a través de PCA?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hola a todos,
para poder desarrollar un modelo de predicción tengo la necesidad de filtrar con precisión las variables a utilizar. Específicamente, quiero usar variables que no estén correlacionadas. Una forma eficaz de hacer esto es aplicar PCA y seleccionar las variables que proporcionen un valor propio > 1,0. Si aplico este ejemplo al ejemplo de JMP ( Informe de componentes principales ), entonces seleccionaría solo 1 variable. En mis datos, la cantidad de variables con un valor propio> 1.0 es 9. Por lo tanto, sé sin dudas cuántas variables quiero. Lo que no me queda claro es cómo identificar esas variables en el informe JMP. Si, de nuevo, uso el ejemplo de JMP ( Informe de componentes principales ), ¿cómo identifico la variable (entre las seis) que proporciona un Egeinvalue de 4.7850?
Gracias,
David
Re: ¿Cómo seleccionar variables independientes a través de PCA?Sí, tiene usted razón.
Estaba pensando que podía seleccionar un conjunto de atributos entre los originales, mientras que con PCA puedo crear otros nuevos (usando los originales).
El tema está cerrado. ¡Muchas gracias por el soporte!
david
Re: ¿Cómo seleccionar variables independientes a través de PCA?David,
¿Estás buscando los vectores propios?Están disponibles en JMP (debajo del triángulo rojo).Recuerde que PCA es una técnica de "reducción de dimensión" en la que cada PC es una combinación de todas las variables.
Peter hace buenos comentarios sobre el uso de métodos alternativos para la selección de variables.
karen
Re: ¿Cómo seleccionar variables independientes a través de PCA?Probablemente esté perdiendo una cantidad decente de información con este método, pero esto debería poder extraer los 3 materiales con la "menor correlación" entre sí.Seguro que no serán ortogonales.Probablemente haya una mejor manera de enmarcar esto (algo así como lo que dice Peter) para obtener las respuestas que desea.
*Advertencia, esto es puramente inventado y no sé cómo suena.Sin embargo, tiene sentido en mi cabeza que hace lo que creo que estás pidiendo"
dt = Abierto ( "$Sample_DATA\Solubilidad.jmp" );
// hacer multivariante en todos los productos químicos
mv = multivariante (
Y(
: Nombre ( "1-octanol" ),
:Éter,
:Cloroformo,
:Benceno,
:Tetracloruro de carbono,
:Hexano
),
Método de estimación ( "En filas" ),
Formato de matriz ( "Cuadrado" ),
Matriz de diagrama de dispersión (
Elipses de densidad( 1 ),
Elipses sombreadas( 0 ),
Color de elipse ( 3 )
)
);
mv_r = mv << reporte ;
//hacer las correlaciones en una tabla de datos
dt_corr = mv_r[ MatrixBox ( 1 )]<< Convertir en tabla de datos ();
//resumir correlaciones para todos
dt_corr << Nueva columna ( "Correlación Total" , Fórmula(
Suma (
: Nombre ( "1-octanol" ),
:Éter,
:Cloroformo,
:Benceno,
:Tetracloruro de carbono,
:Hexano
)
));
//los tres más bajos son los "menos correlacionados" entre sí
materiales = :Fila << Obtener valores ;
mat = :CorrelaciónTotal << Obtener valores ;
arriba = orden ascendente (estera)[ 3 ]; // elige el valor para el 3er más bajo
what_you_want_maybe = materiales[ ubicación (alfombrilla<=superior)] //toma los 3 productos químicos de correlación total más bajos
Devoluciones:
{"1-Octanol", "Éter", "Cloroformo"}
Re: ¿Cómo seleccionar variables independientes a través de PCA?Hola Pedro,
su enfoque asume el uso de un modelo de predicción específico. Mi enfoque sería filtrar las variables para usar a través de PCA y luego usar un amplio espectro de modelos de predicción. Como tal, el filtrado (es decir, PCA) debería ser independiente del modelo de predicción en uso.
Por tu respuesta, puedo decir que eres un experto aquí. Debido a que no ha podido responder a mi pregunta de manera directa, deduciré que JMP no puede informar la lista de variables "vinculadas" a los valores propios.
Gracias de cualquier manera,
David
Re: ¿Cómo seleccionar variables independientes a través de PCA?David:
Dado que su atención se centra en última instancia en la construcción de un modelo predictivo, en lugar de utilizar PCA en las variables independientes como una herramienta de selección de variables para encontrar las variables independientes no correlacionadas, supongo que se centrará en el uso de mínimos cuadrados ordinarios, tal vez con un paso a paso agregado, ¿ha considerado usar un enfoque de modelado predictivo más directo que aproveche la estructura de correlación/covarianza entre las variables independientes para brindarle un modelo útil?
Lo que me temo es que si solo usa las variables no correlacionadas, puede estar arrojando algo de poder predictivo por la ventana sin saberlo realmente. Los mínimos cuadrados parciales y, si tiene JMP Pro, los procedimientos de regresión penalizados en la personalidad Ajustar modelo -> Regresión generalizada están hechos a medida para el escenario de modelado predictivo donde la correlación entre las variables independientes es sospechosa o evidente. Dos de las técnicas, Lasso y Elastic Net, tienen un aspecto de selección variable para su uso. Aquí hay un par de enlaces a la documentación en línea de JMP para estas dos plataformas:
Modelos de mínimos cuadrados parciales
Modelos de regresión generalizados
Re: ¿Cómo seleccionar variables independientes a través de PCA?Lamentablemente no es lo que busco. Suponga que en el ejemplo necesito identificar, entre las 6 variables, las 3 variables menos correlacionadas (cruzadas). ¿Cuales son? cloroformo, benceno y hexano?
Re: ¿Cómo seleccionar variables independientes a través de PCA?Si usa el botón de acceso rápido, debería poder "Guardar componentes principales" en la tabla de datos.Entonces se llamarán Prin1, Prin2, Prin3, etc...
El valor no corresponde verdaderamente a 1 de las seis variables.Es una fórmula que se ve así:

.
No estoy seguro de que esto sea exactamente lo que estabas preguntando, pero espero que te ayude.