• Nem Talált Eredményt

Adatbányászati alapfeladatok

In document Kinek szól ez a jegyzet? (Pldal 23-29)

Nagy adathalmazok elemzésének, a rejtett tudás feltárásának igénye sok kü-lönböz® területen jelentkezett és jelentkezik, úgy mint a marketing, biztosítás, hitelintézetek, orvostudomány vagy mérnöki alkalmazások.

Érdekes módon, a különböz® területek szakért®i, kutatói elméleti, ma-tematikai szempontból nagyon hasonló feladatokra jutottak. A feladatok megoldása során alkalmazott eljárások algoritmusok is sokszor egyazon eljá-rás külöböz® változatai. Els®re talán meglep® lehet, hogy például a kéretlen elektronikus levelek (spam-ek) automatikus felismerésére sok szempontból ha-sonló modellt használhatunk, mint annak el®rejelzésére, hogy egy banki ügyfél vissza fogja-e zetni a számára folyosított hitelt. Amint látni fogjuk, az osz-tályozás különböz® területeken alkalmazott felismer® és el®rejelz® rendszerek közös elméleti keretét alkotja. Ehhez hasonlóan az alábbiakban leírt további adatbányászati alapfeladatok is számos alkalmazásban fordulnak el®.

A szakirodalom, lásd pl. [Tan és tsa., 2005], általában négy adatbányászati alapfeladatot határoz meg:

Osztályozás és regresszió. Az osztályozó algoritmusokat és azokkal kapcso-latos ismereteinket különféle felismerési és el®rejelzési feladatok közös el-méleti hátterének tekinthetjük. Ilyen felismerési feladat többek között a számítógéppel automatikusan végzett kézírásfelismerés, beszédfelismerés vagy jelbeszédi jelek felismerése. Szintén osztályozási feladatnak tekint-het® annak el®rejelzése, hogy egy bank potenciális ügyfelei közül vár-hatóan kik fogják késedelem nélkül visszazetni a hitelüket és kik nem.

Hasonló feladat annak becslése, hogy egy biztosítónál gépjárm¶veiket biztosító ügyfelek közül ki milyen valószín¶séggel okoz majd balesetet.

Lemorzsolódás-el®rejelzési feladatok (azaz mely ügyfelek fogják várha-tóan elhagyni az adott szolgáltatót), egy-egy blogbejegyzésre érkez® kom-mentek számának el®rejelzése és további egzotikus felismerési feladatok is ebbe a körbe tartoznak, mint például a számítógépes felismerése annak, hogy egy adott szöveg szerz®je n®-e vagy fér [Sta«czyk, 2011].

Feltehetjük, hogy az adatbázisunk valamilyen példányok (ügyfelek, be-tegségek, vásárlók, telekommunikációs események, stb.) tulajdonságait írja le. Egy-egy tulajdonság egyszer¶ esetben egy számmal vagy szim-bólummal írható. Ekkor az adatbázis egy nagy táblázat, melynek egyes sorai az egyes példányoknak felelnek meg, oszlopai pedig a tulajdonsá-goknak (egy-egy oszlop egy-egy tulajdonságnak). Egy ilyen adatbázist szemléltet az 1.2. ábra, amely egy keresked® ügyfeleinek körében végzett felmérés során gy¶tött adatokat tárolja. Az Életkor tulajdonság értékei:

atal, középkorú, id®s. A tulajdonság helyett gyakran használjuk majd az

1.2. ábra. Példa: Egy adattábla

attribútum szót6. Amikor minden attribútum szám, a példányok egy sok-dimenziós tér pontjainak feleltethet®k meg, ezért az attribútum helyett a dimenzió kifejezést is használhatjuk. A példányra más szóval objektum, elem, rekord néven is hivatkozik a szakirodalom.

Ilyen megközelítésben az osztályozás illetve regresszió feladata valamely ismeretlen attribútum becslése illetve el®rejelzése. Ezt a kitüntetett att-ribútumot nevezzük osztályattribútumnak (class attribute, class label).

Amennyiben az osztályattribútum értékkészlete diszkrét (az osztályattri-bútum el®re deniált értékek valamelyikét veszi fel), osztályozási feladat-ról beszélünk, ha az osztályattribútum értéke folytonos, akkor regressziós feladatról.

