- 1 pro true nebo
- 0 pro false
Klíčový význam logistické regrese:
- Nezávislé proměnné nesmí být multicollinearity; pokud existuje nějaký vztah, pak by to mělo být velmi málo.
- Soubor dat pro logistickou regresi by měl být dostatečně velký, aby poskytoval lepší výsledky.
- V datové sadě by měly být pouze tyto atributy, což má nějaký význam.
- Nezávislé proměnné musí být podle log kurzy.
Chcete-li vytvořit model logistická regrese, používáme scikit-učit se knihovna. Proces logistické regrese v pythonu je uveden níže:
- Importujte všechny požadované balíčky pro logistickou regresi a další knihovny.
- Nahrajte datovou sadu.
- Pochopte nezávislé proměnné datové sady a závislé proměnné.
- Rozdělte datovou sadu na tréninková a testovací data.
- Inicializujte model logistické regrese.
- Přizpůsobte model cvičné datové sadě.
- Predikujte model pomocí testovacích dat a vypočítejte přesnost modelu.
Problém: Prvním krokem je shromáždění datové sady, na kterou chceme použít Logistická regrese. Datová sada, kterou zde použijeme, je pro datovou sadu přijetí MS. Tato datová sada má čtyři proměnné a tři z nich jsou nezávislé proměnné (GRE, GPA, work_experience) a jedna je závislá proměnná (připuštěna). Tato datová sada řekne, zda kandidát dostane vstup na prestižní univerzitu nebo ne, na základě jejich GPA, GRE nebo work_experience.
Krok 1: Importujeme všechny požadované knihovny, které jsme požadovali pro program python.
Krok 2: Nyní načítáme naši datovou sadu pro přijetí ms pomocí funkce read_csv pandas.
Krok 3: Datová sada vypadá níže:
Krok 4: Zkontrolujeme všechny sloupce dostupné v datové sadě a poté nastavíme všechny nezávislé proměnné na proměnnou X a závislé proměnné na y, jak je znázorněno na následujícím snímku obrazovky.
Krok 5: Po nastavení nezávislých proměnných na X a závislé proměnné na y nyní tiskneme, abychom křížově zkontrolovali X a y pomocí funkce pandy hlavy.
Krok 6: Nyní rozdělíme celý soubor dat na trénink a testování. K tomu používáme metodu train_test_split sklearn. Testu jsme dali 25% z celé datové sady a zbývajících 75% datové sady jsme zaškolili.
Krok 7: Nyní rozdělíme celý soubor dat na trénink a testování. K tomu používáme metodu train_test_split sklearn. Testu jsme dali 25% z celé datové sady a zbývajících 75% datové sady jsme zaškolili.
Poté vytvoříme model logistické regrese a přizpůsobíme tréninková data.
Krok 8: Náš model je nyní připraven na predikci, takže nyní předáváme testovací (X_test) data modelu a dostáváme výsledky. Výsledky ukazují (y_predictions), že hodnoty 1 (připuštěno) a 0 (nepřipuštěno).
Krok 9: Nyní vytiskneme zprávu o klasifikaci a matici záměny.
Klasifikační_report ukazuje, že model dokáže předpovídat výsledky s přesností 69%.
Zmatená matice zobrazuje celkové údaje o X_test jako:
TP = skutečná pozitiva = 8
TN = skutečné negativy = 61
FP = Falešná pozitiva = 4
FN = falešné negativy = 27
Celková přesnost podle confusion_matrix je tedy:
Přesnost = (TP + TN) / Celkem = (8 + 61) / 100 = 0.69
Krok 10: Nyní provedeme křížovou kontrolu výsledku prostřednictvím tisku. Právě jsme tedy vytiskli top 5 prvků X_test a y_test (skutečná skutečná hodnota) pomocí funkce pandy hlavy. Potom také vytiskneme prvních 5 výsledků předpovědí, jak je uvedeno níže:
Kombinujeme všechny tři výsledky do listu, abychom pochopili předpovědi, jak je uvedeno níže. Vidíme, že až na data 341 X_test, která byla true (1), je předpověď falešná (0) else. Naše modelové předpovědi tedy fungují 69%, jak jsme již ukázali výše.
Krok 11: Takže chápeme, jak se předpovědi modelu provádějí na neviditelné datové sadě, jako je X_test. Takže jsme vytvořili jen náhodně novou datovou sadu pomocí datového rámce pandy, předali ji trénovanému modelu a dostali výsledek uvedený níže.
Kompletní kód v pythonu uvedený níže:
Kód tohoto blogu je spolu s datovou sadou k dispozici na následujícím odkazu
https: // github.com / shekharpandey89 / logistic-regression