mikä on naiivi Bayes-algoritmi Koneoppimisessa?

kuvitellaan tilanne, jossa olet luonut ominaisuuksia, tiedät, miten tärkeää ominaisuuksia, ja sinun pitäisi tehdä luokittelu malli, joka on esitetty hyvin lyhyessä ajassa?

Mitä teet? Sinulla on erittäin suuri määrä datapisteitä ja hyvin vähän ominaisuuksia tietokokonaisuudessasi., Siinä tilanteessa, jos minun piti tehdä tällainen malli olisi käyttänyt ’Naiivi Bayes, että pidetään todella nopea algoritmi, kun se tulee luokitusta varten tehtäviä.

tässä blogissa yritän selittää, miten algoritmi toimii, jota voidaan käyttää tällaisissa skenaarioissa. Jos haluat tietää, mikä on luokittelu ja muut tällaiset algoritmit voit viitata täällä.

Naiivi Bayes on kone oppimisen malli, jota käytetään suuria määriä tietoja, vaikka olet kanssa tiedot että on miljoonia tietueita suositeltu lähestymistapa on Naiivi Bayes., Se antaa erittäin hyviä tuloksia, kun kyse on NLP-tehtävistä, kuten tunneanalyysistä. Se on nopea ja mutkaton luokittelualgoritmi.

jotta ymmärtäisimme naiivin Bayes-luokittajan, meidän täytyy ymmärtää Bayesin lause. Joten keskustellaan ensin Bayesin Teoreemasta.

Bayes Lause

Se on lause, joka toimii ehdollinen todennäköisyys. Ehdollinen todennäköisyys on todennäköisyys, että jotain tapahtuu, koska jotain muuta on jo tapahtunut. Ehdollinen todennäköisyys voi antaa todennäköisyyden tapahtumalle käyttämällä sen ennakkotietoa.,

Ehdollinen todennäköisyys:

Ehdollinen Todennäköisyys

Missä

P(A): todennäköisyys, Että hypoteesi H on tosi. Tätä kutsutaan ennakkotodennäköisyydeksi.

P(B): todistusaineiston todennäköisyys.

P(A / B): todennäköisyys todistusaineistolle, koska hypoteesi on totta.

P(B / A): hypoteesin todennäköisyys, koska näyttö on totta.

Naiivi Bayes-Luokittelija

  • Se on eräänlainen luokittelija, joka toimii Bayes lause.,

  • Jäsenyystodennäköisyyksien ennustaminen tehdään jokaiselle luokalle kuten tiettyyn luokkaan liittyvien datapisteiden todennäköisyydelle.

  • suurimman todennäköisyyden omaava Luokka arvioidaan sopivimmaksi luokaksi.

  • tästä käytetään myös nimitystä Maximum a Posteriori (kartta).
  • NB-luokittajat päättelevät, että kaikki muuttujat tai ominaisuudet eivät liity toisiinsa.

  • muuttujan olemassaolo tai puuttuminen ei vaikuta minkään muun muuttujan olemassaoloon tai puuttumiseen.,

  • Esimerkki:

    • Hedelmä voi olla havaittu olla omena jos se on punainen, pyöreä ja noin 4″ halkaisija.

    • myös tässä tapauksessa, vaikka kaikki ominaisuudet ovat kytköksissä toisiinsa, ja HUOM luokittelija tarkkailla kaikki nämä itsenäisesti edistää todennäköisyys, että hedelmä on omena.

  • Me kokeilla hypoteesi todellinen aineistot, koska useita ominaisuuksia.

  • joten laskennasta tulee monimutkaista.

Naiivien Bayes-algoritmien tyypit

1., Gaussin Naiivi Bayes: Kun ominaisarvot ovat luonteeltaan jatkuvia, niin oletus on tehty, että arvot liittyvät kunkin luokan ovat hajallaan mukaan Gaussin että on normaalijakauma.

2. Monikansallinen naiivi Bayes: monikansallinen naiivi Bayes suositaan käyttämään tietoja, jotka on monikansallinen jaettu. Sitä käytetään laajalti NLP: n tekstiluokituksessa. Jokainen tapahtuma tekstiluokituksessa tarkoittaa sanan läsnäoloa asiakirjassa.

3., Bernoulli Naïve Bayes:kun tietoja jaetaan monimuuttujien Bernoulli jakaumien mukaan, käytetään Bernoulli naiiveja Bayes. Se tarkoittaa, että on olemassa useita ominaisuuksia, mutta jokaisen oletetaan sisältävän binary arvo. Joten, se vaatii ominaisuuksia olla binary-arvostettu.

Edut Ja Haitat Naiivi Bayes

