Como funciona exatamente a seleção de recursos do qui-quadrado?

15

Eu sei que, para cada par de classe de recurso, o valor da estatística do qui-quadrado é calculado e comparado com um limite.

Estou um pouco confuso embora. Se existem características ek classes, como construir a tabela de contingência? Como alguém decide quais recursos manter e quais remover?mk

Qualquer esclarecimento será muito apreciado. desde já, obrigado

user721975
fonte
1
Quaisquer pensamentos / indicações sobre este alguém?
user721975

Respostas:

5

O teste do qui-quadrado é um teste estatístico de independência para determinar a dependência de duas variáveis. Compartilha semelhanças com coeficiente de determinação, R². No entanto, o teste do qui-quadrado é aplicável apenas a dados categóricos ou nominais, enquanto R² é aplicável apenas a dados numéricos.

A partir da definição de qui-quadrado, podemos deduzir facilmente a aplicação da técnica de qui-quadrado na seleção de recursos. Suponha que você tenha uma variável de destino (ou seja, o rótulo da classe) e alguns outros recursos (variáveis ​​de recurso) que descrevam cada amostra dos dados. Agora, calculamos estatísticas do qui-quadrado entre cada variável de recurso e a variável de destino e observamos a existência de um relacionamento entre as variáveis ​​e o alvo. Se a variável de destino for independente da variável de recurso, podemos descartá-la. Se eles são dependentes, a variável de recurso é muito importante.

Os detalhes matemáticos são descritos aqui: http://nlp.stanford.edu/IR-book/html/htmledition/feature-selectionchi2-feature-selection-1.html

Para variáveis ​​contínuas, o qui-quadrado pode ser aplicado após "Binning" as variáveis.

Um exemplo em R, copiado descaradamente do 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)

Não está relacionado a muito na seleção de recursos, mas o vídeo abaixo discute o chisquare em detalhes https://www.youtube.com/watch?time_continue=5&v=IrZOKSGShC8

discípulo
fonte