• Nem Talált Eredményt

Line´arisan szepar´alhat´o oszt´alyok

In document Magyar nyelv˝ u irodalom (Pldal 116-120)

6. Oszt´ alyoz´ as 107

6.3. Line´arisan szepar´alhat´o oszt´alyok

K´et oszt´aly line´arisan szepar´alhat´o, ha egy hipers´ık seg´ıts´eg´evel el tudjuk k¨ul¨on´ıteni a k´et oszt´aly pontjait. Amennyiben minden pontn dimenzi´oban van megadva, akkorn−1 dimenzi´os hipers´ıkot kell meghat´aroznunk. Ennek a hipers´ıknak a k´eplete :

w1a1+w2a2+. . .+wnan= 0.

Az oszt´alyoz´as feladata a w s´ulyok meghat´aroz´asa. Ha ez megvan, akkor j¨ohet az ´uj ele-mek oszt´alyoz´asa. Hat´arozzuk meg az ´uj elem attrib´utumainak w´ert´ekekkel t¨ort´en˝o s´ulyozott

¨osszeg´et. Ha az ¨osszeg nagyobb nulla, akkor az els˝o oszt´alyba tartozik, ellenkez˝o esetben a m´asodikba. Line´arisan szepar´alhat´o oszt´alyokra l´athatunk p´eld´at a 6.1 al´abbi ´abr´an.

A p´eld´ab´ol is l´atszik, hogy adott tan´ıt´oponthoz t¨obb hipers´ık is l´etezhet, amellyel kett´ev´alaszthatjuk az oszt´alyokat. Az SVM oszt´alyoz´on´al fog felmer¨ulni az a k´erd´es, hogy

me-6.1. ´abra. P´elda line´arisan szepar´alhat´o oszt´alyokra

lyik hipers´ık v´alasztja el a legjobban a k´et oszt´alyt, azaz melyik az a s´ık amelyik j´ol szepar´al ´es amelyt˝ol legt´avolabb vannak a pontok. Ebben a r´eszben olyan hipers´ıkot keres¨unk, amely egy-szer˝un csak j´ol szepar´al. A perceptron ´es a Winnow m´odszereket fogjuk szem¨ugyre venni. Ezek kiindulnak a kezdetben konstans ´ert´ekeket (perceptronn´al nulla, Winnown´al egy) tartalmaz´o s´ulyvektorb´ol ´es a tan´ıt´opontok hat´as´ara a s´ulyvektort addig m´odos´ıtj´ak, am´ıg minden pontot j´ol nem szepar´al a s´ulyvektor. A m´odszerek el˝onye, hogy j´ol haszn´alhat´o online k¨ornyezetben is, ahol n´eha ´uj tan´ıt´opont ´erkezik, amely hat´as´ara m´odos´ıtanunk kell a s´ulyvektort.

Ismertetj¨uk m´eg a Rocchi-elj´ar´ast, amely hab´ar nem ´all´ıt el˝o szepar´al´o hipers´ıkot m´egis line´aris szepar´al´ast hajt v´egre.

6.3.1. Perceptron tanul´ asi szab´ aly

A perceptron tanul´asi szab´aly a mesters´eges neur´alis h´al´ok ˝os´enek tekinthet˝o. Mind az n attrib´utumnak val´osnak kell lenni¨uk. A hipers´ık dimezi´oja n+ 1 lesz, ugyanis fel kell venn¨unk egy extra attrib´utumot (az angol irodalomban ezt bias-nak h´ıvj´ak), amelynek ´ert´eke minden tan´ıt´o pontn´al egy lesz. A m´odszer le´ır´asa al´abb olvashat´o.

Algorithm 7Perceptron tanul´asi szab´aly Require: T : tan´ıt´opontok halmaza

~

w= (0,0, . . . ,0)

while van rosszul oszt´alyozottt∈ T do for all minden ~t∈ T do

