Data Science

Logistická regresia v Pythone

Logistická regresia v Pythone
Logistická regresia je algoritmus klasifikácie strojového učenia. Logistická regresia je podobná aj lineárnej regresii. Ale hlavný rozdiel medzi logistickou regresiou a lineárnou regresiou je ten, že výstupné hodnoty logistickej regresie sú vždy binárne (0, 1) a nie číselné. Logistická regresia v zásade vytvára vzťah medzi nezávislými premennými (jednou alebo viacerými) a závislými premennými. Závislá premenná je binárna premenná, ktorá má väčšinou dva prípady:

Kľúčový význam logistickej regresie:

  1. Nezávislé premenné nesmú byť multicollinearity; ak existuje nejaký vzťah, potom by to malo byť veľmi málo.
  2. Súbor údajov pre logistickú regresiu by mal byť dostatočne veľký, aby dosahoval lepšie výsledky.
  3. V množine údajov by mali byť iba tieto atribúty, čo má určitý význam.
  4. Nezávislé premenné musia zodpovedať: log kurzy.

Postaviť model modelu logistická regresia, používame scikit-učiť sa knižnica. Proces logistickej regresie v pythone je uvedený nižšie:

  1. Importujte všetky potrebné balíky pre logistickú regresiu a ďalšie knižnice.
  2. Nahrajte dataset.
  3. Pochopte nezávislé premenné množiny údajov a závislé premenné.
  4. Rozdelte dataset na tréningové a testovacie dáta.
  5. Inicializujte model logistickej regresie.
  6. Prispôsobte model cvičebnej množine údajov.
  7. Predpovedajte model pomocou údajov z testu a vypočítajte presnosť modelu.

Problém: Prvým krokom je zhromaždenie súboru údajov, na ktorý chceme použiť Logistická regresia. Dataset, ktorý tu použijeme, je pre dataset prijímania MS. Tento súbor údajov má štyri premenné a z toho tri nezávislé premenné (GRE, GPA, work_experience) a jedna je závislá premenná (pripustená). Tento súbor údajov informuje o tom, či kandidát dostane alebo nedostane prestížnu univerzitu na základe svojich GPA, GRE alebo pracovných skúseností.

Krok 1: Importujeme všetky požadované knižnice, ktoré sme požadovali pre program python.

Krok 2: Teraz načítavame našu množinu údajov o prijatí ms pomocou funkcie pandas read_csv.

Krok 3: Súbor údajov vyzerá takto:

Krok 4: Skontrolujeme všetky stĺpce dostupné v množine údajov a potom nastavíme všetky nezávislé premenné na premennú X a závislé premenné na y, ako je znázornené na nasledujúcom obrázku.

Krok 5: Po nastavení nezávislých premenných na X a závislej premennej na y teraz tlačíme na krížovú kontrolu X a y pomocou funkcie head pandas.

Krok 6: Teraz rozdelíme celý súbor údajov na školenie a testovanie. Na tento účel používame metódu train_test_split sklearn. Testu sme dali 25% z celého súboru údajov a zvyšných 75% súboru dát sme zaškolili.

Krok 7: Teraz rozdelíme celý súbor údajov na školenie a testovanie. Na tento účel používame metódu train_test_split sklearn. Testu sme dali 25% z celého súboru údajov a zvyšných 75% súboru dát sme zaškolili.

Potom vytvoríme model logistickej regresie a zapadneme do tréningových údajov.

Krok 8: Náš model je teraz pripravený na predpoveď, takže teraz odovzdávame testovacie údaje (X_test) modelu a získame výsledky. Výsledky ukazujú (y_predictions), že hodnoty 1 (povolené) a 0 (neprijaté).

Krok 9: Teraz vytlačíme správu o klasifikácii a maticu zámeny.

Klasifikačný_report ukazuje, že model dokáže predpovedať výsledky s presnosťou na 69%.
Zmätená matica zobrazuje celkové podrobnosti údajov X_test ako:
TP = skutočné pozitíva = 8
TN = skutočné negatívy = 61
FP = falošné pozitíva = 4
FN = falošné negatívy = 27

Celková presnosť podľa confusion_matrix je teda:

Presnosť = (TP + TN) / Celkom = (8 + 61) / 100 = 0.69

Krok 10: Teraz sa chystáme skontrolovať výsledok pomocou tlače. Takže sme práve vytlačili top 5 prvkov X_test a y_test (skutočná skutočná hodnota) pomocou funkcie pandy hlavy. Potom tiež vytlačíme prvých 5 výsledkov predpovedí, ako je uvedené nižšie:

Všetky tri výsledky skombinujeme do hárka, aby sme pochopili predpovede, ako je uvedené nižšie. Vidíme, že až na údaje 341 X_test, ktoré boli true (1), je predpoveď false (0) else. Naše predpovede modelu teda fungujú na 69%, ako sme si už ukázali vyššie.

Krok 11: Takže chápeme, ako sa predpovede modelu vykonávajú na neviditeľnej množine údajov, ako je X_test. Takže sme vytvorili iba náhodne nový súbor údajov pomocou údajového rámca pandy, odovzdali ho trénovanému modelu a dostali výsledok uvedený nižšie.

Kompletný kód v pythone uvedený nižšie:

Kód tohto blogu je spolu so súborom údajov k dispozícii na nasledujúcom odkaze
https: // github.com / shekharpandey89 / logistic-regression

Hry Najlepšie emulátory herných konzol pre systém Linux
Najlepšie emulátory herných konzol pre systém Linux
V tomto článku je uvedený zoznam populárneho softvéru na emuláciu herných konzol, ktorý je k dispozícii pre systém Linux. Emulácia je vrstva kompatibi...
Hry Najlepšie linuxové distribúcie pre hry v roku 2021
Najlepšie linuxové distribúcie pre hry v roku 2021
Operačný systém Linux prešiel dlhou cestou od svojho originálneho, jednoduchého serverového vzhľadu. Tento OS sa za posledné roky nesmierne vylepšil a...
Hry Ako zachytiť a streamovať vašu hernú reláciu v systéme Linux
Ako zachytiť a streamovať vašu hernú reláciu v systéme Linux
V minulosti sa hranie hier považovalo iba za hobby, ale časom došlo v hernom priemysle k obrovskému nárastu z hľadiska technológie i počtu hráčov. Her...