Ha például az 1.2. ábrán látható adatbázis esetében néhány ügyfélr®l nem tudjuk, hogy érdekelni fogja-e ®ket az akciót, és ezt szeretnénk ügyfelen-ként el®rejelezni, egy osztályozási feladattal van dolgunk. Az osztályatt-ribútum ezesetben az Érdekli-e az akció elnevezés¶ attosztályatt-ribútum.

Ha egy biztosítótársaság, a korábbi példák egyikét folytatva, ügyfeleinek különböz® tulajdonságait tárolja (életkorukat, jövedelmük nagyságát, az általuk vezetett autó végsebességét, motorjának teljesítményét, stb.) és azt szeretné el®rejelezni, hogy egy ügyfél mekkora eséllyel okoz balesetet a következ® évben, akkor a baleset valószín¶sége lesz az osztályattribútum.

Ez az el®rejelzési feladat egy regressziós feladat, hiszen az el®rejelzend®

érték (baleset valószín¶sége) folytonos.

Klaszterezés. Osztályozási feladatok esetében, amikor az osztályattribútum

6A közgazdászok a tulajdonság helyett ismérvet, valamely tulajdonság konkrét értéke helyett ismérv változatot mondanak.

1.3. ábra. Klaszterezés (bal oldalon) és különc pontok keresése (jobb oldalon)

értéke néhány, el®re deniált érték valamelyike, úgy tekinthetjük, hogy az objektumokat el®re deniált csoportok valamelyikébe soroljuk be: egy-egy csoport az osztályattribútum egy-egy-egy-egy értékének felel meg. Ezzel szemben a klaszterezés során a csoportok el®re nem ismertek, a feladat a csoportok felfedezése, feltárása, és az egyes objektumok besorolása a megtalált csoportokba. Az objektumokat tehát el®re nem deniált cso-portokba (klaszterekbe) kell sorolnunk úgy, hogy az egy csoportba tartozó objektumok hasonlóak legyenek, míg a különböz® csoportba kerültek kü-lönbözzenek egymástól.

Tipikus klaszterezési feladat például az ügyfelek szegmentálása, de klasz-terez® algoritmusokat használhatunk dokumentumok vagy képek csopor-tosítására, szociális hálózatok és csillagászati adatok elemzésére, valamint nagy teljesítmény¶ szuperszámítógépek komponenseinek elrendezésekor.

Klaszterezésre mutat példát az 1.3 ábra els® fele. Az adatbázisbeli objek-tumokat itt a sík pontjainak feleltettük meg. Ez akkor lehetséges, ha azt feltételezzük, hogy az adatbázisbeli objektumok két számmal megadott attribútummal rendelkeznek: az egyik attribútum a vízszintes, a másik pedig a függ®leges koordinátatengelynek feleltethet® meg. Ilyen ábrázo-lás mellett a hasonló objektumok egymáshoz közeli pontoknak felelnek meg, az egymástól különböz® objektumok pedig távoli pontoknak.

Gyakori minták és asszociációs szabályok keresése. Történetileg kifeje-zetten érdekes a gyakori mintázatok és asszociációs szabályok keresésének feladata, mert szorosan összefügg az adatbányászat, mint önálló terület kialakulásával. Ezzel szemben az osztályozással, regresszióval, klasztere-zéssel már korábban is foglalkoztak.

Asszociációs szabályok alatt olyan jelleg¶ összefüggéseket értünk, mint

például az alábbi:

Aki dohányzik és sok alkoholt fogyaszt, sokkal nagyobb eséllyel lesz rákos, mint aki nem.

A gyakori minták keresésének feladatát legtöbbször kereskedelmi példá-kon keresztül szokták bevezetni. Tételezzük fel, hogy arra vagyunk kíván-csiak, hogy egy bevásárlóközpont által árusított termékek közül melyek azok, amelyeket gyakran vásárolnak egyszerre a vev®k. Ebben a kontex-tusban egy-egy gyakori minta termékek egy halmazát jelöli, olyan ter-mékeket, amelyeket jellegzetesen egyszerre vásárolnak meg. Egy gyakori minta lehet például a

zsemle, tej, szalámi, sajt, egy másik pedig a

sör és pelenka.

Amint látni fogjuk, a gyakori mintázatok bányászata szorosan összekap-csolódik az asszociációs szabályok bányászatával. Szintén látni fogjuk, hogy a minta típusától függ®en az alapfeladatnak különböz® változatai vannak: kereshetünk gyakori halmazokat, gyakori sorozatokat, gyakori részgráfokat, gyelembe vehetjük azt, hogy a bevásárlóközpont termékei különböz® kategóriákba tartoznak, stb.