if ~trosszul van oszt´alyozva then if ~taz els˝o oszt´alyba tartozik then

~

w=w~+~t else

~

w=w~−~t end if end if end for end while

Amennyiben az algoritmus sor´an rosszul oszt´alyozott ponttal tal´alkozunk, akkor a ´ugy m´odos´ıtjuk a hipers´ıkot, hogy a rosszul oszt´alyozott tan´ıt´o pont k¨ozelebb ker¨ul hozz´a, s˝ot ak´ar

´at is ker¨ulhet a s´ık m´asik oldal´ara. Ha egy rosszul oszt´alyozott tan´ıt´o pont az els˝o oszt´alyba tartozik, akkor az attrib´utum ´ert´ekeinek s´ulyozott ¨osszege a m´odos´ıt´as sor´anP

witi-r˝olP (wi+ +ti)ti-re v´altozik. A k¨ul¨onb´eg, n´egyzet¨osszeg l´ev´en, biztosan pozit´ıv. A hipers´ık a m´odos´ıt´as sor´an helyes ir´anyba mozgott.

A hipers´ık m´odos´ıt´asai egym´asnak ellent´etesek lehetnek (olyan, mintha a tan´ıt´opontokt´ol jobbrol ´es balr´ol kapn´a a pofonokat), de szerencs´ere biztosak lehet¨unk benne, hogy a sok mo-dos´ıt´asnak el˝obb-ut´obb v´ege lesz :

6.1. lemma. Perceptron tanul´asi algoritmus v´eges l´epesen bel¨ul le´all, amennyiben az oszt´alyok line´arisan szepar´alhat´ok.

H´atr´any, hogy ha a tan´ıt´o pontok nem szepar´alhat´oak line´arisan, akkor az algoritmus nem ´all le.

A gyakorlatban ez´ert egy maxim´alis iter´aci´os sz´amot adnak meg, amelynek el´er´esekor sikertelen

¨

uzenettel le´all az algoritmus.

6.3.2. Winnow m´ odszer

Winnow m´odszer´et akkor alkalmazhatjuk, ha minden attrib´utum bin´aris. Az elt´er´es a per-ceptron tanul´ast´ol annyi csak, hogy a rossz oszt´alyoz´as eset´en a s´ulyvektorhoz nem hozz´aadjuk a tan´ıt´opont vektor´at, hanem a s´ulyvektor bizonyos elemeit megszorozzuk vagy eloszjuk α >1 konstanssal, att´ol f¨ugg˝oen, hogy melyik csoportba tartozik. Akkor sorol az oszt´alyoz´o egy ~a pontot az els˝o oszt´alyba, ha

w1a1+w2a2+. . .+wnan>Θ,

ahol Θ el˝ore megadott konstans. A szorz´ast vagy oszt´ast azokra a poz´ıci´oju elemre v´egezz¨uk amelyre a tan´ıt´opont vektora egyest tartalmaz.

Mivel α pozit´ıv ´es a kezdeti s´ulyvektor minden eleme egy, ez´ert a s´ulyvektor minden eleme mindig pozit´ıv marad. Vannak alkalmaz´asok, ahol negat´ıv s´ulyokat is meg kell engedni. Ekkor akiegyens´ulyozott Winnow (balanced Winnow) m´odszert alkalmazhatjuk. K´et s´ulyvektort tar-tunk karban (w~+, w~). Az oszt´alyoz´ashoz a w~+−w~ vektort haszn´aljuk. A rossz oszt´alyoz´as eset´en a w~+-t ugyan´ugy m´odos´ıtjuk, mint a Winnow alapverzi´oj´an´al, a w~ elemeit pedig pont ellenkez˝ok´eppen, amikor w+i-t szorozzuk α-val, akkor a wi-t osztjuk vele.