Edut:

  • Se on hyvin laajennettavissa algoritmi, joka on erittäin nopea.

  • sitä voidaan käyttää sekä binäärien että multiclass-luokittelun yhteydessä.,

  • Se on lähinnä kolme erilaista algoritmeja, jotka ovat GaussianNB, MultinomialNB, BernoulliNB.

  • Se on kuuluisa algoritmi roskapostin luokittelu.

  • se voidaan helposti kouluttaa pienillä tiedoilla ja sitä voidaan käyttää myös suuriin tietomääriin.

Haitat:

  • suurin haitta NB on, kun otetaan huomioon kaikki muuttujat riippumattomia, joka edistää todennäköisyydellä.,

Sovellukset Naiivi Bayes Algoritmeja

  • Real-time Prediction: on nopea oppiminen algoritmi voidaan tehdä ennusteita reaaliajassa sekä.

  • MultiClass Luokitus: Sitä voidaan käyttää multi-luokan luokituksen ongelmia myös.

  • Teksti Luokitusten: Koska se on osoittanut hyviä tuloksia ennustaa, multi-luokka, luokitus, joten se on enemmän menestys hinnat verrattuna kaikki muut algoritmit. Tämän seurauksena sitä käytetään pääasiassa sentimentaalianalyysissä & roskapostin havaitseminen.,

Hands-On Ongelma Lausunto

ongelma lausunto on luokitella potilaat, kuten diabetes tai ei-diabeetikko. Aineisto voi ladata Kaggle sivusto, joka on ’PIMA INTIAN DIABETES-TIETOKANTA’. Aineistoissa oli useita erilaisia lääketieteellisiä prediktoriominaisuuksia ja kohde, joka on ”lopputulos”. Ennustavia muuttujia ovat potilaan raskauksien määrä, painoindeksi, insuliinitaso, ikä ja niin edelleen.,

Koodi täytäntöönpano tuominen ja jakaminen tiedot

VAIHEET

  • Aluksi kaikki tarvittavat kirjastot ovat tuotu, kuten numpy, pandoja, juna-test_split, GaussianNB, mittareita.
  • Koska se on tiedosto, jossa ei ole otsikkoa, toimitamme sarakkeen nimet, jotka on saatu edellä URL-osoite
  • Luonut python luettelo sarakkeiden nimet nimeltään ”nimet”.
  • Alustettu ennustaja muuttujat ja tavoite, joka on X ja Y, vastaavasti.
  • muutti tietoja Standardscalerin avulla.,
  • jakoi tiedot koulutus-ja testisarjoihin.
  • loi objektin Gaussiannbille.
  • asensi Mallin tiedot sen harjoitteluun.
  • teki ennusteita testisarjasta ja tallensi sen ”prediktorimuuttujaan”.

Sillä tekee valmisteleva tietojen analysointi aineisto voit etsiä tekniikoita.

Sekavuus-matriisi & malli pisteet testituloksia

  • Tuodut accuracy_score ja confusion_matrix alkaen sklearn.mittarit., Painettu sekamatriisi ennustetun ja todellisen välillä, joka kertoo mallin todellisen suorituskyvyn.
  • Lasketaan model_score testaus tiedot tietää, miten hyvä on malli esiintymässä yleistäen kaksi luokkaa, joka tuli ulos on 74%.,
model_score = model.score(X_test, y_test)model_score

Arviointi malli

Roc_score

  • Tuodut auc -, roc_curve uudelleen sklearn.mittarit.
  • Painettu roc_auc pisteet välillä vääriä positiivisia ja tosi positiivista, että tuli on 79%.
  • Tuotu matplotlibi.pyplot kirjasto juoni roc_curve.
  • painoi roc_curven.,

Roc_curve

vastaanotin toimii ominaiskäyrän joka tunnetaan myös nimellä roc_curve on juoni, joka kertoo tulkinnan mahdollisuuksia binary luokittelija järjestelmä. Se piirretään todellisen positiivisen ja väärän positiivisen verokannan välille eri raja-arvoilla. ROC-käyrän pinta-alaksi todettiin 0,80.

python tiedoston ja myös käytetty aineisto edellä ongelma, voit tutustu Github linkki tänne joka sisältää molemmat.,

Johtopäätös

tässä blogissa, olen keskustellut Naiivi Bayes algoritmeja käytetään luokitusta varten tehtäviä eri yhteyksissä. Olen keskustellut mikä on rooli Bayes lause, NB Luokittelija, eri ominaisuudet NB, edut ja haitat NB, soveltaminen NB, ja viimeksi olen ottanut ongelma lausunto Kaggle, joka on noin luokittelussa potilaat, kuten diabetes tai ei.

Share

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *