Casa Finanza personale Come usare Python per selezionare le variabili corrette per Data Science - dummies

Come usare Python per selezionare le variabili corrette per Data Science - dummies

Sommario:

Video: How to Build and Install Hadoop on Windows 2024

Video: How to Build and Install Hadoop on Windows 2024
Anonim

La selezione delle variabili corrette in Python può migliorare il processo di apprendimento nella scienza dei dati riducendo la quantità di rumore (inutile informazioni) che possono influenzare le stime dello studente. La selezione variabile, quindi, può ridurre efficacemente la varianza delle previsioni. Per coinvolgere solo le variabili utili nell'allenamento e tralasciare quelle ridondanti, puoi utilizzare queste tecniche:

  • Approccio univariato: Seleziona le variabili più correlate al risultato obiettivo.

  • Approccio avido o arretrato: Conserva solo le variabili che puoi rimuovere dal processo di apprendimento senza danneggiare le sue prestazioni.

Selezione per misure univariate

Se si decide di selezionare una variabile in base al suo livello di associazione con la sua destinazione, la classe SelectPercentile fornisce una procedura automatica per mantenere solo una determinata percentuale delle migliori caratteristiche associate. Le metriche disponibili per l'associazione sono

  • f_regression: usato solo per obiettivi numerici e basato su prestazioni di regressione lineare.

  • f_classif: usato solo per obiettivi categoriali e basato sul test statistico Analisi della varianza (ANOVA).

  • chi2: esegue la statistica chi-quadrato per obiettivi categoriali, che è meno sensibile alla relazione non lineare tra la variabile predittiva e il suo bersaglio.

Quando si valutano i candidati per un problema di classificazione, f_classif e chi2 tendono a fornire lo stesso insieme di variabili principali. È comunque una buona pratica testare le selezioni da entrambe le metriche dell'associazione.

Oltre all'applicazione di una selezione diretta delle associazioni percentili più elevate, SelectPercentile può anche classificare le variabili migliori per rendere più facile decidere a quale percentile escludere una funzione dalla partecipazione al processo di apprendimento. La classe SelectKBest è analoga nella sua funzionalità, ma seleziona le prime k variabili, dove k è un numero, non un percentile.

da sklearn. feature_selection importa SelectPercentile da sklearn. feature_selection import f_regression Selector_f = SelectPercentile (f_regression, percentile = 25) Selector_f. fit (X, y) per n, s in zip (boston. feature_names, Selector_f. scores_): print 'F-score:% 3. 2ft per feature% s '% (s, n) Punteggio F: 88. 15 per feature CRIM F-score: 75. 26 per feature ZN F-score: 153. 95 per feature INDUS F-score: 15. 97 per funzione CHAS F-score: 112. 59 per feature NOX F-score: 471. 85 per feature RM F-score: 83.F-score: 33. 58 per feature DIS F-score: 85. 91 per feature FF F-score: 141. 76 per feature F-score TAX: 175. 11 per feature PTRATIO F-score: 63. 05 per feature F F-score: 601. 62 per feature LSTAT

L'utilizzo del livello di output di associazione consente di scegliere le variabili più importanti per il proprio modello di apprendimento automatico, ma è necessario prestare attenzione a questi possibili problemi: > Alcune variabili con alta associazione potrebbero anche essere altamente correlate, introducendo informazioni duplicate, che agiscono come rumore nel processo di apprendimento.

  • Alcune variabili possono essere penalizzate, specialmente quelle binarie (variabili che indicano uno stato o una caratteristica usando il valore 1 quando è presente, 0 quando non lo è). Ad esempio, si noti che l'output mostra la variabile binaria CHAS come la meno associata alla variabile target (ma si sa dagli esempi precedenti che è influente dalla fase di convalida incrociata).

  • Il processo di selezione univariata può darti un vantaggio reale quando hai un numero enorme di variabili tra cui scegliere e tutti gli altri metodi diventano irrealizzabili dal punto di vista computazionale. La procedura migliore consiste nel ridurre il valore di SelectPercentile della metà o più delle variabili disponibili, ridurre il numero di variabili in un numero gestibile e conseguentemente consentire l'uso di un metodo più sofisticato e più preciso come una ricerca avida.

Utilizzo di una ricerca golosa

Quando si utilizza una selezione univariata, è necessario decidere autonomamente quante variabili tenere: la selezione di avidità riduce automaticamente il numero di funzioni coinvolte in un modello di apprendimento sulla base del loro effettivo contributo al prestazione misurata dalla misura di errore.

La classe RFECV, adattando i dati, può fornire informazioni sul numero di funzioni utili, segnalarle all'utente e trasformare automaticamente i dati X, mediante la trasformazione del metodo, in un set di variabili ridotto, come mostrato in il seguente esempio:

da sklearn. select_selection import RFECV selector = RFECV (stimatore = regressione, cv = 10, scoring = "mean_squared_error") selettore. fit (X, y) print ("Numero ottimale di funzioni:% d"% selettore. n_features_) Numero ottimale di funzioni: 6

È possibile ottenere un indice per l'insieme di variabili ottimali chiamando l'attributo support_ dal RFECV classe dopo averlo adattato.

stampa boston. feature_names [selettore. support_] ['CHAS "NOX" RM "DIS" PTRATIO "LSTAT']

Si noti che CHAS è ora incluso tra le funzionalità più predittive, che contrasta con il risultato della ricerca univariata.Il metodo RFECV può rilevare se una variabile è importante, indipendentemente dal fatto che sia binario, categoriale o numerico, perché valuta direttamente il ruolo svolto dalla caratteristica nella previsione.

