Datatiede

Logistinen regressio Pythonissa

Logistinen regressio Pythonissa
Logistinen regressio on koneoppimisen luokittelualgoritmi. Logistinen regressio on myös samanlainen kuin lineaarinen regressio. Mutta suurin ero logistisen regression ja lineaarisen regression välillä on se, että logistisen regressiolähdön arvot ovat aina binaarisia (0, 1) eivätkä numeerisia. Logistinen regressio luo pohjimmiltaan suhteen riippumattomien muuttujien (yhden tai useamman) ja riippuvien muuttujien välille. Riippuva muuttuja on binaarinen muuttuja, jolla on enimmäkseen kaksi tapausta:

Logistisen regression keskeinen merkitys:

  1. Riippumattomat muuttujat eivät saa olla monikollinaarisuus; jos suhde on olemassa, sen pitäisi olla hyvin vähän.
  2. Logistisen regressiotietojoukon tulisi olla riittävän suuri parempien tulosten saamiseksi.
  3. Ainoastaan ​​näiden määritteiden tulisi olla tietojoukossa, jolla on jokin merkitys.
  4. Riippumattomien muuttujien on oltava log-kertoimet.

Rakentaa malli logistinen regressio, käytämme scikit-oppia kirjasto. Logistisen regressioprosessi pythonissa on annettu alla:

  1. Tuo kaikki vaaditut paketit logistista regressiota ja muita kirjastoja varten.
  2. Lataa tietojoukko.
  3. Ymmärrä itsenäiset tietojoukon muuttujat ja riippuvat muuttujat.
  4. Jaa tietojoukko koulutus- ja testitietoihin.
  5. Alusta logistinen regressiomalli.
  6. Sovita malli harjoitustietojoukkoon.
  7. Ennusta malli testitulosten avulla ja laske mallin tarkkuus.

Ongelma: Ensimmäiset vaiheet on kerätä tietoaineisto, johon haluamme soveltaa Logistinen regressio. Aineisto, jota aiomme käyttää tässä, on MS-pääsytietojoukkoon. Tässä tietojoukossa on neljä muuttujaa, joista kolme on itsenäisiä muuttujia (GRE, GPA, work_experience), ja yksi on riippuvainen muuttuja (hyväksytty). Tämä tietojoukko kertoo, saako hakija pääsyn arvostettuun yliopistoon GPA: n, GRE: n tai työelämyksen perusteella.

Vaihe 1: Tuomme kaikki vaadittavat kirjastot, joita vaadimme python-ohjelmalle.

Vaihe 2: Ladataan nyt ms: n pääsytietojoukkojamme read_csv pandas -toiminnolla.

Vaihe 3: Tietojoukko näyttää seuraavalta:

Vaihe 4: Tarkistamme kaikki tietojoukon käytettävissä olevat sarakkeet ja asetamme sitten kaikille itsenäisille muuttujille muuttujan X ja riippuvien muuttujien arvoksi y, kuten alla olevassa kuvakaappauksessa näkyy.

Vaihe 5: Kun itsenäiset muuttujat on asetettu arvoksi X ja riippuva muuttuja arvoksi y, tulostamme nyt tarkistamaan X ja y ristipään funktiolla head pandas.

Vaihe 6: Jaamme nyt koko tietojoukon koulutukseen ja testiin. Tätä varten käytämme sklearn-menetelmää train_test_split. Olemme antaneet testille 25% koko aineistosta ja loput 75% koulutuksesta.

Vaihe 7: Jaamme nyt koko tietojoukon koulutukseen ja testiin. Tätä varten käytämme sklearn-menetelmää train_test_split. Olemme antaneet testille 25% koko aineistosta ja loput 75% koulutuksesta.

Sitten luomme logistisen regressiomallin ja sovitamme harjoitustiedot.

Vaihe 8: Nyt mallimme on valmis ennakointiin, joten siirrämme nyt testitiedot (X_test) mallille ja saimme tulokset. Tulokset osoittavat (y_ennusteet), että arvot 1 (hyväksytty) ja 0 (ei hyväksytty).

Vaihe 9: Tulostamme nyt luokitusraportin ja sekaannusmatriisin.

Luokitteluraportti osoittaa, että malli pystyy ennustamaan tulokset 69 prosentin tarkkuudella.
Sekaannusmatriisi näyttää X_test-tiedot yhteensä seuraavasti:
TP = todelliset positiiviset = 8
TN = todelliset negatiiviset = 61
FP = väärät positiiviset = 4
FN = väärät negatiiviset = 27

Joten sekaannusmatriisin mukainen kokonaistarkkuus on:

Tarkkuus = (TP + TN) / Yhteensä = (8 + 61) / 100 = 0.69

Vaihe 10: Tarkastamme tuloksen nyt tulostamalla. Joten me vain tulostamme X_testin ja y_testin (todellinen todellinen arvo) viisi tärkeintä elementtiä käyttäen head pandas -toimintoa. Tulostamme sitten myös viiden tärkeimmän ennustetuloksen alla olevan kuvan mukaisesti:

Yhdistämme kaikki kolme tulosta taulukkoon ymmärtääksemme ennusteet alla esitetyllä tavalla. Voimme nähdä, että lukuun ottamatta 341 X_test-dataa, joka oli tosi (1), ennuste on väärä (0) muu. Joten mallin ennusteet toimivat 69%, kuten olemme jo osoittaneet edellä.

Vaihe 11: Joten ymmärrämme, kuinka malliennusteet tehdään näkymättömässä tietojoukossa, kuten X_test. Joten loimme vain satunnaisesti uuden tietojoukon pandas-tietokehyksellä, välitimme sen koulutetulle mallille ja saimme alla olevan tuloksen.

Alla oleva pythonin täydellinen koodi:

Tämän blogin koodi yhdessä tietojoukon kanssa on saatavilla seuraavasta linkistä
https: // github.fi / shekharpandey89 / logistic-regression

Control & manage mouse movement between multiple monitors in Windows 10
Dual Display Mouse Manager lets you control & configure mouse movement between multiple monitors, by slowing down its movements near the border. Windo...
WinMouse lets you customize & improve mouse pointer movement on Windows PC
If you want to improve the default functions of your mouse pointer use freeware WinMouse. It adds more features to help you get the most out of your h...
Mouse left-click button not working on Windows 10
If you are using a dedicated mouse with your laptop, or desktop computer but the mouse left-click button is not working on Windows 10/8/7 for some rea...