2014-07-18 2 views
6

Sto cercando di capire cosa fa f_regression() nel pacchetto di selezione delle caratteristiche. (http://scikit-learn.org/stable/modules/generated/sklearn.feature_selection.f_regression.html#sklearn.feature_selection.f_regression)Scikit-learn (Python): cosa calcola f_regression()?

Secondo la documentazione, il primo passo per f_regression è la seguente:

"1. the regressor of interest and the data are orthogonalized wrt constant regressors." 

Cosa significa questa linea, esattamente? Quali sono questi regressori costanti?

Grazie!

risposta

6

Significa che la media viene sottratta su entrambe le variabili.

Un regressore costante è un vettore pieno di uno. Ciò che questo vettore può spiegare nei tuoi dati viene quindi sottratto. Ciò porta ad un vettore con somma zero, cioè una variabile centrata.

Ciò che f1_regression calcola essenzialmente è la correlazione, un prodotto scalare tra le variabili centrate e opportunamente ridimensionate.

Il punteggio risultante è una funzione di questo valore e dei gradi di libertà, vale a dire la dimensionalità dei vettori. Più alto è il punteggio, più probabilmente le variabili sono associate.