• Nem Talált Eredményt

Bayesi hálózatok

Osztályozás és regresszió

4.7. Bayesi hálózatok

A Bayes hálózatok két fontos elvre építenek. A maximum likelihood elv sze-rint egy objektum (elem) osztályozásánál azt az osztályt fogjuk választani, amelynek a legnagyobb a valószínűsége a megfigyelések és az adott objektum osztályattribútumtól különböző attribútumai alapján. A Bayes-tétel szerint pedig meghatározhatjuk a feltételes valószínűséget, ha ismerünk néhány másik valószínűséget.

A Bayes-tétel segítségével meghatározható az optimális (lásd 4.1.2. sza-kaszt) klasszifikációs szabály. Az egyszerűség kedvéért a tévedés költsége le-gyen minden esetben azonos. Az osztályozandó példányokat egyenként te-kintjük, Yi-vel jelöljük azt az eseményt, hogy az osztályozadó objektum az i-edik osztályba tartozik (Y = yi). A korábbiakhoz hasonlóan az objektu-mok (példányok) megfigyelhető tulajdonságait az X⃗ írja le, X⃗ komponenseit, az egyes attribútumokat,X1, . . . Xk-val jelöljük. Az egyes attribútumok adott (osztályozandó) objektum (példány) esetén felvett konkrét értékeitx1, . . . , xk -val jelöljük,⃗x= (x1, ..., xk). Egy ismeretlen,⃗x tulajdonságú példányt abba az osztályba (i) érdemes (optimális) sorolni, amelyikre P(

Yi|X⃗ =⃗x

minden i osztályra konstans, ezért P(

Yi|X⃗ =⃗x )

maxima-lizálásához elegendőP(

X⃗ =⃗x|Yi

)P(Yi)-t maximalizálni. P(Yi) vagy a priori adott, vagy pedig a mintából a relatív gyakoriságokkal egyszerűen becsülhető.

Így már „csak” P(

X⃗ =⃗x|Yi )

-t kell meghatározni.

Amennyiben k darab bináris magyarázó attibútumunk van, az Y pedig féle értéket vehet fel, akkorℓ(2k1)darabP(

X⃗ =⃗x|Yi )

értéket kellene megbe-csülnünk. A 3.3.6 részben láttuk, hogy egy valószínűség megbecsléséhez relatív gyakorisággal mennyi tanítópontot kell vennünk. A gyakorlati esetek többsé-gében ennyi tanítópont nem áll rendelkezésünkre, ezért valamilyen feltétellel kell élnünk a modell kapcsán. A naív Bayes-hálók feltételezik, hogy az egyes attribútumok feltételesen függetlenek egymástól.

4.7.1. Naív Bayes-hálók

A naív Bayes-hálók olyan feltételezéssel élnek, amelynek segítségével aℓ(2k1) darab megbecsülendő paraméter számaℓ·k-ra csökken.

4.7.1. Definíció Legyen X, Y és Z három valószínűségi változó. Az X felté-telesen független Y-tól adott Z esetén, ha

P(X =xi|Y =yj, Z =zk) = P(X =xi|Z =zk) minden lehetséges xi, yj, zk hármasra.

A feltételes függetlenség fogalmát két példán keresztül szemléltetjük:

1. Egy gyermek olvasási képessége adott életkor esetén feltételesen független a testmagasságától: ha például a 8 éves tanulókat tekintjük, az, hogy egy adott diák mennyire jól olvas, nem függ attól, hogy milyen magas.

Ugyanakkor az olvasási képesség nyilván összefügg a testmagassággal, hiszen az idősebb gyerekek magasabbak és jobban is olvasnak.

2. Ha például azeső,vihar,villámlásdiszkrét valószínűségi változókat te-kintjük, akkor aviharfeltételesen független azesőtől, ha avillámlást ismerjük. A villámlás ugyanis vihart okoz (a villámlás hiánya pe-dig azt jelenti, hogy nincs vihar), ezért azeső ténye semmilyen további információval nem szolgál a viharra vonatkozóan. Természetesen van összefüggés avihar és azesőközött, de nincs köztük feltételes összefüg-gés, ha a villámlás értékét ismerjük.

A naív Bayes-osztályozó feltételezése szerint egy osztályon belül azX⃗ = (X1, . . . , Xk) attribútumok feltételesen függetlenek egymástól. Ekkor a P(

X⃗ =⃗x|Yi )

való-színűség kifejezhető a P(Xj|Y) valószínűségek szorzataként, hiszen

P(X1, X2|Yi) =P(X1|X2, Yi)P(X2|Yi) =P(X1|Yi)P(X2|Yi)

Az első egyenlőtlenségnél a valószínűségek általános tulajdonságát használtuk fel, a másodiknál pedig a feltételes függetlenséget. Könnyű belátni, hogy k magyarázó változó esetén a következőt kapjuk

P(

X⃗ =⃗x|Yi )

=P((X1, X2, . . . , Xk) = (x1, x2, . . . , xk)|Yi) =

k j=1

P(Xj =xj|Yi).

AP(Xj =xj|Yi)valószínűségeket a mintából becsülhetjük. Vegyük észre, hogy ha minden osztályhoz tartozik elegendő objektum a T tanítóadatbázisban, a P(Xj =xj|Yi) alakú, egyetlen Xj magyarázó változót (attribútumot) tartal-mazó feltételes valószínűségek sokkal jobban becsülhetők a tanítóadatbázis, mint minta alapján, mintha P((X1, X2, . . . , Xk) = (x1, x2, . . . , xk)|Yi)-t vagy P(Yi|(X1, X2, . . . , Xk) = (x1, x2, . . . , xk))-t becsülnénk közvetlenül.

Kategória típusú attribútum

Amennyiben azXj kategória típusú, akkor P(Xj =xj|Yi) valószínűséget a re-latív gyakorisággal közelítjük, tehát meghatározzuk az Xj attribútumában xj értéket felvevő elemek arányát a Yi osztályú elemek között. Ezt szemlélteti a 4.16. ábrán látható példa.

Problémát jelenthet, ha valamelyik relatív gyakoriság nulla, mert ekkor – amint a 4.16. ábra példáján is látható – a szorzat is nulla lesz a többi tag-tól függetlenül. Legegyszerűbb megoldás, hogy az adott attribútum minden értékének előfordulásához hozzáadunk egyet. Ha volt elég mintánk, akkor a valószínűségek alig torzulnak, viszont sikerül kiküszöbölnünk azt, hogy a nulla tag miatt a többi relatív gyakoriságot nem vesszük figyelembe. Ha például egy adott osztályba tartozó elemek valamely attribútuma három értéket ve-het fel és az előfordulások: 0, 150, 250. Akkor 0, 150/400, 250/400 helyett 1/403, 151/403, 251/403 értékeket használunk. Erre a technikára az iroda-lomban, mintLaplace estimation hivatkoznak. Egy kifinomultabb módszer, ha egy helyett pk-t adunk a relatív gyakorisághoz, ahol pk-val jelöljük a k-adik attribútumérték relatív gyakoriságát ateljes tanítóhalmazban (tehát nem csak aYi osztályba tartozó objektumok között).

Szám típusú attribútum

AmennyibenXj szám típusú és tudjuk aP(Xj|Yi)eloszlásának típusát, akkor a keresett valószínűséghez szükséges eloszlásparamétereket statisztikai módszer-rel becsüljük. Ha például normális eloszlással van dolgunk, akkor elég meg-határoznunk a várható értéket és a szórást osztályonként, ezekből tetszőleges

4.16. ábra. Példa: naív Bayes osztályozó.

értékhez tartozó valószínűség a sűrűségfüggvényből közvetlenül adódik. Az kö-vetkező képletekben |Yi|-vel azi-dik osztályba tartozó példányok számát, xki,j -vel az i-edik osztályba tartozó k-dik példány j-edik attribútumának értékét, µi,j-vel illetveσi,j-gal azi-edik osztályba tartozó elemekj-edik attribútumának mintaátlagát illetve empirikus szórását jelöljük. A várható értéket a mintaát-laggal (empirikus közép : µi,j =∑|Yi|

k=1xki,j/|Yi|), a szórásnégyzetet a korrigált empirikus szorásnégyzettel (σi,j2 =∑|Yi|

k=1(xki,j −µi,j)2/(|Yi| −1)) becsüljük. A számítások során úgy tekinthetjük, hogy a keresett valószínűséget a

P(Xj =xj|Yi) = 1 σi,j

e(xjµi,j)2/2σi,j2 képlet adja.17

A naív Bayes osztályozó hátrányra, hogy feltételes függetlenséget feltételez, és azt, hogy az attribútumok egyenlően fontosak az osztályozás során. So-kat javíthatunk a naív Bayes osztályozók pontosságán, ha előfeldolgozás során meghatározzuk a fontos attribútumokat, tehát azokat, amelyekről úgy gondol-juk, hogy nem függetlenek az osztályattribútumtól. Több kutató arról számol be, hogy a megfelelő attribútumkiválasztással párosított naív Bayes osztályozó felveszi a versenyt a bonyolultabb, újabb módszerekkel.

4.7.2. Naív Bayes-hálók és a logisztikus regresszió kap-csolata

Ebben a részben belátjuk, hogy amennyiben minden magyarázó attribútum valós típusú, akkor a normális eloszlást feltételező naív Bayes osztályozó (Gaus-sian Naive Bayes, röviden: GNB) egy lineáris osztályozó, amely nagyon hasonlít a logisztikus regresszióra.

Foglaljuk össze milyen feltételezésekkel él a GNB:

Az Y bináris valószínűségi változó, melynek eloszlása pY paraméterű bi-nomiális eloszlás.

Minden Xj magyarázó változó valós típusú.

17Megjegyezzük, hogy a folytonos esetben valójában nincs sok értelme annak a kérdésnek, hogy mi a valószínűsége annak, hogy egyX változó értéke pontosan egyenlőx-szel. Ehelyett azt a kérdést szokás feltenni, hogy mi a valószínűsége annak, hogy egy X változó értéke egy adott[xϵ...x+ϵ]intervallumba esik, ezért ahhoz hogyvalószínűségről beszélhessünk, valójában integrálnunk kellene a fenti sűrűségfüggvényt egy rövid[xϵ...x+ϵ]intervallumra.

A gyakorlatban ugyanakkor nyugodtan használhatjuk a fenti képlet által adott számokat a naív Bayes osztályozóban az egyes osztályok valószínűségeinek számításakor.

Xj|Yi feltételes valószínűségi változóµi,j, σi,j paraméterű normális elosz-lással írható le, tehát P(Xj =xj|Yi) = 1

σi,j

e(xjµi,j)2/2σi,j2

a magyarázó változók adott Y esetén feltételesen függetlenek egymástól.

Vegyük észre, hogy az Xj|Yi feltételes valószínűségi változó szórása, σi,j, att-ribútumról attribútumra más lehet. Feltételezzük továbbá, hogy a szórás nem függ Y-tól: σ0,j =σ1,j =σj.

Célunk belátni, hogy ezek a feltevések hasonló alakúP(Y|X)-t adnak, mint azt a logisztikus regresszió teszi (emlékeztetőként: P(Y = 1|X) = 1

1+e−⃗xT ⃗w).

most használjuk ki a feltételes függetlenséget:

P(Y = 1|X) = 1

Vizsgáljuk meg közelebbről a szummában szereplő tagot:

lnP(Xj|Y = 0) Ha ezt visszahelyettesítjük a 4.11 egyenletbe, akkor látható, hogyP(Y = 1|X) tényleg az Xj attribútumok súlyozott összegének nemlineáris függvényeként adódik:

a torzítás pedig:

Összegezzük a hasonlóságokat és a különbségeket a GNB és a logisztikus regresszió között. Legfőbb hasonlóság, hogy mind a két módszer lineáris sze-parálást végez, azaz az osztályozáshoz a magyarázó attribútumok súlyozott összegét veszi alapul. Különbség van azonban a súlyok meghatározásában. A logisztikus regresszió közvetlenül becsli a súlyokat, míg a GNB normális el-oszlást feltételezve megbecsli a várható értéket és a szórást, majd ez alapján számít egy súlyt. A logisztikus regresszió tehát közvetlenül becsli P(Y|X)-et, míg a Bayes osztályozó ezt közvetve teszi,P(Y)ésP(X|Y)becslésével. Be lehet látni, hogy amennyiben fennáll a normalitásra tett feltétele a GNB-nek, akkor a GNB és a logisztikus regresszió ugyanazt azt osztályozót (azaz ugyanazokat a súlyokat) eredményezik.

A logisztikus regresszió – mivel nem él semmilyen feltételezéssel az adatra vonatkozóan – egy általánosabb módszernek tekinthető, mint a GNB. Ha nem teljesül a normalitásra tett feltétel, akkor a GNB torz ereményt ad, míg a logisztikus regresszió „adaptálódik a helyzethet”.

Az általános módszerek egyik hátránya, hogy jóval több tanítópontra van szükségük, mint azoknak, amelyek valamilyen feltételezéssel élnek a háttérben megbújó modellel kapcsolatban. Nem meglepő ezért, hogy különbség van a tanulás konvergenciájának sebességében: a logisztikus regressziónak O(n) a Bayes hálónak csak O(logn)tanítópontra van szüksége ugyanaakkora pontos-ság eléréséhez (amennyiben a normalitásra tett feltétel teljesül).

Amint láttuk, a naív Bayes osztályozó akkor is boldogul, ha az attribútu-mok közt szám típusú és kategóris típusú attribútum egyaránt előfordul, míg a logisztikus regresszió csak szám típusú attribútumokat képes kezelni.

4.7.3. Bayes hihetőségi hálók

A Bayes hihetőségi hálók (Bayesian belief networks, más névan Bayes-hálók, Bayesian networks) a függetlenségre tett feltételt enyhítik. Lehetővé teszik az adatbányásznak, hogy egy irányított, körmentes gráf segítségével a változók kö-zötti függőségi struktúrát előre megadja. A gráf csomópontjai megfigyelhető és nem megfigyelhető, de feltételezett (rejtett) változók lehetnek. Úgy gondoljuk, hogy a gráf a függőségeket jól leírja, azaz

P((Z1, Z2, . . . , Zs) = (z1, z2, . . . , zs)) =

s j=1

P(Zj =zj|par(Zj))

teljesül, aholpar(Zj)aZj csúcs szüleit (a gráfban közvetlenül belemutató csú-csok halmazát jelöli). A fenti képletbeliZ egyaránt lehet magyarázott változó (osztályattribútum, Y) és magyarázó változó (X1, ..., Xk) is.

Mivel a háló struktúrája a teljes eloszlást leírja, ezért általánosságban tetszőleges Zj csúcsokat kijelölhetünk outputnak / előrejelzendőnek. Amikor a Bayes-hálókat osztályozásra használjuk, az osztályattribútumnak megfelelő csúcsot választjuk outputnak.

Ha nincsenek rejtett változók, akkor a szükséges P(Zj =zj|par(Zj))

valószínűségek közvetlen becsülhetők a mintából. Ha a háló rejtett változókat is tartalmaz, akkor a gradiens módszer egy változata alkalmazható. Végül megemlítjük, hogy olyan eljárások is ismertek, amelyek segítségével a hálózat topológiája a tanuló példákból kialakítható, nem feltétlenül szükséges azt előre megadni.