Il metodo RFECV è sicuramente più efficiente rispetto all'approccio -univariato, perché considera le caratteristiche altamente correlate ed è ottimizzato per ottimizzare la misura di valutazione (che di solito non è Chi-quadrato o F-score). Essendo un processo avido, è computazionalmente impegnativo e può solo approssimare il miglior set di predittori.

Poiché RFECV impara il miglior insieme di variabili dai dati, la selezione può essere più adatta, che è ciò che accade con tutti gli altri algoritmi di apprendimento automatico. Provare RFECV su diversi campioni dei dati di allenamento può confermare le migliori variabili da utilizzare.

Come usare Python per selezionare le variabili corrette per Data Science - dummies

Scelta dell'editore

Comprensione dei livelli di accesso e dei ruoli in Microsoft CRM - dummies

Comprensione dei livelli di accesso e dei ruoli in Microsoft CRM - dummies

I privilegi che vi sono assegnati regolano le funzioni che è possibile eseguire su particolari record o oggetti. I tuoi livelli di accesso determinano a quale record si applicano questi privilegi. In altre parole, sebbene i tuoi privilegi possano includere la possibilità di eliminare i record account, è il tuo livello di accesso che determina esattamente quali record puoi eliminare. ...

Scegli o cambia utenti in NaturallySpeaking - dummies

Scegli o cambia utenti in NaturallySpeaking - dummies

Quando lanci Dragon NaturallySpeaking, potrebbe chiederti di scegliere un utente . Se non ti chiede, non ti preoccupare. Probabilmente hai un solo utente: tu. Ricorda che quando hai configurato NaturallySpeaking per la prima volta, hai creato e nominato un profilo utente e poi hai addestrato NaturallySpeaking su come l'utente (tu) ha suonato. Ora, quando avvii ...

Aggiungi una fonte di dettatura al tuo profilo corrente - dummies

Aggiungi una fonte di dettatura al tuo profilo corrente - dummies

La tua voce registrata è così diversa dalla tua voce dal vivo che devi addestrare Dragon NaturallySpeaking a riconoscerlo. Allenarsi NaturallySpeaking per capire la tua voce registrata è come allenarlo per dettatura diretta, con una differenza: leggi il materiale di allenamento nel tuo registratore, trasferisci il dettato sul PC e poi ...

Scelta dell'editore

Mantieni il tuo cervello affilato disegnando - manichini

Mantieni il tuo cervello affilato disegnando - manichini

Se non hai mai pensato a te stesso come una persona creativa, è tempo per un cambio di pensiero. Ogni persona ha il potenziale per sbloccare un aspetto della creatività. Ecco alcuni suggerimenti per aiutarti ad andare avanti. Includono suggerimenti su semplici attività di disegno per iniziare - ma se ritieni che ...

Come usare la tolleranza come tecnica di gestione della rabbia - manichini

Come usare la tolleranza come tecnica di gestione della rabbia - manichini

La rabbia è l'emozione dell'intolleranza che può essere gestito attraverso la pratica della tolleranza. Intolleranza significa che non accetti il ​​punto di vista o il comportamento di un'altra persona. La rabbia dice che pensi di avere ragione e che l'altra persona ha torto. Non può essere più semplice di così. La rabbia difende l'ascoltatore da qualsiasi cambiamento nel suo modo di pensare. ...

Migliorare la gestione della rabbia con l'esercizio - manichini

Migliorare la gestione della rabbia con l'esercizio - manichini

Una quantità di prove scientifiche supporta il fatto che l'esercizio fisico regolare migliora gli stati d'animo e può aiutarti a ridurre la tua rabbia. Se scegli di allenarti regolarmente, puoi aspettarti di Concentrare meglio Dormire meglio Mostra un maggiore interesse per il sesso Avere più energia Sii meno teso Goditi la vita più in generale Sento meno alienato ...

Scelta dell'editore

Caratteristiche della Canon Digital Rebel XTi / 400D - manichini

Caratteristiche della Canon Digital Rebel XTi / 400D - manichini

La tua nuova Canon Digital Rebel XTi / 400D ha una serie di funzioni e le seguenti figure le indicano una ad una. Un asterisco indica che un pulsante o un controllo ha più funzioni. Verificando la Canon XTi / 400D dal punto di vista del fotografo. Osservando alcuni dei pulsanti e dei quadranti principali. Trovare la messa a fuoco e ...

Caratteristiche della Canon EOS Digital Rebel XSi / 450D - manichini

Caratteristiche della Canon EOS Digital Rebel XSi / 450D - manichini

Le seguenti figure offrono una comoda guida ai pulsanti, ai quadranti e ad altre funzioni esterne della tua Canon EOS Digital Rebel XSi / 450D. Si noti che l'obiettivo mostrato è il modello Canon EF-S 18-55mm IS (Image Stabilization) venduto con XSi / 450D; altri obiettivi potrebbero non avere le stesse caratteristiche. Dal punto di vista del fotografo. Guardando verso il basso ...

Controlli esterni della fotocamera sulla Canon EOS Rebel T3 / 1100D - manichini

Controlli esterni della fotocamera sulla Canon EOS Rebel T3 / 1100D - manichini

Sparsi per l'esterno della tua Canon EOS Rebel T3 / 1100D sono un numero di pulsanti, quadranti e interruttori che usi per cambiare le impostazioni di ripresa delle foto, rivedere e modificare le tue foto ed eseguire varie altre operazioni. Ecco una introduzione di base ai controlli esterni. Controlli Topside sulla Canon EOS Rebel T3 / 1100D Il tour virtuale inizia ...