Scienza dei dati

Regressione logistica in Python

Regressione logistica in Python
La regressione logistica è un algoritmo di classificazione dell'apprendimento automatico. Anche la regressione logistica è simile alla regressione lineare. Ma la principale differenza tra regressione logistica e regressione lineare è che i valori di output della regressione logistica sono sempre binari (0, 1) e non numerici. La regressione logistica crea fondamentalmente una relazione tra variabili indipendenti (una o più di una) e variabili dipendenti. La variabile dipendente è una variabile binaria che ha principalmente due casi:

L'importanza chiave della regressione logistica:

  1. Le variabili indipendenti non devono essere multicollinearità; se c'è qualche relazione, allora dovrebbe essere molto poco.
  2. Il set di dati per la regressione logistica dovrebbe essere abbastanza grande da ottenere risultati migliori.
  3. Solo quegli attributi dovrebbero essere presenti nel set di dati, il che ha un significato.
  4. Le variabili indipendenti devono essere secondo il registra le probabilità.

Per costruire il modello del regressione logistica, noi usiamo il scikit-impara biblioteca. Il processo della regressione logistica in Python è riportato di seguito:

  1. Importa tutti i pacchetti necessari per la regressione logistica e altre librerie.
  2. Carica il set di dati.
  3. Comprendere le variabili del set di dati indipendenti e le variabili dipendenti.
  4. Dividi il set di dati in dati di addestramento e di test.
  5. Inizializzare il modello di regressione logistica.
  6. Adatta il modello con il set di dati di addestramento.
  7. Prevedere il modello utilizzando i dati del test e calcolare l'accuratezza del modello.

Problema: I primi passi sono raccogliere il dataset su cui vogliamo applicare il apply Regressione logistica. Il set di dati che useremo qui è per il set di dati di ammissione MS MS. Questo set di dati ha quattro variabili e di cui tre sono variabili indipendenti (GRE, GPA, work_experience) e una è una variabile dipendente (ammessa). Questo set di dati indicherà se il candidato otterrà o meno l'ammissione a una prestigiosa università in base al suo GPA, GRE o work_experience.

Passo 1: Importiamo tutte le librerie richieste che abbiamo richiesto per il programma Python.

Passo 2: Ora stiamo caricando il nostro set di dati di ammissione ms utilizzando la funzione read_csv pandas.

Passaggio 3: Il set di dati si presenta come di seguito:

Passaggio 4: Controlliamo tutte le colonne disponibili nel set di dati e quindi impostiamo tutte le variabili indipendenti sulla variabile X e le variabili dipendenti su y, come mostrato nello screenshot seguente.

Passaggio 5: Dopo aver impostato le variabili indipendenti su X e la variabile dipendente su y, ora stiamo stampando qui per eseguire il controllo incrociato di X e y utilizzando la funzione head pandas.

Passaggio 6: Ora, divideremo l'intero set di dati in training e test. Per questo, stiamo usando il metodo train_test_split di sklearn. Abbiamo dato il 25% dell'intero set di dati al test e il restante 75% del set di dati al training.

Passaggio 7: Ora, divideremo l'intero set di dati in training e test. Per questo, stiamo usando il metodo train_test_split di sklearn. Abbiamo dato il 25% dell'intero set di dati al test e il restante 75% del set di dati al training.

Quindi creiamo il modello di regressione logistica e adattiamo i dati di addestramento.

Passaggio 8: Ora, il nostro modello è pronto per la previsione, quindi stiamo passando i dati del test (X_test) al modello e abbiamo ottenuto i risultati. I risultati mostrano (y_predictions) che i valori 1 (ammesso) e 0 (non ammesso).

Passaggio 9: Ora stampiamo il rapporto di classificazione e la matrice di confusione.

Il ranking_report mostra che il modello può prevedere i risultati con una precisione del 69%.
La matrice di confusione mostra i dettagli dei dati X_test totali come:
TP = Veri Positivi = 8
TN = Veri Negativi = 61
FP = Falsi Positivi = 4
FN = falsi negativi = 27

Quindi, l'accuratezza totale secondo la confusione_matrice è:

Precisione = (TP+TN)/Totale = (8+61)/100 = 0.69

Passaggio 10: Ora, faremo un controllo incrociato del risultato attraverso la stampa. Quindi, stampiamo solo i primi 5 elementi di X_test e y_test (valore effettivo vero) usando la funzione head pandas. Quindi, stampiamo anche i primi 5 risultati delle previsioni come mostrato di seguito:

Combiniamo tutti e tre i risultati in un foglio per comprendere le previsioni come mostrato di seguito. Possiamo vedere che ad eccezione dei dati 341 X_test, che era vero (1), la previsione è falsa (0) altrimenti. Quindi, le nostre previsioni del modello funzionano al 69%, come abbiamo già mostrato sopra.

Passaggio 11: Quindi, capiamo come vengono eseguite le previsioni del modello sul set di dati invisibile come X_test. Quindi, abbiamo creato solo un nuovo set di dati casualmente utilizzando un dataframe panda, lo abbiamo passato al modello addestrato e abbiamo ottenuto il risultato mostrato di seguito.

Il codice completo in Python indicato di seguito:

Il codice per questo blog, insieme al dataset, è disponibile al seguente link
https://github.com/shekharpandey89/logistic-regression

Le 5 migliori carte di acquisizione del gioco
Abbiamo tutti visto e amato i giochi in streaming su YouTube. PewDiePie, Jakesepticye e Markiplier sono solo alcuni dei migliori giocatori che hanno g...
Come sviluppare un gioco su Linux
Un decennio fa, non molti utenti Linux avrebbero previsto che il loro sistema operativo preferito un giorno sarebbe diventato una piattaforma di gioco...
Porte open source di motori di gioco commerciali
Ricreazioni del motore di gioco gratuite, open source e multipiattaforma possono essere utilizzate per riprodurre titoli di giochi vecchi e abbastanza...