Anomáliák felismerése. Más szóval: eltéréselemzés, különc pontok keresése, illetve outlier-ek felismerése. Azokat a példányokat, amelyek nem felelnek meg az adatbázis általános jellemz®inek, tulajdonságaik nagy mértékben eltérnek az általánostól, az adatbázisbeli példányok többségét®l, különc példányoknak nevezzük. Jópár adatbányászati algoritmus az ilyen különc pontoknak nem tulajdonít nagy jelent®séget, zajnak vagy kivételnek ke-zeli ®ket. Azonban egyre több területen merül fel az igény, hogy éppen az ilyen különc pontokat találjuk meg. Eltéréselemzés f®bb alkalmazási terü-lete a csalások, visszaélések kisz¶rése, beleértve a vírusok, hackertámadá-sok, biztosítási csaláhackertámadá-sok, hitelkártyákkal elkövetett illegitim tranzakciók, és a belterjes kereskedés felismerését, mobiltelefon-hálózatok és egészség-ügyi szolgáltatások jogosulatlan igénybe vételét [Chandola és tsa., 2009].

Különc pontok keresésére mutat példát az 1.3 ábra második fele.

Az anomáliakeresés feladata nagyban összefügg az osztályozással és klasz-terezéssel. Sokszor osztályozó algoritmusokat használnak anomáliakere-sésre. Ahogy említettük, klaszterezés során az adatbázisbeli objektumo-kat csoportosítjuk úgy, hogy a hasonlók egy csoportba kerüljenek, külön-böz®k pedig különböz® csoportokba. Azok az objektumok, amelyek nem illeszkednek jól egyik csoportba sem, különc pontoknak tekinthet®k.

Léteznek ugyanakkor az osztályozó és klaszterez® algoritmusoktól lénye-gesen különböz® megközelítést követ® eltéréselemz® algoritmusok, pél-dául valószín¶ségi eloszlásokon, távolság és lokális s¶r¶ség fogalmán ala-puló eljárások [Chandola és tsa., 2009]. Ezért tekinthetjük az anomália-keresést az adatbányászat negyedik alapfeladatának.

A fenti alapfeladatok (osztályozás, klaszterezés, gyakori mintázatok és asszo-ciációs szabályok keresése, anomáliák felismerése) különböz® változatai létez-nek alkalmazási területt®l és ezzel összefügg®en az adatok típusától függ®en.

Így külön-külön beszélhetünk például ügyfelek, dokumentumok, röntgenképek osztályozásáról, különböz® típusú gyakori minták bányászatáról, stb. Az alap-feladatok különböz® változatai mellett az adatbányászat területéhez sorolhat-juk többek között az alábbi, az alapfeladatokhoz lazán kapcsolódó feladatokat, alkalmazásokat is:

Ajánlórendszerek és további, mátrix faktorizáción alapuló eljárások.

Az online (webes) kereskedelem utóbbi évtizedben tapasztalható rohamos terjedésével párhuzamosan n®tt az érdekl®dés a személyre szabott rek-lámok, ajánlatok iránt, népszer¶vé váltal az ajánlórendszerekkel kapcso-latos kutatások. Ha egy webes áruházban, például az Amazon, Netix vagy Rossmann weblapján, vásárolunk néhány terméket, a webes áru-házba való következ® bejelentkezésünkkor látható reklámok nem véletlen-szer¶en jelennek meg a képerny®n, hanem korábbi vásárlásaink alapján.

A háttérben futó rendszer becsüli, hogy milyen az ízlésünk és, hogy mely további termékekre lehet szükségünk a korábban vásároltakhoz kapcsoló-dóan, stb. Ehhez hasonlóan a Youtube (és más videomegosztó rendsze-rek) személyreszabottan ajánl számunkra videókat, a Facebook lehetséges ismer®söket ajánl.

Ajánlórendszernek (recommender system) nevezünk egy olyan rendszert, amely a termékek halmazából a felhasználók számára személyre szabot-tan ajánl néhányat. Amikor egy ajánlórendszer termékeket ajánl, ezt általában az alapján teszi, hogy a felhasználó által még nem vásárolt ter-mékeket rangsorolja és a rangsorból kiválasztja az els® néhányat, amelyek várhatóan leginkább érdeklik ®t. Ahhoz, hogy az ajánlatok személyre sza-bottak legyenek, a rangsorolást minden felhasználóra külön-külön végzi el

1.4. ábra. Az ajánlórendszerek hátterében álló adatokat általában egy ritka mátrix elemeinek szokták tekinteni. A mátrix sorai a felhasználóknak felelnek meg, oszlopai az egyes termékeknek, a példában ezek a termékek lmeknek.

Feltehetjük, hogy néhány terméket a felhasználók 1-t®l 5-ig terjed® skálán értékeltek. A termékek nagyrészér®l azonban nem tudjuk, hogy egy-egy fel-használónak tetszenek-e vagy sem, ezeket az esetekel jelöltük kérd®jelekkel. A feladat az, hogy eld®ntsük mely termékeket érdemes az egyes felhasználók szá-mára reklámozni, azaz: becsüljük meg, hogy mely termékek fognak várhatóan tetszeni az egyes felhasználóknak.

a rendszer, felhasználónként más rangsorokat generál a korábbi vásárlá-sok gyelembe vételével. A rangsorolás legtöbbször úgy történik, hogy a rendszer az egyes termékekhez kiszámít egy valószín¶séget vagy egy foly-tonos skálán értelmezett pontszámot, amely azt jellemzi, hogy az adott felhasználót az adott termék mennyire érdekli. A rendszer kimenete te-hát folytonos érékek becslése, amely alapján az ajánlórendszereket akár a regressziós problémák közé is sorolhatnánk.

Azonban az ajánlórendszerek hátterében álló adatstruktúra, a szokvá-nyos regressziós eljárásokhoz képest, jelent®sen különböz®. További lé-nyeges eltérés az, ahogyan az legsikeresebb ajánló algoritmusok a becsült értékeket kiszámolják. Az utóbbi években a témában született szinte hihetetlen mennyiség¶ tudományos cikk eredményeib®l az rajzolódik ki, hogy az ajánlórendszerek hátterében álló adatokat érdemes egy ritka mát-rixként elképezelni, lásd az 1.4 ábrát. Ritka mátrix alatt itt azt értjük, hogy a mátrix celláinak nagy része kitöltetlen. Az ajánló algoritmusok többsége az ismert cellák alapján becsüli meg az ismeretlen cellák ér-tékeit, általában olyan módon, hogy a mátrixot kett® vagy több kisebb mátrix szorzatára bontja [Takács, 2008, Koren, 2009]. Ezeket

mátrixfak-torizációs eljárásoknak nevezzük.

Id®sorok bányászata: Az adatbányászati alapfeladatok id®sorokkal kapcso-latos változatai mint például id®sorok osztályozása, id®sorok klasztere-zése, gyakori minták (motívumok) keresése, id®sorok következ® értékének el®rejelzése új kihívásokat rejt, melyekkel a 7. fejezetben foglalkozunk.

Attribútumok közötti kapcsolatok: Gyakran hasznos, ha a példányokra úgy tekintünk, mint az attribútumok megvalósulásaira és keressük az összefüggéseket az attribútumok között. Többféle összefüggés létezik.

Ilyenek az asszociációs- és korrelációs szabályok, a funkcionális függ®ségek és hasonlóságok. Az osztályozás is attribútumok közötti összefüggések felfedezésére szolgál. Az osztályozásnál egy kitüntetett attribútum érté-két kell megjósolnunk a többi attribútum értéke alapján. Ezt egy modell felépítésével tesszük. Leggyakrabban a modell egy döntési fa, de lehet if-then szabályok sorozata, valamilyen matematikai formula, vagy akár egy neurális hálózat is.

Webes adatbányászat: Az Interneten óriási adattömeg található, így az in-terneten alapuló információ-kinyer® algoritmusok is az adatbányászat te-rületéhez sorolhatóak. Szintén ide tartozónak tekinthetjük az oldalak rangsorolásának, illetve hasonló tartalmú oldalak megtalálásának felada-tát, a kéretlen elektronikus levelek (spamek) felismerését vagy az interne-ten megjelen® tartalmakhoz kapcsolódó el®rejelzési feladatokat (például:

várhatóan hány felhasználó fog betölteni egy weblapot vagy hányan fog-nak megnézni egy youtube-ra feltöltött videót).

In document Kinek szól ez a jegyzet? (Pldal 23-29)