naivni bayesov klasifikator · bayesov klasifikator [20]. v strojnem učenju naivni bayesov...

40
UNIVERZA V MARIBORU FAKULTETA ZA ELEKTROTEHNIKO, RAČUNALNIŠTVO IN INFORMATIKO Monika Bozhinova NAIVNI BAYESOV KLASIFIKATOR Diplomsko delo Maribor, marec 2015

Upload: others

Post on 23-Oct-2020

7 views

Category:

Documents


1 download

TRANSCRIPT

  • UNIVERZA V MARIBORU

    FAKULTETA ZA ELEKTROTEHNIKO,

    RAČUNALNIŠTVO IN INFORMATIKO

    Monika Bozhinova

    NAIVNI BAYESOV KLASIFIKATOR

    Diplomsko delo

    Maribor, marec 2015

  • NAIVNI BAYESOV KLASIFIKATOR

    Diplomsko delo

    Študentka: Monika Bozhinova

    Študijski program: univerzitetni študijski program

    Računalništvo in informacijske tehnologije

    Mentor: red. prof. dr. Nikola Guid

    Somentor: izr. prof. dr. Damjan Strnad

  • Naivni Bayesov klasifikator

    i

  • Naivni Bayesov klasifikator

    ii

    Naivni Bayesov klasifikator

    Ključne besede: naivni Bayesov klasifikator, izbira atributov, klasifikacija dokumentov

    UDK: 004.434:004.8(043.2)

    Povzetek

    V sodobnem času je samodejna klasifikacija dokumentov postala pomembna raziskovalna

    tema. V diplomskem delu smo teoretično razložili izpeljavo in uporabo naivnega

    Bayesovega klasifikatorja in opisali dva dogodkovna modela naivnega Bayesovega

    klasifikatorja ter večje število metod izbire atributov. Glavni del diplomskega dela je

    sestavljen iz opisa naše interaktivne programske rešitve za klasifikacijo dokumentov z

    uporabo opisanih dogodkovnih modelov in metod, eksperimentalnih rezultatov,

    pridobljenih s pomočjo naše aplikacije, in empirične primerjave med kombinacijami

    zasnovanih dogodkovnih modelov naivnega Bayesovega klasifikatorja in metod izbire

    atributov.

  • Naivni Bayesov klasifikator

    iii

    Naive Bayes classifier

    Key words: naive Bayes classifier, feature selection, document classification

    UDK: 004.434:004.8(043.2)

    Abstract

    Nowadays, the automatic classification of documents has become an important research

    topic. In this thesis, we theoretically explain the derivation and usage of the naive Bayes

    classifier and describe two event models of naive Bayes classifier and several feature

    selection methods. The main part of this thesis consists of a description of the

    implemented interactive application for document classification using the described event

    models and methods, the experimental results obtained from the application, and an

    empirical comparison among the combinations of the implemented event models of naive

    Bayes classifier and feature selection methods.

  • Naivni Bayesov klasifikator

    iv

    KAZALO

    1 UVOD .............................................................................................................. 1

    2 BAYESOV TEOREM ....................................................................................... 3

    2.1 POGOJNA VERJETNOST ................................................................................ 3

    2.2 IZPELJAVA BAYESOVEGA PRAVILA ................................................................. 4

    3 NAIVNI BAYESOV KLASIFIKATOR ................................................................ 6

    3.1 IZPELJAVA NAIVNEGA BAYESOVEGA KLASIFIKATORJA ...................................... 6

    3.2 DOGODKOVNI MODELI .................................................................................. 8

    3.2.1 Multinomski model ....................................................................................... 8

    3.2.2 Bernoullijev model ..................................................................................... 11

    4 IZBIRA ATRIBUTOV ...................................................................................... 13

    4.1 MEDSEBOJNE INFORMACIJE ........................................................................ 13

    4.2 TEST CHI-KVADRAT .................................................................................... 14

    4.3 DOBIČEK INFORMACIJE ............................................................................... 15

    4.4 IZBIRA ATRIBUTOV NA OSNOVI POGOSTOSTI .................................................. 16

    5 KLASIFIKACIJA DOKUMENTOV .................................................................. 17

    5.1 APLIKACIJA ................................................................................................ 17

    5.2 DEMONSTRACIJA DELOVANJA APLIKACIJE ..................................................... 20

    5.3 PREDPOSTAVKE IN OMEJITVE ...................................................................... 21

    5.4 UČNI NABOR .............................................................................................. 21

    5.5 TESTNI NABOR ........................................................................................... 22

    6 REZULTATI ................................................................................................... 23

    6.1 PRIMERJAVA IN STATISTIKE ......................................................................... 23

    6.2 DISKUSIJA ................................................................................................. 24

  • Naivni Bayesov klasifikator

    v

    7 SKLEP ........................................................................................................... 25

    7.1 IZZIVI IN TEŽAVE ......................................................................................... 25

    7.2 MOŽNE IZBOLJŠAVE IN NADALJNJE DELO ...................................................... 25

    7.3 LASTNA OCENA IN ZAKLJUČEK ..................................................................... 26

    SEZNAM UPORABLJENIH VIROV ...................................................................... 27

  • Naivni Bayesov klasifikator

    vi

    KAZALO SLIK

    SLIKA 5.1: ZAVIHEK "UČNI DOKUMENTI" .................................................................... 18

    SLIKA 5.2: ZAVIHEK "RAZREDI" ................................................................................ 19

    SLIKA 5.3: ZAVIHEK "ATRIBUTI" ................................................................................ 19

    SLIKA 5.4: ZAVIHEK "KLASIFIKACIJA" ........................................................................ 20

    KAZALO TABEL

    TABELA 6.1: EKSPERIMENTALNI REZULTATI .............................................................. 23

  • Naivni Bayesov klasifikator

    vii

    SEZNAM UPORABLJENIH KRATIC IN SIMBOLOV

    MAP – maksimalni aposteriori (angl. maximum a posterior)

    NB – naivni Bayesov (angl. naive Bayes)

    MLE – maksimalna verjetnostna ocena (angl. maximum-likelyhood estimation)

    MI – medsebojne informacije (angl. mutual information)

    𝜒2 – chi-kvadrat (angl. chi-square)

    𝑑 – dokument

    𝑉 – besedišče

    𝑐𝑀𝐴𝑃 – razred MAP

    |𝑉| – število vseh atributov v besedišču

    |𝐷| – število učnih dokumentov

    𝐿𝑎𝑣𝑔 – povprečna dolžina dokumentov

    𝑂 – ocena koristnosti

    𝐼 – kriterij MI

    𝐺 – kriterj IG

  • Naivni Bayesov klasifikator

    1

    1 UVOD

    Samodejna organizacija dokumentov je postala pomembna raziskovalna tema, še

    posebej po ogromnem porastu digitalnih in spletnih besedilnih informacij. V glavnem

    obstajata dva pristopa strojnega učenja za izboljšanje te naloge: nadzorovani pristop, kjer

    so vnaprej določene oznake za kategorije dodeljene naboru učnih dokumentov in

    nenadzorovani pristop (znan tudi kot gručanje dokumentov), kjer se celotna razvrstitev

    opravi brez sklicevanja na zunanje informacije [26]. Eden izmed najbolj priljubljenih

    nadzorovanih klasifikatorjev in zelo praktičnih metod Bayesovega učenja je naivni

    Bayesov klasifikator [20]. V strojnem učenju naivni Bayesov klasifikator pripada družini

    enostavnih verjetnostnih klasifikatorjev, ki temeljijo na uporabi Bayesovega teorema1 z

    močnimi (naivnimi) predpostavkami o neodvisnosti med atributi [21]. Zaradi svoje

    preprostosti in presenetljivo dobrih rezultatov je že dolgo časa2 predmet raziskav.

    Za optimalne rezultate sta pri uporabi naivnega Bayesovega klasifikatorja potrebna

    ustrezna priprava podatkov in izbira pravega dogodkovnega modela. Dogodkovni model

    predstavlja določene predpostavke, na katere temelji naivni Bayesov klasifikator. Za

    diskretne podatke, kot so tisti, s katerimi se srečujemo pri klasifikaciji dokumentov, sta

    najprimernejša multinomski in Bernoullijev model [18]. Da bi testirali zmogljivosti teh dveh

    modelov, smo implementirali aplikacijo za klasificiranje dokumentov. V diplomski nalogi

    smo podrobno opisali njeno delovanje in primerjali dobljene rezultate. Izdelana

    programska rešitev je interaktivna in lahko opravi z nizom enostavnih izbir klasifikacije

    določenih dokumentov v predefiniranih kategorijah. Za učinkovitejše delovanje

    klasifikatorja smo aplikacijo nadgradili z večjim številom metod izbire atributov. Izbira

    atributov je postopek izbiranja podskupine pojmov, ki se pojavljajo v učnem naboru in

    uporabljajo kot atributi v klasifikaciji dokumentov.

    Namen diplomske naloge je proučevanje naivnega Bayesovega klasifikatorja in njegova

    uporaba pri samodejni klasifikaciji dokumentov ter razumevanje načina, kako podatkovni

    atributi in dogodkovni modeli naivnega Bayesovega klasifikatorja vplivajo na njegovo

    učinkovitost pri tem opravilu. Cilj diplomske naloge je s pomočjo izdelane aplikacije

    1 Znan tudi kot Bayesa formula ali Bayesovo pravilo. 2 iz 1950-ih.

  • Naivni Bayesov klasifikator

    2

    klasificirati nabor testnih dokumentov in narediti na podlagi pridobljenih rezultatov

    empirično primerjavo med različnimi kombinacijami dogodkovnih modelov naivnega

    Bayesovega klasifikatorja in metod izbire atributov.

    Diplomsko delo sestoji iz sedmih poglavij. V drugem poglavju, imenovano “Bayesov

    teorem”, smo opisali postopek izpeljave Bayesovega teorema. V naslednjem poglavju,

    imenovano “Naivni Bayesov klasifikator”, smo razložili naivni Bayesovi klasifikator,

    njegove izpeljave in obravnavali multinomske in Bernoullijeve klasifikacijske dogodkovne

    modele. Potem, v četrtem poglavju, imenovanem “Izbira atributov”, smo razložili več

    metod izbire atributov: glede na medsebojne informacije, test chi-kvadrat, dobiček

    informacije in izbire atributov na osnovi pogostosti. Pri koncu glavnega dela oz. v

    poglavju, imenovanem “Klasifikacija dokumentov”, smo opisali implementacijo aplikacije,

    demonstrirali njene funkcionalnosti in podali kratek opis učnega in testnega nabora.

    Zatem smo klasificirali nabor testnih dokumentov, da bi dobili rezultate, potrebne za

    vrednotenje učinkovitosti klasifikacijskih modelov. V poglavju “Rezultati”, smo naredili

    empirično primerjavo in obravnavali dobljene rezultate. V zadnjem poglavju smo omenili

    težave, ki so se pojavile pri snovanju aplikacije. Prav tako smo podali napotke za

    morebitne izboljšave in nadaljnje delo ter končali z lastno oceno opravljenega dela.

  • Naivni Bayesov klasifikator

    3

    2 BAYESOV TEOREM

    Bayesov teorem (znan tudi kot Bayesovo pravilo ali Bayesov obrazec), poimenovan po

    Thomasu Bayesu3, predstavlja povezavo med trenutnimi in prešnjimi prepričanji [13].

    Pomemben je pri matematični obravnavi pogojnih verjetnosti. Izpeljava Bayesovega

    pravila lahko izhaja iz več osnovnih aksiomov verjetnosti, predvsem aksiomov pogojnih

    verjetnosti.

    Verjetnosti, ki so vključene v Bayesov teorem, imajo lahko več verjetnostnih interpretacij.

    Teorem je v eni od teh interpretacij neposredno uporabljen kot del pristopa k statističnemu

    sklepanju, ki se imenuje Bayesovo sklepanje in predstavlja temelj vseh Bayesovih statistik

    [6].

    2.1 Pogojna verjetnost

    Verjetnost lahko predstavimo z realnim številom v intervalu [0,1]. Pove nam, kolikšna je

    možnost, da se zgodi nek dogodek. Če ni drugih vplivov na ta dogodek, se takšna

    verjetnost imenuje brezpogojna ali priorna verjetnost4 [7] in za dogodek 𝐴 se označi s

    𝑃(𝐴). Po klasični definiciji je verjetnost dogodka razmerje med številom ugodnih izidov in

    številom vseh izidov [27].

    𝑃(𝐴) =𝑚

    𝑛 , (2.1)

    kjer sta:

    𝑚 – število ugodnih izidov in

    𝑛 – število vseh možnih izidov.

    Če se zgodita oba dogodka 𝐴 in 𝐵 hkrati, govorimo o verjetnosti preseka ali skupni

    verjetnosti dogodkov 𝐴 in 𝐵, kar označimo s 𝑃(𝐴 ∩ 𝐵). V primeru, da sta 𝐴 in 𝐵 neodvisna

    dogodka5, potem njuno skupno verjetnost izračunamo z enačbo (2.2) oz. kot produkt

    3 Thomas Bayes (1701 – 1761) je bil angleški matematik, filozof in prezbiterijanski minister. 4 Znana tudi kot apriorna verjetnost (angl. prior probability oz. prior). 5 Dogodka A in B sta neodvisna, če pojav enega dogodka ne vpliva na drugega in obratno.

  • Naivni Bayesov klasifikator

    4

    verjetnosti posameznih dogodkov. Velikokrat izid enega dogodka vpliva na izid drugega in

    zato velja enačba (2.3), pri čemer 𝑃(𝐵|𝐴) predstavlja verjetnost, da se zgodi dogodek 𝐵

    pod pogojem, da se je zgodil dogodek 𝐴. Takšna verjetnost se imenuje pogojna ali

    posteriorna verjetnost6 [24].

    𝑃(𝐴 ∩ 𝐵) = 𝑃(𝐴) 𝑃(𝐵) (2.2)

    𝑃(𝐴 ∩ 𝐵) = 𝑃(𝐴) 𝑃(𝐵|𝐴) (2.3)

    Pogojno verjetnost zlahka izpeljemo iz enačbe (2.3).

    𝑃(𝐵|𝐴) =

    𝑃(𝐴 ∩ 𝐵)

    𝑃(𝐴) (2.4)

    Enačba (2.4) predstavlja osnovno definicijo pogojnih verjetnosti in je znana tudi kot

    Kolmogorova7 definicija [5].

    2.2 Izpeljava Bayesovega pravila

    Izpeljava Bayesovega pravila izhaja iz dejstva, da ima verjetnost preseka dveh dogodkov

    komutativno lastnost (2.5).

    𝑃(𝐴 𝑖𝑛 𝐵) = 𝑃(𝐵 𝑖𝑛 𝐴) ⟺

    𝑃(𝐴 ∩ 𝐵) = 𝑃(𝐵 ∩ 𝐴)

    (2.5)

    V enačbi za skupno verjetnost (2.3) za dogodka 𝐴 in 𝐵 nismo določili nobenih lastnosti ali

    omejitev, kar pomeni, da sta dogodka zamenljiva. V naslednjem koraku z zamenjavo

    dogodkov 𝐴 in 𝐵 v enačbi (2.3) dobimo:

    𝑃(𝐵 ∩ 𝐴) = 𝑃(𝐵)𝑃(𝐴|𝐵) (2.6)

    Glede na to, da imamo vse enačbe, potrebne za izpeljavo, lahko v zadnjem koraku v

    enačbi komutativnosti konjunkcije (2.5) zamenjamo skupne verjetnosti oz. preseke z

    6 Znana tudi kot aposteriorna verjetnost (angl. posterior probability oz. posterior). 7 Andrey Nikolaevich Kolmogorov (1903 – 1987) je bil ruski matematik.

  • Naivni Bayesov klasifikator

    5

    njihovimi ekvivalentnimi izrazi iz enačbe (2.3) in enačbe (2.6).

    𝑃(𝐴 ∩ 𝐵) = 𝑃(𝐵 ∩ 𝐴) ⟺

    𝑃(𝐴)𝑃(𝐵|𝐴) = 𝑃(𝐵)𝑃(𝐴|𝐵)

    (2.7)

    Iz enačbe (2.7) izpeljemo Bayesovo pravilo:

    𝑃(𝐴|𝐵) =

    𝑃(𝐴) 𝑃(𝐵|𝐴)

    𝑃(𝐵) (2.8)

    Ta preprosta enačba (2.8) je temelj mnogih modernih inteligentnih sistemov

    verjetnostnega sklepanja.

    Na prvi pogled se zdi, da je Bayesovo pravilo nekoristno, saj zahteva za izračun izraza

    𝑃(𝐴|𝐵) vrednosti treh izrazov: 𝑃(𝐵|𝐴), 𝑃(𝐵) in 𝑃(𝐴). Toda Bayesovo pravilo je zelo

    uporabno v praksi, saj obstaja veliko primerov, kjer imamo dobre ocene verjetnosti za te

    tri izraze in potrebujemo samo vrednost četrtega.

  • Naivni Bayesov klasifikator

    6

    3 NAIVNI BAYESOV KLASIFIKATOR

    V strojnem učenju so naivni Bayesovi (angl. naive Bayes; NB) klasifikatorji družina

    enostavnih verjetnostnih klasifikatorjev, ki temeljijo na uporabi Bayesovega teorema, saj

    predpostavljajo pogojno neodvisnost vrednosti različnih atributov v danem razredu [16].

    Učenje NB je bilo intenzivno proučevano od leta 1950 naprej in je še vedno priljubljena

    (osnovna) metoda za besedilno kategorizacijo8. Z ustrezno predobdelavo se kosa z

    drugimi naprednimi metodami. Uporablja se tudi pri samodejni medicinski diagnostiki [21].

    3.1 Izpeljava naivnega Bayesovega klasifikatorja

    Algoritem NB je klasifikacijski algoritem, ki temelji na predpostavki, da so vsi dogodki

    𝐴1 … 𝐴𝑛𝑎, kjer je 𝑛𝑎 število vseh dogodkov, pogojno neodvisni eden od drugega pri danem

    dogodku 𝐵. Pomembnost te predpostavke je, da bistveno poenostavlja izračun pogojne

    verjetnosti 𝑃(𝐴|𝐵) in problem ocenjevanja pogojnih verjetnosti iz učnih podatkov. Pri

    klasifikaciji dokumentov dogodke predstavljajo atributi9. Če je dogodek 𝐴 presek dogodkov

    𝐴1 in 𝐴2 oz. 𝐴 = 𝐴1 ∩ 𝐴2 (kar je pri klasifikaciji dokumentov ekvivalentno 𝐴 = 〈𝐴1, 𝐴2〉, kjer

    je 𝐴 množica atributov, ki vsebuje atributa 𝐴1 in 𝐴2), dobimo:

    𝑃(𝐴|𝐵) = 𝑃(𝐴 1, 𝐴2|𝐵)

    = 𝑃(𝐴1|𝐴2, 𝐵) 𝑃(𝐴2|𝐵)

    = 𝑃(𝐴1|𝐵) 𝑃(𝐴2|𝐵)

    (3.1)

    Druga vrstica v enačbi (3.1) sledi iz splošne lastnosti verjetnosti (2.7), tretja pa sledi

    neposredno iz naše omenjene definicije pogojnih neodvisnosti. Ko 𝐴 predstavlja presek

    𝑛𝑎 dogodkov, ki so pogojno neodvisni drug od drugega pri danem dogodku 𝐵, velja:

    𝑃(𝐴1 … 𝐴𝑛𝑎|𝐵) = ∏ 𝑃(𝐴𝑖|𝐵)

    𝑛𝑎

    𝑖=1

    (3.2)

    8 Problem presojanja dokumentov kot pripadnost ene ali druge kategorije (na primer: nezaželjeno pošto ali legitimno pošto, šport ali politiko, itd.) z uporabo besednih frekvenc kot atributov. 9 V strojnem učenju je atribut merljiva lastnost pojavov, ki jih opazujemo [8]. Pri klasifikaciji dokumentov nas zanima pojav pojmov (angl. terms).

  • Naivni Bayesov klasifikator

    7

    Zdaj bomo izpeljali verjetnostni model NB s splošno predpostavko, da je dogodek 𝐵

    spremenljivka z diskretnimi vrednostmi, medtem ko imajo atributi 𝐴1 … 𝐴𝑛𝑎 diskretne ali

    realne vrednosti. Naš cilj je posodobiti klasifikator tako, da bo izhod verjetnostne

    porazdeltve možnih vrednosti za 𝐵 za vsak nov vzorec 𝐴, ki ga želimo klasificirati. Izraz za

    verjetnost, da bo 𝐵 dobil svojo 𝑘-to možno vrednost v skladu z Bayesovim pravilom (2.9),

    je:

    𝑃(𝐵 = 𝑏𝑘|𝐴1 … 𝐴𝑛𝑎) =

    𝑃(𝐵 = 𝑏𝑘) 𝑃(𝐴1 … 𝐴𝑛𝑎|𝐵 = 𝑏𝑘)

    ∑ 𝑃(𝐵 = 𝑏𝑗) 𝑃(𝐴1 … 𝐴𝑛𝑎|𝐵 = 𝑏𝑗)𝑏𝑗∈𝐵 (3.3)

    kjer se vsota izračuna nad vsemi možnimi vrednostmi 𝐵. Če predpostavimo, da so 𝐴𝑖

    pogojno neodvisni pri danem dogodku 𝐵, lahko uporabimo enačbo (3.2), da bi dobili:

    𝑃(𝐵 = 𝑏𝑘|𝐴1 … 𝐴𝑛𝑎) =

    𝑃(𝐵 = 𝑏𝑘) ∏ 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘)𝑛𝑎𝑖=1

    ∑ 𝑃(𝐵 = 𝑏𝑗) ∏ 𝑃(𝐴𝑖|𝐵 = 𝑏𝑗)𝑛𝑎𝑖=1𝑏𝑗∈𝐵

    (3.4)

    Enačba (3.4) je osnovna enačba verjetnostnega modela NB. Za nov vzorec

    𝐴𝑛𝑜𝑣 = 〈𝐴1 … 𝐴𝑛𝑎〉 ta enačba pove kako izračunati verjetnost, da bi 𝐵 dobil določeno

    vrednost pri opaženih vrednostih atributov v množici atributov 𝐴𝑛𝑜𝑣 in razdelitvah,

    pridobljenih iz učnih podatkov [20]. Da bi zgradili klasifikator NB, moramo kombinirati

    model NB z odločitvenim pravilom10. Eno izmed najbolj priljubljenih odločitvenih pravil je

    izbiranje najbolj verjetne hipoteze oz. izbiranje vrednosti, za katero ima 𝐵 največjo

    verjetnost glede vrednosti atributov na vzorcu, ki ga klasificiramo. To pravilo je znano kot

    maksimalni aposteriori (angl. maximum a posteriori; MAP). Dobimo osnovno enačbo

    klasifikatorja NB:

    𝐵 ← arg max

    𝑏𝑘

    𝑃(𝐵 = 𝑏𝑘) ∏ 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘)𝑛𝑎𝑖=1

    ∑ 𝑃(𝐵 = 𝑏𝑗) ∏ 𝑃(𝐴𝑖|𝐵 = 𝑏𝑗)𝑛𝑎𝑖=1𝑏𝑗∈𝐵

    , (3.5)

    kjer lahko poenostavimo oz. izpustimo imenovalec, ker ni odvisen od 𝑏𝑘 in je enak za

    vsako možno vrednost 𝐵. Sledi:

    10 V teoriji odločanja je odločitveno pravilo funkcija, ki preslika opazovanje v ustreznem ukrepu [10].

  • Naivni Bayesov klasifikator

    8

    𝐵 ← arg max 𝑏𝑘

    𝑃(𝐵 = 𝑏𝑘) ∏ 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘)

    𝑛𝑎

    𝑖=1

    (3.6)

    3.2 Dogodkovni modeli

    Predpostavke o razdelitvi, ki so pridobljene iz učnih podatkov, se imenujejo dogodkovni

    modeli klasifikatorja NB. Za diskretne atribute, to je tiste, s katerimi se srečujemo pri

    klasifikaciji dokumentov, sta najbolj priljubljena multinomski (angl. multinomial) in

    multivariatni Bernoullijev (angl. multivariate Bernoulli) model [21].

    3.2.1 Multinomski model

    Multinomski model NB je nadzorovani verjetnostni učni model. Verjetnost, da je dokument

    𝑑 v razredu 𝑏𝑘, je določena s:

    𝑃(𝐵 = 𝑏𝑘|𝑑) = 𝑃(𝐵 = 𝑏𝑘) ∏ 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘)

    𝑛𝑎

    𝑖=1

    , (3.7)

    kjer je 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘) pogojna verjetnost, da se atribut 𝐴𝑖 pojavi v dokumentih v razredu 𝑏𝑘.

    𝑃(𝐴𝑖|𝐵 = 𝑏𝑘) interpretiramo kot merilo, koliko atribut 𝐴𝑖 prispeva, da je 𝑏𝑘 pravilni razred.

    𝑃(𝐵 = 𝑏𝑘) je priorna verjetnost, da se dokument nahaja v razredu 𝑏𝑘. Če atributi v

    dokumentu ne zagotavljajo, da je en razred bolj verjeten kot drugi oz. da po izračunu

    dobimo enake verjetnosti za vsak razred, izbiremo tistega, ki ima največjo priorno

    verjetnost. 〈𝐴1 … 𝐴𝑛𝑎〉 so atributi iz dokumenta 𝑑, ki so del besedišča11 𝑉, ki ga

    uporabljamo za klasifikacijo. 𝑛𝑎 je število takšnih atributov v 𝑑. Vzemimo primer: množica

    atrubutov 〈𝑁𝑎𝑖𝑣𝑛𝑖, 𝐵𝑎𝑦𝑒𝑠𝑜𝑣, 𝑣𝑟𝑒𝑑𝑛𝑜𝑠𝑡𝑖, 𝑎𝑡𝑟𝑖𝑏𝑢𝑡𝑜𝑣〉, pri čemer je 𝑛𝑎 = 4, predstavlja eno

    možno vrednost 〈𝐴1 … 𝐴𝑛𝑎〉 za dokument z enim stavkom “Naivni Bayesov klasifikator

    predpostavlja pogojno neodvisnost vrednosti atributov pri danem razredu”.

    V klasifikaciji dokumentov je naš cilj najti pravilni razred za dani dokument. Pravilni razred

    v klasifikaciji NB je najbolj verjeten razred ali razred MAP 𝑐𝑀𝐴𝑃:

    11 Besedišče predstavlja množica vseh atributov, ki jih uporabljamo za klasifikacijo.

  • Naivni Bayesov klasifikator

    9

    𝑐𝑀𝐴𝑃 = arg max𝑏𝑘∈𝐵

    𝑃(𝐵 = 𝑏𝑘|𝑑)

    = arg max𝑏𝑘∈𝐵

    𝑃(𝐵 = 𝑏𝑘) ∏ 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘)𝑛𝑎𝑖=1

    (3.8)

    V enačbi (3.8) se pogojne verjetnosti množijo, ena za vsak položaj (1 ≤ 𝑖 ≤ 𝑛𝑎). To lahko

    povzroči spodnjo prekoračitev s plavajočo vejico12. Zato je bolje, da opravimo izračun z

    vsoto logaritmov verjetnosti (log(𝑥𝑦) = log(𝑥) + log(𝑦)) kot z množenjem verjetnosti.

    Razred z največjo logaritemsko verjetnostjo je še vedno najbolj verjeten. Dobimo:

    𝑐𝑀𝐴𝑃 = arg max𝑏𝑘∈𝐵

    [log 𝑃(𝐵 = 𝑏𝑘) + ∑ log 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘)

    𝑛𝑎

    𝑖=1

    ]

    (3.9)

    Enačba (3.9) ima preprosto razlago. Vsak pogojni parameter log 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘) je teža, ki

    pove, koliko atribut 𝐴𝑖 prispeva, da je 𝑏𝑘 pravilni razred. Podobno, priorna verjetnost

    log 𝑃(𝐵 = 𝑏𝑘) je utež, ki pove relativno frekvenco 𝑏𝑘-ja. Pravilni razredi bodo najverjetneje

    pogostejši razredi. Vsota log priornih verjetnosti in log pogojnih verjetnosti je merilo, koliko

    dokazov prispevajo, da je nek dokument v določenem razredu. Enačba (3.9) izbira razred,

    za katerega imamo največ dokazov [18]. V nadaljevanju smo delali z zgoraj razloženo

    intuitivno interpretacijo multinomskega modela NB oz. z enačbo (3.9).

    Kako dobimo vrednosti za verjetnosti 𝑃(𝐵 = 𝑏𝑘) in 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘)? Najprej poskušamo z

    maksimalno verjetnostno oceno (angl. maximum-likelyhood estimate; MLE), ki je relativna

    pogostost in ustreza najbolj verjetni vrednosti vsakega parametra danih učnih podatkov

    [15]. Za priorne verjetnosti je ta ocena:

    𝑃(𝐵 = 𝑏𝑘) =

    𝑁𝑏𝑘𝑁

    , (3.10)

    kjer je 𝑁𝑏𝑘 število dokumentov v razredu 𝑏𝑘 in je 𝑁 število vseh dokumentov.

    Pogojno verjetnost 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘) izračunamo kot relativno pogostost atributa 𝐴𝑖 v

    12 Spodnja prekoračitev s plavajočo vejico (angl. floating point underflow), znana tudi kot aritmetična spodnja prekoračitev, je stanje v računalniškem programu, kjer je rezultat izračuna manjše število, kot ga računalnik dejansko shrani v pomnilniku [4].

  • Naivni Bayesov klasifikator

    10

    dokumentih, ki pripadajo v razredu 𝑏𝑘:

    𝑃(𝐴𝑖|𝐵 = 𝑏𝑘) =

    𝑇𝑏𝑘𝐴𝑖∑ 𝑇𝑏𝑘𝐴𝑗𝐴𝑗∈𝑉

    ,

    (3.11)

    kjer je 𝑇𝑏𝑘𝐴𝑖 število pojavov atributa 𝐴𝑖 v učnih dokumentih razreda 𝑏𝑘, 𝑉 je besedišče, ki

    ga uporabljamo, in 𝐴𝑗 je atribut iz besedišča. ∑ 𝑇𝑏𝑘𝐴𝑗𝐴𝑗∈𝑉 predstavlja vsoto pojavov vseh

    atributov iz besedišča 𝑉 v učnih dokumentih razreda 𝑏𝑘.

    Problem pri ocenjevanju MLE je v tem, da je vrednost pogojne verjetnosti nič za atribute,

    ki se ne pojavljajo v učnih dokumentih določenega razreda. To se pogosto zgodi, ker je

    zelo verjetno, da se nekateri atributi, ki se pojavljajo v učnih dokumentih enega razreda,

    ne pojavljajo v učnih dokumentih drugega. Ničelna vrednost ene pogojne verjetnosti je

    lahko zelo problematična, ker izniči informacije vseh ostalih verjetnosti pri uporabi enačbe

    (3.8) ali enačbe (3.9) za klasifikacijo. V enačbi (3.8) se 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘) množijo in vsaj ena

    ničelna vrednost povzroča ničelno vrednost celotnega izraza. Pri uporabi enačbe (3.9) za

    vrednosti 0 dobimo napako nedefinirane vrednosti. Načelna rešitev tega problema je

    vključitev majhnega popravka v vseh verjetnostih. V ta namen uporabljamo Laplaceovo

    glajenje13, ki preprosto dodaja 1 štetju za vsak atribut:

    𝑃(𝐴𝑖|𝐵 = 𝑏𝑘) =

    𝑇𝑏𝑘𝐴𝑖 + 1

    ∑ (𝑇𝑏𝑘𝐴𝑗 + 1)𝐴𝑗∈𝑉=

    𝑇𝑏𝑘𝐴𝑖 + 1

    ∑ 𝑇𝑏𝑘𝐴𝑗 + |𝑉|𝐴𝑗∈𝑉 ,

    (3.12)

    kjer je |𝑉| število atributov v besedišču [12].

    Kakšna je časovna zahtevnost multinomskega klasifikatorja NB? Predobdelava14,

    potrebna za računanje parametrov, se opravi v enem prehodu skozi učne podatke.

    Časovna zahtevnost predobdelave je 𝛩(|𝐷|𝐿𝑎𝑣𝑔), pri čemer je |𝐷| število učnih

    dokumentov in je 𝐿𝑎𝑣𝑔 povprečna dolžina dokumentov. Časovna zahtevnost za računanje

    vseh parametrov oz. posodabljanje klasifikatorja NB je 𝛩(|𝐵||𝑉|), pri čemer je |𝐵| število

    razredov, ker parametri sestojijo iz |𝐵| priornih verjetnosti in |𝐵||𝑉| pogojnih verjetnosti.

    Časovna zahtevnost za testiranje klasifikatorja NB je 𝛩(𝐿𝑡 + |𝐷|𝑛𝑎), kjer je 𝐿𝑡 dolžina

    13 V statistiki je Laplaceovo glajenje (angl. Laplace smoothing) znano tudi kot aditivno glajanje ali Lidstoneovo glajanje, ki se uporablja za glajenje kategoričnih podatkov [3]. 14 Preobdelava se sestoji iz izločitve atributov iz besedišča, štetja pojavov atributov in podobno.

  • Naivni Bayesov klasifikator

    11

    testnega dokumenta in 𝑛𝑎 število atributov v obravnavanem dokumentu. 𝛩(𝐿𝑡 + |𝐷|𝑛𝑎) =

    𝛩(|𝐷|𝑛𝑎), ker je dolžina testnega dokumenta 𝐿𝑡 omejena in 𝐿𝑡 < 𝑐|𝐷|𝑛𝑎 za konstanto 𝑐.

    Torej, časovne zahtevnosti predobdelave, učenja in testiranja multinomskega klasifikatorja

    NB so linearne. Lahko rečemo, da ima NB optimalno časovno zahtevnost, ker moramo

    pogledati podatke vsaj enkrat. Njegova učinkovitost je eden od razlogov, zakaj je NB

    priljubljena metoda klasifikacije dokumentov .

    3.2.2 Bernoullijev model

    Alternativa multinomskega modela NB je Bernoullijev model, znan tudi kot multivariaten

    Bernoullijev model. Bernoullijev model NB tvori indikator za vsak atribut v besedišču.

    Vrednost 1 označuje prisotnost atributa v obravnavanem dokumentu, vrednost 0 pomeni

    odsotnost. Bernoullijev model ima enako časovno zahtevnost kot multinomski model [18].

    Multinomski in Bernoullijevi model se razlikujeta v strategiji ocenjevanja in pravilih

    klasifikacije. Bernoullijev model ocenuje pogojno verjetnost 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘) kot razmerje

    med številom učnih dokumentov razreda 𝑏𝑘, ki vsebujejo atribut 𝐴𝑖, in številom vseh učnih

    dokumentov (3.13).

    𝑃(𝐴𝑖|𝐵 = 𝑏𝑘) =

    |𝐷𝑏𝑘𝐴𝑖|

    |𝐷| ,

    (3.13)

    pri čemer je |𝐷𝑏𝑘𝐴𝑖| število učnih dokumentov razreda 𝑏𝑘, ki vsebujejo atribut 𝐴𝑖.

    Da bi se izognili problemu pojave ničelnih vrednosti, tudi v Bernoullijevem modelu

    uporabljamo pri računanju pogojnih verjetnosti Laplaceovo glajenje in dodamo 1 številu

    |𝐷𝑏𝑘𝐴𝑖|. Sledi:

    𝑃(𝐴𝑖|𝐵 = 𝑏𝑘) =

    |𝐷𝑏𝑘𝐴𝑖| + 1

    |𝐷| + 2

    (3.14)

    V imenovalcu v enačbi (3.13) dodamo 2, ker |𝐷| predstavlja vsoto števil vseh

    dokumentov, ki vsebujejo atribut 𝐴𝑖, in vseh dokumentov, ki ne vsebujejo atributa 𝐴𝑖 [19].

    Razlika med dvema obravnavanima modeloma je pri klasifikaciji testnega dokumenta.

  • Naivni Bayesov klasifikator

    12

    Bernoullijev model uporablja binarno informacijo pojavov in ne upošteva števila pojavov,

    multinomski model pa vodi evidenco o večkratni pojavi. Bernoullijev model običajno naredi

    veliko napak pri klasifikaciji dolgih dokumentov.

    Modela se razlikujeta tudi v načinu uporabe atributov, ki se ne pojavljajo v testnem

    dokumentu pri klasifikaciji. Pri uporabi multinomskega modela za klasifikacijo omenjeni

    atributi ne vplivajo na odločitev, ker v enačbi (3.9) seštejemo logaritem pogojnih

    verjetnosti samo za atribute, ki se pojavljajo v testnem dokumentu, vendar imajo pri

    uporabi Bernoullijevega modela veliki vpliv. Bernoullijev model v primeru, da se določeni

    atributi ne pojavljajo v testnem dokumentu, sešteje logaritme komplementarnih pogojnih

    verjetnosti atributov:

    𝑐𝑀𝐴𝑃 = arg max𝑏𝑘∈𝐵

    [log 𝑃(𝐵 = 𝑏𝑘) + ∑ log 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘)

    𝐴𝑖∈𝑏𝑘

    + ∑ log 𝑃(�̅�𝑖|𝐵 = 𝑏𝑘)

    𝐴𝑖∉𝑏𝑘

    ] ,

    (3.15)

    pri čemer je 𝐴𝑖 ∉ 𝑏𝑘 atribut, ki se ne pojavi v razredu 𝑏𝑘, in 𝑃(�̅�𝑖|𝐵 = 𝑏𝑘) je komplementna

    pogojna verjetnost. Vrednost pogojnih verjetnosti 𝑃(�̅�𝑖|𝐵 = 𝑏𝑘) dobimo z uporabo pravila

    komplementa15.

    𝑃(�̅�𝑖|𝐵 = 𝑏𝑘) = 1 − 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘)

    (3.16)

    Vrednost izraza 𝑃(𝐴𝑖|𝐵 = 𝑏𝑘) že imamo izračunano s pomočjo enačbe (3.14).

    Da bi povečali učinkovitost obeh naivnih Bayesovih dogodkovnih modelov, uporabljamo

    metodo izbire atributov.

    15 Vsota verjetnosti enega dogodka in verjetnosti njegovega komplementa (preprosto povedano, vsota verjetnosti, da se en dogodek zgodi, in verjetnosti, da se isti dogodek ne zgodi) znaša 1 [9].

  • Naivni Bayesov klasifikator

    13

    4 IZBIRA ATRIBUTOV

    Izbira atributov (znana tudi kot izbira značilnosti) je postopek izbiranja podskupine pojmov,

    ki se pojavljajo v učnem naboru, in uporabe le te podskupine kot atributov v nadaljnjih

    izračunih. Množica vseh izbranih atributov predstavlja besedišče.

    Izbira atributov ima dva glavna namena. Prvo, izvede posodabljanje, medtem ko je

    uporaba klasifikatorja učinkovitejša z zmanjšanjem velikosti besedišča. Drugo, izbira

    atributov pogosto poveča točnost klasifikacije z odpravo atributov, ki povečajo število

    napak pri klasifikaciji.

    Metoda izbire atributov vključuje identifikacijo atributov, ki so ustrezni za klasifikacijo [17].

    Osnovni algoritem izbire atributov izračuna najprej na danem razredu 𝑏𝑘 ∈ 𝐵 oceno

    koristnosti 𝑂(𝐴𝑖 , 𝑏𝑘) za vsak atribut 𝐴𝑖 iz prvotnega besedišča oz. iz vseh atributov, ki se

    pojavljajo v učnih dokumentih. Potem izbere 𝑛𝑎 atributov, ki imajo največje vrednosti

    𝑂(𝐴𝑖 , 𝑏𝑘). Vsi drugi atributi se zavržejo in se ne uporabljajo v klasifikaciji. Obstaja več

    različnih metod izbire atributov. V našem diplomskem delu smo obravnavali štiri različne

    metode: medsebojne informacije (angl. mutual information; MI), test chi-kvadrat (angl. chi-

    square; χ2), dobiček informacij (angl. information gain; IG) in izbiro atributov na osnovi

    pogostosti (angl. frequency-based).

    4.1 Medsebojne informacije

    MI je pogosta metoda izbire atributov za izračun ocene koristnosti 𝑂(𝐴𝑖 , 𝑏𝑘) atributa 𝐴𝑖 in

    razreda 𝑏𝑘. MI določi, koliko prisotnost ali odsotnost atributa 𝐴𝑖 prispeva k pravilni

    klasifikacijski odločitvi za razreda 𝑏𝑘. Ocene koristnosti 𝑂(𝐴𝑖, 𝑏𝑘) v skladu z MI izračunamo

    z naslednjo enačbo:

    𝑂(𝐴𝑖 , 𝑏𝑘) = 𝐼(𝑈, 𝐶)

    = ∑ ∑ 𝑃(𝑈 = 𝑒𝐴𝑖 , 𝐶 = 𝑒𝑏𝑘) log2𝑃(𝑈 = 𝑒𝐴𝑖 , 𝐶 = 𝑒𝑏𝑘)

    𝑃(𝑈 = 𝑒𝐴𝑖) 𝑃(𝐶 = 𝑒𝑏𝑘)𝑒𝑏𝑘∈{1,0}𝑒𝐴𝑖∈{1,0}

    ,

    (4.1)

    kjer so:

  • Naivni Bayesov klasifikator

    14

    𝐼(𝑈, 𝐶) - kriterij MI med 𝑈 in 𝐶,

    𝑈 – spremenljivka, ki ima vrednost 𝑒𝐴𝑖 = 1, če dokument vsebuje atribut 𝐴𝑖, in 𝑒𝐴𝑖 = 0, če

    dokument ne vsebuje atributa 𝐴𝑖,

    𝐶 – spremenljivka, ki ima vrednost 𝑒𝑏𝑘 = 1, če dokument pripada razredu 𝑏𝑘, in 𝑒𝑏𝑘 = 0,

    če dokument ne pripada razredu 𝑏𝑘.

    Enačba (4.1) je ekvivalenta enačbi (4.2) za verjetnost MLE [18].

    𝐼(𝑈, 𝐶) =

    𝑁11𝑁

    log2𝑁𝑁11

    𝑁1𝑥𝑁𝑥1+

    𝑁01𝑁

    log2𝑁𝑁01

    𝑁0𝑥𝑁𝑥1

    +𝑁10𝑁

    log2𝑁𝑁10

    𝑁1𝑥𝑁𝑥0+

    𝑁00𝑁

    log2𝑁𝑁00

    𝑁0𝑥𝑁𝑥0 ,

    (4.2)

    kjer je 𝑁𝑠 število dokumentov, ki imajo vrednosti za 𝑒𝐴𝑖 in 𝑒𝑏𝑘 enake vrednostim v dveh

    indeksih. Na primer, 𝑁10 je število dokumentov, ki vsebujejo atribut 𝐴𝑖 (𝑒𝐴𝑖 = 1) in ne

    pripadajo v razredu 𝑏𝑘 (𝑒𝑏𝑘 = 0). 𝑁1𝑥 = 𝑁10 + 𝑁11 je število dokumentov, ki vsebujejo

    atribut 𝐴𝑖 (𝑒𝐴𝑖 = 1). Pri tem štejemo dokumente, ki pripadajo in ne pripadajo razredu 𝑏𝑘

    (𝑒𝑏𝑘 ∈ {1, 0}). 𝑁 = 𝑁00 + 𝑁01 + 𝑁10 + 𝑁11 je število vseh dokumentov |𝐷|.

    Da bi izbrali 𝑛𝑎 atributov 𝐴1 … 𝐴𝑛𝑎 za dani razred 𝑏𝑘, najprej računamo 𝑂(𝐴𝑖 , 𝑏𝑘) za vse

    atribute, potem pa izbiramo 𝑛𝑎 atributov z največjimi vrednostmi. MI izračuna, koliko

    informacij prispeva en atribut k danem razredu. Če je atribut porazdeljen v določenem

    razredu enako kot v vseh razredih, potem je 𝐼(𝑈, 𝐶) = 0. MI doseže najvišjo vrednost, če

    je atribut popoln indikator za pripadnost razredu oz. če je atribut prisoten v dokumentu, ko

    je dokument resnično v tem razredu [18].

    4.2 Test chi-kvadrat

    Druga priljubljena metoda izbire atributov je χ2. Test χ2 ocenjuje atribute z izračunom

    vrednosti chi-kvadrat glede določenega razreda. Začetna hipoteza 𝐻0 (ničelna hipoteza16)

    je predpostavka, da sta dva dogodka nepovezana [22] oz. da sta neodvisna, pri čemer

    neodvisnost za dogodke 𝐴 in 𝐵 pomeni, da velja 𝑃(𝐴𝐵) = 𝑃(𝐴)𝑃(𝐵). To neodvisnost

    16 Ničelna hipoteza se nanaša na splošno izjavo, da ni povezave med dvema izmerjenima pojavoma [23].

  • Naivni Bayesov klasifikator

    15

    preizkušamo z naslednjo enačbo:

    𝜒2(𝐷, 𝐴𝑖, 𝑏𝑘) = ∑ ∑(𝑁𝑒𝐴𝑖𝑒𝑏𝑘

    − 𝐸𝑒𝐴𝑖𝑒𝑏𝑘)

    2

    𝐸𝑒𝐴𝑖𝑒𝑏𝑘𝑒𝑏𝑘∈{1,0}𝑒𝐴𝑖∈{1,0} ,

    (4.3)

    kjer je 𝐸 pričakovana pogostost. Na primer, 𝐸11 je pričakovana pogostost atributa 𝐴𝑖 in

    razreda 𝑏𝑘, da se pojavita skupaj v dokumentu ob predpostavki, da sta atribut in razred

    neodvisna.

    𝐸11 = 𝑁 𝑃(𝐴𝑖) 𝑃(𝑏𝑘) = 𝑁

    𝑁11 + 𝑁10𝑁

    𝑁11 + 𝑁01

    𝑁

    (4.4)

    χ2 je merilo, koliko pričakovana števila 𝐸 in opazovana števila 𝑁 odstopajo drug od

    drugega. Visoka vrednost χ2 pomeni, da je hipoteza neodvisnosti, ki implicira, da so

    pričakovana in opazovana števila podobna, napačna. Če sta dogodka odvisna, potem

    pojav atributa povzroči, da je pojav razreda bolj verjeten (ali manj verjeten). Aritmetično

    enostavnejši način računanja χ2 je naslednji:

    𝜒2(𝐷, 𝐴𝑖, 𝑏𝑘) =

    (𝑁11 + 𝑁10 + 𝑁01 + 𝑁00) (𝑁11𝑁00 − 𝑁10𝑁01)2

    (𝑁11 + 𝑁01) (𝑁11 + 𝑁10) (𝑁10 + 𝑁00) (𝑁01 + 𝑁00) .

    (4.5)

    Enačba (4.5) je ekvivalentna enačbi (4.3) [18].

    4.3 Dobiček informacije

    Metoda dobička informacije se pogosto uporablja kot kriterij za vrednotenje atributov na

    področju strojnega učenja. IG meri število bitov informacij, pridobljenih za klasifikacijo s

    poznavanjem prisotnosti ali odsotnosti atributa v dokumentu. IG za določeni atribut 𝐴𝑖 je

    definiran kot:

    𝐺(𝐴𝑖) = − ∑ 𝑃(𝑏𝑘) log 𝑃(𝑏𝑘)

    𝑏𝑘∈𝐵

    + 𝑃(𝐴𝑖) ∑ 𝑃(𝑏𝑘|𝐴𝑖) log 𝑃(𝑏𝑘|𝐴𝑖)

    𝑏𝑘∈𝐵

    + 𝑃(𝐴�̅�) ∑ 𝑃(𝑏𝑘|𝐴�̅�) log 𝑃(𝑏𝑘|𝐴�̅�)

    𝑏𝑘∈𝐵

    ,

    (4.6)

  • Naivni Bayesov klasifikator

    16

    kjer je 𝐺(𝐴𝑖) kriterij IG za atribut 𝐴𝑖.

    Za dani učni nabor se IG izračuna za vsak atribut. Atributi, katerih vrednosti IG so manjše

    od vnaprej določenega praga, se izločajo iz množice atributov [28].

    4.4 Izbira atributov na osnovi pogostosti

    Izbira atributov na osnovi pogostosti predstavlja metodo izbire atributov, ki se najbolj

    pogosto pojavljajo v razredu. Pogostost se lahko definira kot pogostost dokumenta (število

    dokumentov v razredu 𝑏𝑘, v katerem se pojavlja atribut 𝐴𝑖) ali pogostost zbirke (število

    pojavov atributa 𝐴𝑖 v dokumentih, ki pripadajo razredu 𝑏𝑘). Pogostost dokumenta je

    primernejša metoda izbire atributov za Bernoullijev model, medtem ko je pogostost zbirke

    za multinomski model.

    Metoda izbire atributov na osnovi pogostosti izbere pogoste atribute, ki nimajo nobenih

    posebnih informacij za dani razred. V primeru, kot je izbranih več tisoč atributov, ta

    metoda običajno deluje dobro [18]. Torej, če je suboptimalna natančnost sprejemljiva,

    potem je metoda izbire atributov na osnovi pogostosti dobra alternativa za bolj

    kompleksne metode, ker je ta metoda najpreprostejša tehnika za zmanjševanje besedišča

    [28].

  • Naivni Bayesov klasifikator

    17

    5 KLASIFIKACIJA DOKUMENTOV

    V naslednjem poglavju predstavimo izdelano programsko rešitev za klasifikacijo

    dokumentov17. Najprej opišemo aplikacijo in vse implementirane funkcionalnosti in

    omenimo predpostavke in omejitve naše aplikacije. Potem podamo kratek opis učnega

    nabora, ki smo ga uporabljali pri posodabljanju klasifikatorja, in demonstriramo delovanje

    in način pridobivanja rezultatov.

    5.1 Aplikacija

    Naša aplikacija je izdelana v programskem jeziku C# v ogrodju .NET [1] z uporabo

    intergriranega razvojnega okolja Microsoft Visual Studio in je namenjena za delovanje v

    operacijskem sistemu Windows. Za razvijanje aplikacije smo uporabili grafični aplikacijski

    programski vmesnik Windows Forms.

    Pri zagonu aplikacije najprej inicializiramo prazne sezname, v katerem se pri izvajanju

    različnih funkcionalnosti shranujejo razredi oz. kategorije (po nalaganju učnih naborov),

    atributi (po izbiranju atributov) in rezultati (po opravljanju klasifikacije).

    V ta namen smo ustvarili pomožna razreda: razred (t.i. “NaivniBayesovRazred”) za

    obravnavane kategorije oz. razrede dekumentov, v katerem shranujemo naziv razreda,

    njegove učne dokumente, atribute, ki se pojavljajo v teh dokumentih in verjetnost tega

    razreda, in razred (t.i. “Atribut”) za izbrane atribute, v katerih shranjujemo vrednost

    atributa in potrebne verjetnosti tega atributa za nadaljnje izračune.

    Naložene učne dokumente shranujemo v njihovih vnaprej določenih razredih in za vsako

    novo kategorijo oz. razred pri nalaganja dokumentov ustvarjamo nov objekt

    “NaivniBayesovRazred”, ki ga vstavljamo v ustreznem seznamu. Pred izvajanjem enega

    od metod za izbiro atributov, naložene učne dokumente obdelujemo tako, da bi dobili

    ustrezne učne podatke. Najprej iz teksta vsakega dokumenta odpravljamo odvečne

    znake, kot so zamiki, presledki, nove vrstice, podpičja, vejice itd, in velike črke

    zamenjujemo z manjšimi. Potem sledi shranjevanje vseh pojmov, ki se pojavljajo skupaj s

    17 Klasifikacija dokumentov predstavlja dodelitev dokumenta enemu ali večjemu številu razredov [11].

  • Naivni Bayesov klasifikator

    18

    številom njihovih pojavov in dokumentom, ki ga obdelujemo v razredu, v katerem pripada

    obravnavani dokument. Na ta način lahko enostavno pridobimo vse potrebne informacije

    o atributih, ko izvajamo račune za izbiro atributov.

    V naši aplikaciji smo implementirali metode izbire atributov in dogodkovna modela

    naivnega Bayesovega klasifikatorja, ki smo jih razložili v prešnjih poglavjih. Račune za

    izbiranje atributov in za klasifikacijo dokumentov izvajamo z že omenjenimi enačbami.

    Grafični uporabniški vmesnik je predstavljen na slikah 5.1, 5.2, 5.3 in 5.4. Sestoji iz več

    zavihkov.

    Na sliki 5.1 je prikazan zavihek, imenovan “Učni dokumenti”, ki vsebuje več možnosti za

    vnos in izbris učnih dokumentov.

    Na sliki 5.2 je viden zavihek “Razredi”, ki vsebuje statistiko o razredih in možnost za vnos

    in izbris razredov.

    Slika 5.1: Zavihek "Učni dokumenti"

  • Naivni Bayesov klasifikator

    19

    Slika 5.2: Zavihek "Razredi"

    Slika 5.3: Zavihek "Atributi"

  • Naivni Bayesov klasifikator

    20

    Slika 5.4: Zavihek "Klasifikacija"

    Na sliki 5.3 je prikazan zavihek “Atributi”, ki vsebuje možnost izbire atributov na več

    načinov in prikazuje izbrane atribute.

    Na sliki 5.4 je demonstrirana klasifikacija oz. so prikazani rezultati iz klasifikacije v zavihku

    “Klasifikacija”, ki vsebuje možnost za vnos in klasifikacije dokumentov z dvema

    klasifikacijskima dogodkovnima modeloma in prikazuje graf z rezultati, pridobljenimi iz

    klasifikacije.

    5.2 Demonstracija delovanja aplikacije

    Aplikacijo smo izvajali na prenosnem računalniku s procesorjem Intel i3 2328M in 8 GB

    RAM. Aplikacija deluje na operacijskem sistemu Windows in zahteva nameščeno ogrodje

    .NET.

  • Naivni Bayesov klasifikator

    21

    Da bi opravili klasifikacijo dokumentov, najprej nalagamo nabor učnih dokumentov s

    pritiskom na gumb “Odpri učne dokumente”. Po nalaganju dobimo izgled, ki je prikazan na

    sliki 5.1.

    Naslednji korak je izbira metode izbire atributov iz padajočega seznama in izbira število

    atributov v zavihku “Atributi”. Po pritisku na gumb “Izbira atributov” v tabeli dobimo

    določeno število atributov za vsak razred, kot je prikazano na sliki 5.3.

    Na koncu odpiramo dokument, ki ga želimo klasificirati s pritiskom na gumb “Odpri

    dokument” v zavihku “Klasifikacija”. Potem izbiramo dogodkovni model naivnega

    Bayesovega klasifikatorja iz padajočega seznama. Pridobljeni rezultati so po opravljeni

    klasifikaciji prikazani v grafu, kot je vidno na sliki 5.4. Rezultati v grafu predstavljajo

    razmerje med vrednostimi razredov za obravnavani testni dokument.

    5.3 Predpostavke in omejitve

    Pri izdelavi diplomskega dela smo se omejili na dva dogodkovna modela naivnega

    Bayesovega klasifikatorja: multinomski in Bernoullijev; in na štiri metode izbire atributov:

    medsebojne informacije, dobiček informacije, chi-kvadrat in na osnovi pogostosti.

    Upoštevali smo predpostavko, da dolžina dokumentov oz. število besed v dokumentih

    nima nobenega vpliva na točnost klasifikacije. Zaradi boljše izbire smo atribute omejili na

    besede večje od ene črke.

    5.4 Učni nabor

    Učni nabor predstavlja nabor dokumentov, ki ga uporabljamo, da bi posodobili

    klasifikatorje. Iz učnega nabora dobimo podatke o vseh atributov, ki se pojavljajo v

    določenem razredu, v koliko dokumentih in kolikokrat se pojavljajo, kar je velikega

    pomena pri izračunih za izbiro atributov in klasifikacije.

    Da bi dobili potrebne rezultate za empirično primerjavo med klasifikatorji in metodami

    izbire atributov, smo uporabili učni nabor dokumentov, pridobljen iz Google News18 [14].

    18 Google News je računalniško ustvarjena spletna stran za novice iz virov po vsem svetu in podobne zgodbe prikazuje skupaj [2].

  • Naivni Bayesov klasifikator

    22

    Naš učni nabor je sestavljen iz 600 učnih dokumentov oz. novic, enakomerno

    porazdeljenih v šest kategorij: poslovanje, tehnologija, zdravje, šport, zabava in znanost.

    Dokument predstavlja besedilno datoteko, ki vsebuje naslov (v prvi vrstici) in glavno

    besedilo. Naslov nam pove, v katero kategorijo pripada dokument. Glavno besedilo je

    besedilo članka.

    5.5 Testni nabor

    Testni nabor predstavlja nabor dokumentov, ki ga uporabljamo za testiranje uspešnosti

    klasifikatorja. Vsak dokument iz testnega nabora klasificiramo z že posodobljenimi

    klasifikatorji. Rezultate o uspešnosti dobimo tako, da primerjamo vnaprej znano kategorijo

    dokumenta in kategorijo, ki smo jo dobili po opravljeni klasifikaciji.

    Kot testni nabor smo uporabili 120 dokumentov oz. novic, pridobljenih iz Google News,

    enakomerno porazdeljenih v že omenjenih šestih kategorijah.

  • Naivni Bayesov klasifikator

    23

    6 REZULTATI

    Rezultate o stopnji uspešnosti kombinacije naivnih Bayesovih dogodkovnih modelov in

    metod izbire atributov dobimo tako, da računamo razmerje med številom uspešno

    klasificiranih testnih dokumentov in skupnim številom testnih dokumentov.

    6.1 Primerjava in statistike

    Tabela 6.1: Eksperimentalni rezultati

    naivni Bayesov

    dogodkovni model metoda izbire atributov

    število izbranih

    atributov

    stopnja

    uspešnosti

    multinomski

    na osnovi pogostosti 50 67,50%

    100 73,33%

    medsebojne informacije 50 83,33%

    100 87,50%

    test chi-kvadrat 50 80,83%

    100 85,00%

    dobiček informacije 50 43,33%

    100 59,17%

    multivariatni Bernoullijev

    na osnovi pogostosti 50 21,67%

    100 29,17%

    medsebojne informacije 50 21,67%

    100 30,00%

    test chi-kvadrat 50 30,00%

    100 34,17%

    dobiček informacije 50 20,83%

    100 22,50%

    Eksperimentalni rezultati, ki smo jih dobili na osnovi našega učnega in testnega nabora

    dokumentov, so prikazani v tabeli 6.1.

  • Naivni Bayesov klasifikator

    24

    6.2 Diskusija

    Iz rezultatov, ki smo jih dobili s pomočjo naše aplikacije, je razvidno, da je za samodejno

    klasifikacijo dokumentov najbolj primeren multinomski naivni Bayesov dogodkovni model.

    Najboljši rezultate je dala metoda medsebojne informacije, ko smo dobili največjo število

    uspešno klasificiranih dokumentov (stopnja uspešnosti je bila 87,5%). Empirična

    primerjava je pokazala tudi, da stopnja uspešnosti ni odvisna samo od dogodkovnega

    modela in metode izbire atributov, ampak tudi od števila izbranih atributov. Izkazalo se je,

    da večje število izbranih atributov pripelje do večje stopnje uspešnosti.

  • Naivni Bayesov klasifikator

    25

    7 SKLEP

    V diplomskem delu smo opisali naivni Bayesov klasifikator in njegovo uporabo pri

    samodejni klasifikaciji dokumentov in razložili, na kakšen način podatkovni atributi in

    dogodkovni modeli naivnega Bayesovega klasifikatorja vplivajo na njegovo učinkovitost pri

    tem opravilu. V ta namen smo implementirali aplikacijo za klasificiranje dokumentov,

    posodobili klasifikatorje z našim naborom učnih dokumentov in klasificirali nabor testnih

    dokumentov. Na podlagi pridobljenih rezultatov smo naredili empirično primerjavo med

    različnimi kombinacijami dogodkovnih modelov naivnega Bayesovega klasifikatorja in

    metod izbire atributov. Delo zaključimo s pregledom morebitnih izzivov in težav, ki so se

    pojavili med delom, ter napotkov za nadaljnje delo in lastno oceno o ciljih, ki smo jih

    začrtali na začetku.

    7.1 Izzivi in težave

    Največji izziv je bil ustvarjanje dovolj velikega učnega in testnega nabora dokumentov. Da

    bi dobili ustrezne rezultate za empirično primerjavo, smo ustvarili učni nabor, sestavljen iz

    600 učnih dokumentov, in testni nabor, sestavljen iz 120 učnih dokumentov. Dokumente

    smo morali posebej razdeliti v ustrezne kategorije.

    Pri našem delu nismo imeli posebnih velikih težav. Na začetku smo imeli težave z

    ustreznim ločevanjem besed. Med izdelavo aplikacije smo hkrati dodajali potrebna ločila.

    7.2 Možne izboljšave in nadaljnje delo

    Kot smo omenili, smo v naši aplikaciji implementirali samo najučinkovitejša dogodkovna

    modela naivnega Bayesovega klasifikatorja za samodejno klasifikacijo dokumentov.

    Možna izboljšava bi bila implementacija vseh dogodkovnih modelov naivnega

    Bayesovega klasifikatorja, da bi lahko naredili empirično primerjavo vseh modelov.

    Druga možna izboljšava zasnovane aplikacije bi bila implementacija še več metod izbire

    atributov. Da bi izboljšali eksperimentalne rezultate, ki smo jih dobili, bi lahko naredili učne

  • Naivni Bayesov klasifikator

    26

    in testne nabori dokumentov z večjim številom dokumentov ali večjim številom učnih in

    testnih naborov dokumentov.

    7.3 Lastna ocena in zaključek

    Sklepamo, da smo uresničili naše cilje. V diplomskem delu smo proučili naivni Bayesov

    klasifikator in njegovo uporabo pri samodejni klasifikaciji dokumentov. S pomočjo

    zasnovane aplikacije smo dobili rezultate, potrebne za empirično primerjavo med

    različnimi kombinacijami dogodkovnih modelov naivnega Bayesovega klasifikatorja in

    metod izbire atributov. Vedno obstaja možnost, da bi delo opravili še boljše, ampak smo

    zadovoljni z rezultati, ki smo jih dobili. Široka uporaba, preprostost in presenetljivo dobri

    rezultati naivnega Bayesovega klasifikatorja so bili glavni razlogi, da smo se odločili za to

    temo. Številne študije o tem klasifikatorju in še vedno negotovi rezultati o optimalni

    kombinaciji dogodkovnega modela in metode izbire atributov so služili kot motiv pri

    raziskavi. Snovanje te aplikacije in analiziranje rezultatov, ki smo jih dobili, je bilo zelo

    zanimivo in upamo, da bomo imeli v prihodnosti priložnost delati na podobnem projektu.

  • Naivni Bayesov klasifikator

    27

    SEZNAM UPORABLJENIH VIROV

    [1] .NET. (10.03.2015). Pridobljeno iz Microsoft: http://www.microsoft.com/net

    [2] About Google News. (10.03.2015). Pridobljeno iz Google: https://www.google.com/intl/en_us/about_google_news.html

    [3] Additive smoothing. (10.03.2015). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/Additive_smoothing

    [4] Arithmetic underflow. (10.03.2015). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/Arithmetic_underflow

    [5] Bandyopadhyay, S. P., Forster, R. M., Gabbay, M. D., Thagard, P., & Woods, J. (2011). Philosophy of Statistics, Volume 7: Handbook of the Philosophy of Science (1 izd.). Elsevier.

    [6] Bayes' theorem. (10.03.2015). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/Bayes'_theorem

    [7] Bird, A., & Ladyman, J. (2013). Arguing About Science. Routledge.

    [8] Bishop, C. M. (2006). Pattern Recognition and Machine Learning. Berlin: Springer.

    [9] Complementary event. (10.03.2015). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/Complementary_event

    [10] Decision rule. (10.03.2015). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/Decision_rule

    [11] Document classification. (10.03.2015). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/Document_classification

    [12] Domingos, P., & Pazzani, M. (1997). Beyond Independence: Conditions for the Optimality of the Simple Bayesian Classifier under zero-one loss. Machine Learning(29), 103-130.

    [13] Downey, A. B. (2012). Think Bayes, Bayesian Statistics Made Simple. Needham, Massachusetts: Green Tea Press.

    [14] Google News. (10.03.2015). Pridobljeno iz Google: https://news.google.com/

    [15] King, G. (1989). Unifying Political Methodology: The Likelyhood Theory of Statistical Inference. (R. M. Alvarez, & N. Beck, Ured.) The University of Michigan Press.

    [16] Kononenko, I., & Šikonja, M. R. (2010). Inteligentni sistemi. Ljubljana.

    [17] Lutu, P. E. (2013). Fast Feature Selection for Naive Bayes Classification in Data Stream Mining. proceedings of the World Congress on Engineering (WCE), III, str. 1549-1554. London.

  • Naivni Bayesov klasifikator

    28

    [18] Manning, C. D., Raghavan, P., & Hinrich, S. (2008). Introduction to Information Retrieval. Cambridge: Cambridge University Press.

    [19] McCallum, A., & Nigam, L. (1998). A comparison of event models for Naive Bayes text classification. AAAI-98 workshop on learning for text categorization.

    [20] Mitchell, T. M. (1997). Machine Learning. McGraw-Hill Science/Engineering/Math.

    [21] Naive Bayes classifier. (10.03.2015). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/Naive_Bayes_classifier

    [22] Novakovic, J. (2010). The Impact of Feature Selection on the Accuracy of Naive Bayes Classifier. 18 Telecommunications Forum, Proceedings Telfor, 1113-1116.

    [23] Null hypothesis. (10.03.2015). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/Null_hypothesis

    [24] Olofsson, P., & Andersson, M. (2012). Probability, Statistics, and Stochastic Processes (2nd izd.). Hoboken, New Jersey: John Wiley & Sons, Inc.

    [25] Russell, S., & Norvig, P. (2010). Artificial Intelligence: A Modern Approach (3rd izd.). New Jersey: Prentice Hall.

    [26] Tsarev, D., Petrovskiy, M., & Mashechkin, I. (2013). Supervised and Unsupervised Text Classification via Generic Summarization. International Journal of Computer Information Systems and Industrial Management Applications, 509-515.

    [27] Verjetnost. (10.03.2015). Pridobljeno iz Wikipedia: http://sl.wikipedia.org/wiki/Verjetnost

    [28] Yang, Y., & Pedersen, J. O. (1997). A Comparative Study on Feature Selection in Text Categorization. Proceedings of the Fourteenth International Conference on Machine Learning, (str. 412-420).