- 1 za istinito ili
- 0 za lažno
Ključna važnost logističke regresije:
- Neovisne varijable ne smiju biti multikolinearnost; ako postoji neka veza, onda bi to trebalo biti vrlo malo.
- Skup podataka za logističku regresiju trebao bi biti dovoljno velik da bi se postigli bolji rezultati.
- Samo bi ti atributi trebali biti tamo u skupu podataka, što ima neko značenje.
- Nezavisne varijable moraju biti prema log koeficijenti.
Izgraditi model logistička regresija, koristimo scikit-naučiti knjižnica. Proces logističke regresije u pythonu dan je u nastavku:
- Uvezite sve potrebne pakete za logističku regresiju i ostale knjižnice.
- Prenesite skup podataka.
- Razumijevanje neovisnih varijabli skupa podataka i ovisnih varijabli.
- Podijelite skup podataka na podatke o treningu i testiranju.
- Inicijalizirati model logističke regresije.
- Ugradite model u skup podataka o treningu.
- Predvidite model pomoću podataka testa i izračunajte točnost modela.
Problem: Prvi koraci su prikupljanje skupa podataka na koje želimo primijeniti Logistička regresija. Skup podataka koji ćemo ovdje upotrijebiti je za skup podataka za prijem u MS. Ovaj skup podataka sadrži četiri varijable, a od kojih su tri neovisne varijable (GRE, GPA, work_experience), a jedna je ovisna varijabla (prihvaćena). Ovaj skup podataka reći će hoće li kandidat dobiti prijem na prestižno sveučilište na temelju svog GPA, GRE ili radnog iskustva.
Korak 1: Uvozimo sve potrebne knjižnice potrebne za program python.
Korak 2: Sada učitavamo svoj skup podataka za prijem za ms pomoću funkcije pandi read_csv.
Korak 3: Skup podataka izgleda kao u nastavku:
Korak 4: Provjeravamo sve stupce dostupne u skupu podataka, a zatim postavljamo sve neovisne varijable na varijablu X, a ovisne varijable na y, kao što je prikazano na donjoj snimci zaslona.
Korak 5: Nakon postavljanja neovisnih varijabli na X, a ovisne varijable na y, sada ovdje ispisujemo kako bismo provjerili X i y pomoću funkcije head pandas.
Korak 6: Sada ćemo podijeliti cijeli skup podataka na trening i test. U tu svrhu koristimo metodu train_test_split sklearna. Test smo dali 25% cjelokupnog skupa podataka, a treningu preostalih 75% skupa podataka.
Korak 7: Sada ćemo podijeliti cijeli skup podataka na trening i test. U tu svrhu koristimo metodu train_test_split sklearna. Test smo dali 25% cjelokupnog skupa podataka, a treningu preostalih 75% skupa podataka.
Zatim kreiramo model logističke regresije i prilagođavamo podatke o treningu.
Korak 8: Sada je naš model spreman za predviđanje, pa sada prenosimo testne (X_test) podatke modelu i dobili smo rezultate. Rezultati pokazuju (y_predictions) da vrijednosti 1 (prihvaćeno) i 0 (neprihvaćeno).
9. korak: Sada ispisujemo izvješće o klasifikaciji i matricu zabune.
Izvještaj_klasifikacije pokazuje da model može predvidjeti rezultate s točnošću od 69%.
Matrica zbrke prikazuje ukupne detalje podataka X_test kao:
TP = istinski pozitivni = 8
TN = Istiniti negativi = 61
FP = lažno pozitivni = 4
FN = Lažni negativci = 27
Dakle, ukupna točnost prema confusion_matrix je:
Točnost = (TP + TN) / Ukupno = (8 + 61) / 100 = 0.69
10. korak: Sada ćemo unakrsno provjeriti rezultat kroz ispis. Dakle, samo ispisujemo 5 najboljih elemenata X_test i y_test (stvarna stvarna vrijednost) pomoću funkcije head pandas. Zatim, također ispisujemo top 5 rezultata predviđanja kao što je prikazano u nastavku:
Kombiniramo sva tri rezultata u listu kako bismo razumjeli predviđanja kako je prikazano u nastavku. Možemo vidjeti da je osim podataka o 341 X_test, koji su bili istiniti (1), predviđanje netačno (0). Dakle, naša predviđanja modela rade 69%, kao što smo već pokazali gore.
11. korak: Dakle, razumijemo kako se predviđanja modela rade na neviđenom skupu podataka poput X_test. Dakle, stvorili smo samo nasumično novi skup podataka koristeći okvir podataka pandas, proslijedili ga obučenom modelu i dobili rezultat prikazan u nastavku.
Kompletni kod u pythonu dan u nastavku:
Kôd ovog bloga, zajedno sa skupom podataka, dostupan je na sljedećoj poveznici
https: // github.com / shekharpandey89 / logistička-regresija