Weka 3.5.7 A Winnow, illetve a kiegyens´ulyozott Winnow m´odszert a wek´aban a weka.classifiers.functions.Winnow oszt´aly implement´alja. Abalanced param´eter igazra ´all´ıt´as´aval adhatjuk meg, ha kiegyens´ulyozott Winnow m´odszert szeretn´enk alkalmazni. A s´ulyok kezdeti ´ert´ek´et a defaultWeight param´eterrel, az iter´aci´ok sz´am´at a numIterationsparam´eterrel szab´alyozhatjuk. AΘparam´eter a wek´aban a treshold param´eternek felel meg.

X

6.2. ´abra. P´elda a Rocchio rossz oszt´alyoz´as´ara

6.3.3. Rocchio-elj´ ar´ as

A Rocchio-elj´ar´as klasszikus m´odszernek sz´am´ıt az inform´aci´o-visszakeres´es ter¨ulet´en.

Oszt´alyoz´asi feladatra el˝osz¨or a [79] munk´aban adapt´alt´ak, ´es az´ota is sok kutat´as foglalko-zott vele (ld. [152]. Az elj´ar´as felt´etelezi, hogy a minden attrib´utum val´os t´ıpus´u. Minden c kateg´ori´ahoz megalkotunk egyprotot´ıpusvektort, amit aDc tanul´op´eld´ak ´atlagak´ent sz´am´ıtjuk ki (centroid), ´es ehhez hasonl´ıtjuk az ismeretlen dokumentum vektor´at. Az oszt´alyozand´o objek-tum ´es egy kateg´oria protot´ıpusvektor´anak t´avols´ag´at koszinusz- vagy m´as t´avols´agm´ert´ekkel sz´amolhatjuk.

A m´odszernek kicsiny a sz´am´ıt´asig´enye, ez´ert a tanul´as nagyon gyors. H´atr´anya viszont, hogy rossz eredm´enyt ad, ha az egy oszt´alyba tartoz´o pontok nem jellemezhet˝ok egy vektorral (pl. am˝oba alap´u csoportok, vagy k´et, egym´ast´ol j´ol elk¨ul¨on¨ul˝o, csoporthalmaz, amelynek elemei ugyanabba a kateg´ori´aba tartoznak). Ezt szeml´elteti a 6.2 ´abra. Az ¨ures k¨or¨ok az els˝o, a feket´evel t¨olt¨ott k¨or¨ok a m´asodik oszt´alyba tartoznak. Az els˝o oszt´aly protot´ıpusvektora t´avol esik az

¨

ures k¨or¨okt˝ol. Az x-el jel¨olt oszt´alyozand´o pontot a Rocchio az els˝o oszt´alyba soroln´a a m´asodik helyett.

A m´odszer hat´ekonys´aga l´enyegesen jav´ıthat´o, ha a protot´ıpusvektorok megalkot´as´an´al a negat´ıv tanul´oadatokat is figyelembe vessz¨uk. Ekkor a

~c=β·X

j∈Dc

d~j−γ·X

j6∈Dc

d~j (6.1)

k´eplettel sz´am´ıthat´o a c protot´ıpusvektora2. Ha a m´asodik tagban nem az ¨osszes negat´ıv ta-nul´op´eld´at, hanem csak a majdnem pozit´ıv tanul´op´eld´ak ´atlag´at vessz¨uk — ezek ugyanis azok, amelyekt˝ol a legnehezebb megk¨ul¨onb¨oztetni a pozit´ıv tanul´oadatokat, akkor tov´abbi l´enyeges hat´ekonys´agi javul´as ´erhet˝o el [148, 179].

2A pontok centroidjak´ent sz´amolt protot´ıpusvektort aβ= 1,γ= 0 param´eterek mellett kapjuk meg.

6.3. ´abra. Tan´ıt´opontok a s´ıkon (bal oldali ´abra) ´es a Voronoi tartom´anyok (jobb oldali ´abra)

In document Magyar nyelv˝ u irodalom (Pldal 116-120)