chi-squared-test – ¿Cómo funciona exactamente la selección de características de Chi-cuadrado?

Pregunta:

Sé que para cada par de clases de características, el valor de la estadística de chi-cuadrado se calcula y se compara con un umbral.

Aunque estoy un poco confundido. Si hay características de $ m $ y clases de $ k $, ¿cómo se construye la tabla de contingencia? ¿Cómo se decide qué funciones conservar y cuáles eliminar?

Cualquier aclaración será muy apreciada. Gracias por adelantado

Respuesta:

La prueba de chi-cuadrado es una prueba estadística de independencia para determinar la dependencia de dos variables. Comparte similitudes con el coeficiente de determinación, R². Sin embargo, la prueba de chi-cuadrado solo se aplica a datos categóricos o nominales, mientras que R² solo se aplica a datos numéricos.

De la definición de chi-cuadrado podemos deducir fácilmente la aplicación de la técnica de chi-cuadrado en la selección de características. Suponga que tiene una variable de destino (es decir, la etiqueta de clase) y algunas otras características (variables de características) que describen cada muestra de los datos. Ahora, calculamos las estadísticas de chi-cuadrado entre cada variable característica y la variable objetivo y observamos la existencia de una relación entre las variables y el objetivo. Si la variable de destino es independiente de la variable de característica, podemos descartar esa variable de característica. Si son dependientes, la variable característica es muy importante.

Los detalles matemáticos se describen aquí: http://nlp.stanford.edu/IR-book/html/htmledition/feature-selectionchi2-feature-selection-1.html

Para las variables continuas, se puede aplicar chi-cuadrado después de "Agrupar" las variables.

Un ejemplo en R, copiado descaradamente de FSelector

# Use HouseVotes84 data from  mlbench package
library(mlbench)# For data
library(FSelector)#For method
data(HouseVotes84)

#Calculate the chi square statistics 
weights<- chi.squared(Class~., HouseVotes84)

# Print the results 
print(weights)

# Select top five variables
subset<- cutoff.k(weights, 5)

# Print the final formula that can be used in classification
f<- as.simple.formula(subset, "Class")
print(f)

No está relacionado con tanto en la selección de funciones, pero el video a continuación analiza el chisquare en detalle https://www.youtube.com/watch?time_continue=5&v=IrZOKSGShC8

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım