• Nem Talált Eredményt

További osztályozási protokollok

Osztályozás és regresszió

4.11. További osztályozási protokollok

Eddig folyamatosan azt feltételeztük, hogy az osztályozó illetve regressziós al-goritmusunkat egyszer tanítjuk, majd az ismeretlen osztályba tartozó illetve a szám típusú magyarázandó változó ismeretlen értékével rendelkező objektumo-kat (példányoobjektumo-kat) egyesével dolgozzuk fel: külön-külön kell az új példányokat osztályoznunk, illetve a magyarázandó változó értékét külön-külön kell minden egyes példányra becsülnünk. A legtöbb gyakorlati alkalmazáshoz jól illeszkedik ez a feltételezés. Ha például egy új ügyfél érkezik egy biztosító társasághoz, az ügyfél elvárhatja, hogy kvázi-azonnal kapjon egy ajánlatot, hogy mennyibe kerülne, ha biztosítást kötne. Ilyen esetben az új ügyfelet rögtön, a többi új

ügyféltől függetlenül kell valamelyik kockázati osztályba sorolni. Egy jelbe-szédi jeleket felismerő rendszer esetében szintén elvárjuk, hogy képes legyen egyesével felismerni a jeleket: ha például egy néma ember ilyen módon kíván kommunikálni velünk, azt szeretnénk, hogy a rendszer folyamatosan tolmá-csoljon, ne csak sok száz vagy sok ezer jel elmutogatása után. A példák sorát hosszasan lehetne folytatni. Vannak azonban ezektől eltérő gyakorlati alkal-mazások, amelyekben sok, ismeretlen osztályba tartozó objektumot (példányt) kell osztályoznunk kvázi-egyidejűleg, azaz nem számít, hogy milyen sorrendben dolgozza fel a rendszer az ismeretlen osztályba tartozó objektumokat. Ilyen esetekben az adatok strukturájának jobb feltárását az ismeretlen osztályokba tartozó objektumok is segíthetik.

4.11.1. Semi-supervised osztályozás

A semi-supervised (részben felügyelt, félig felügyelt) osztályozás esetén, a ko-rábbiakhoz hasonlóan, adott egyT tanítóhalmaz, és tudjuk, hogy a tanítóhal-mazbeli objektumok (példányok) mely osztályokba tartoznak. Azt feltételez-zük, hogy egyszerre nem csak egyetlen, hanem sok címkézetlen objektummal van dolgunk, amelyekről el kell eldöntenünk, hogy melyik osztályba tartoznak.

Az osztályozó legelőször azt az objektumot osztályozza, amelynek osztályo-zásában a leginkább biztos. Egy k = 5 legközelebbi szomszédot figyelembe vevő legközelebbi szomszéd osztályozó például biztosabb egy olyan objektum osztályozásában, amelynél mind az 5 legközelebbi szomszéd egyazon osztályba tartozik és a legközelebbi szomszédok nagyon közel vannak az osztályozandó objektumhoz, mint egy olyan objektum osztályozásában, amelynek a 5 legköze-lebbi szomszédja közül 2 az egyik osztályba tartozik, 3 a másikba, és ráadásul a szomszédok kicsit távolabb is vannak. Miután az osztályozó osztályozta azt az objektumot, amelynek osztályozásában leginkább biztos, ezt az objektu-mot, az osztályozó által megállapított osztálycímkével, hozzávesszük a tanító halmazhoz, újratanítjuk a modellt (vagy módosítjuk a modellt az új tanító-objektumnak megfelelően), és a maradék címkézetlen objektumok közük ismét azt osztályozzuk, amelyiknek az osztályozásában leginkább biztos a modell.

A semi-supervised osztályozás számításigénye, a konvencionális osztályo-záshoz képest, általában jelentősen nagyobb. Ugyanakkor a semi-supervised osztályozás során az osztályozó algoritmus képes a címkézetlen adatokban rejlő struktúrát is figyelembe venni, ami különösen akkor lényeges, ha kevés a cím-kézett tanítóadat, vagy a tanítóadatbázis nem reprezentatív. Erre látjatunk egy példát a 4.21. ábrán.

A semi-supervised osztályozásnak számos változata létezik attól függően, hogy miként formalizáljuk azt, hogy egy osztályozó mennyire biztos egy objek-tum osztályozásában.

4.21. ábra. Példa egy olyan esetre, amikor a semi-supervised protokoll szerinti osztályozás jobban teljesít, mint a konvencionális protokoll szerinti osztályozás.

Az adatbázisbeli objektumok (példányok) egy kétdimenziós tér pontjainak fe-lelnek meg (két szám típutú magyarázó attribútummal rendelkeznek). Minden objektum két osztály valamelyikébe tartozik: az egyik osztályba tartozó ob-jektumokat háromszögekkel, a másikba tartozókat karikákkal jelöltük. A teli háromszögek illetve teli karikák jelzik a tanítóhalmazba tartozó, címkézett ob-jektumokat. A többi objektumról az osztályozó algoritmusnak kell eldöntenie, hogy melyik osztályba tartozik. Egy konvencionális protokoll szerinti osztá-lyozó, amely egyenként tekinti az osztályozandó objektumokat, a körív men-tén alul elhelyezkedő karikákat minden bizonnyal a háromszögek közé sorolná, hiszen ezekhez jóval közelebb vannak a tanítóhalmazbeli hároszögek, mint a tanítóhalmazbeli karikák. Ezzel szemben a semi-supervised protokoll szerinti osztályozás során a körív mentén iteratíve végighaladva, minden iterációban a már felismert karikákhoz legközelebbi karikát ismernénk fel karikaként és ezál-tal a semi-supervised protokoll szerinti osztályozó képes helyesen osztályozni az objektumokat.

4.11.2. Active Learning

A semi-supervised learning-hez hasonlóan az active learning esetén is abból in-dulunk ki, hogy nem egyesével osztályozzuk az objektumokat, hanem egyszerre osztályozunk sok objektumot. A semi-supervised esethez hasonlóan adott né-hány címkézett objektum, egy viszonylag kicsit tanítóadatbázis, amely nem feltétlenül reprezentatív. Miközben az algoritmus folyamatosan osztályozza az objektumokat, néhány kérdést feltehet a felhasználónak: néhány objektum tényleges osztálycímkéjére rákérdezhet. Nyilván azokra érdemes rákérdezni, amelyek osztályozásában a leginkább bizonytalan az algoritmus, amelyek tény-leges osztálycímkéjének ismerete sokat javíthat a modell pontosságán.

A semi-supervised learning-hez hasonlóan az active learning-nek is számos változata ismert. Az active learning eljárások kiértékelése némiképp eltér a konvencionális osztályozók kiértékelésétől. Active learning eljárások által adott osztályozás minőségét általában a felhasználó felé feltett kérdések számának függvényében szokták ábrázolni. Akkor mondjuk, hogy az egyik active learning eljárás jobb a másiknál, ha ugyanannyi kérdést feltéve a felhasználónak az első eljárás tendenciózusan jobban osztályoz, mint a második.

4.11.3. Transfer learning

Néhány esetben egy-egy terület, amelyen osztályozókat kívánunk használni oly-annyira új, hogy még nem állnak rendelkezésre megfelelő, címkézett adatok, amelyeket tanítóadatként használhatnánk. Szerencsés esetben azonban van-nak címkézett adataink egy hasonló területről, amely alapján készíthetünk egy osztályozót, amelyet adaptálhatunk a célterületre. Erre példa lehet az, amikor egy bank egy új országban első fiókjait nyitja meg: ekkor még nem áll rendel-kezésére elegendő adat az adott országból, amely alapján egy hitelbírálati osz-tályozó algoritmust készíthessen, ugyanakkor más országokból, ahol korábban már végzett tevékenységet, bőségesen állhat rendelkezésre adat, amely alapján egy osztályozó algoritmust lehet tanítani, majd az elkészül osztályozó modellt a helyi igényekre lehet szabni. Az ilyen eljárást nevezik transfer learning-nek:

a célterülethez képesti rokonterületen tanított osztályozó modellt viszünk át ("transfer") egy új területre.

4.11.4. Multilabel osztályozás

Az osztályok száma és viszonya szerinti legegyszerűbb eset a már említett biná-ris osztályozás, amikor két osztály adott, és egy-egy objektum (pédány) vagy az egyik vagy a másik osztályba tartozik (de nem mindkettőbe egyszerre!).

Többosztályos,multiclass problémáról akkor beszéltünk, amikor kettő helyett több osztályunk volt, és egy-egy példány pontosan egy osztályba tartozott.

A multilabel osztályozási feladatok annyiban különböznek a multiclass prob-lémáktól, hogy egy objektumegyidejűleg több osztályba is tartozhat. Tekintsük pédaként azt az esetet, amikor embereket osztályozunk és az osztályok kü-lönböző betegségek szerinti rizikócsoportoknak felelnek meg. Egy ember egy-idejűleg több betegség szerint is tartozhat a veszélyeztetettek csoportjába, így tehát egy objektum (egy ember példában) több osztályba is tartozhat egy-idejűleg.

A multilabel osztályozási feladatokat a legegyszerűbb esetben az osztályon-kénti bináris osztályozásra vezethetjük vissza: az első bináris osztályozó eldönti, hogy egy adott ember az első betegség szerint veszélyeztetett-e, a második

első bináris osztályozó eldönti, hogy egy adott ember a második betegség sze-rint veszélyeztetett-e, stb. Az egymástól független bináris osztályozásokra való visszavezetés azonban általában nem optimális: nem veszi figyelembe, hogy az osztálycímkék legtöbbször nem függetlenek egymástól, hanem – valamilyen formában – korrelálnak egymással.