• Nem Talált Eredményt

Sokdimenziós adatok, dimenziócsökkentés

Előfeldolgozás, távolságfüggvények

3.2. Távolsági függvények

3.3.7. Sokdimenziós adatok, dimenziócsökkentés

Amint már volt róla szó, az adatbázisbeli objektumokat attribútumokkal írjuk le. Amikor egy-egy objektumot nagyon sok attribútummal írunk le, sokdi-menziós adatokról beszélünk. Az elnevezés onnan ered, hogy az adatbázisbeli objektumokat egy sokdimenziós vektortér pontjainak tekinthetjük, ha az ob-jektumok numerikus attribútumokkal írhatók le.

Ha például egy objektum egy szövegnek felel meg, és minden egyes attri-bútum egy-egy szó adott szövegbeli előfordulásainak számát adja, több ezer

attribútummal kell dolgoznunk, az interneten együtt előforduló szópárok kere-sésénél109 körüli lehet a dimenziószám.

A dimenzióátok

Elsőre azt gondolnánk, hogy minél nagyobb a dimenzionalitás, minél többet attribútum adott, annál könnyebben dolgunk van egy adatbányászati feladat (osztályozás, klaszterezés, anomálikeresés) megoldásakor, hiszen annál több az információnk egy-egy objektumról. Nem biztos azonban, hogy a sokadik attribútum valóban lényeges többletinformációt hordoz a korábbiakhoz képest, az egyes attribútumok egymással erősen korrelálhatnak. Sőt, az attribútumok egy része teljesen irreleváns lehet a konkrét feladat szempontjából, ezek csak zajt jelentenek.

Az irodalomban curse of dimensionality [Bishop, 2006, Tan és tsa., 2005] – magyarul: dimenzióátok – néven szokták összefoglalni a sokdimenziós adatok bányászata során felmerülő problémákat. Ezek leginkább abból adódnak, hogy a dimeziószám növekedésével az adatok sűrűsége óhatatlanul csökken. Ennek il-lusztrálásaként képzeljük el, hogy van egy 1000 objektumot tartalmazó adatbá-zisunk. Ha egy kétdimenziós adatbázisról van szó, és minden dimenziótengely 0 és 10 közötti értékeket vehet fel, egy kétdimenziós egységkockába (egységnyi oldalú négyzetbe) átlagosan1000/(10×10) = 10objektum esik. Ha egy százdi-menziós adatbázisról van szó, egy egységkockába már csak 1000/10100 = 10−97 objektum esik átlagosan. A sűrűség ilyen drasztikus csökkenése megzavarhatja a klaszterező algoritmusokat, amelyek tulajdonképpen egy-egy sűrűbb régiót keresnek, mint klasztert. A ritka adatok miatt az osztályozó algoritmusok is alulteljesíthetnek.

A dimenzionalitás átkaként szokták számon tartani a távolságok koncent-rációjának jelenségét is. Ennek megértéséhez végezzük el az alábbi kísérletet.

Feladat – Generáljuk véletlenszerűen pontokat egyddimenziós térben, tekint-sük a legközelebbi és legtávolabbi pontok távolságának a különbségét, jelöljük ezt ld-vel. Ismételjük a kísérletet d növelése mellett, számoljuk ki ld értékét különböződ-kre. Mivel a dimenziószám növekedése mellett a pontok távolsága természetes módon növekszik – gondoljunk bele, hogy egy háromdimenziós egy-ségkocka és egy százdimenziós egyegy-ségkocka (leghosszabb) átlója milyen hosszú –, annak érdekében, hogy az előbb számított ld értékek összemérhetőek legye-nek, a kapott értékeket osszuk el az adott dimenziószám melletti legközelebbi két pont távolságával, a kapott értékeket jelöljük ld-vel, majd ábrázoljuk diag-ramon az ld értékeket a d dimenziószám függvényében.

Következtetés – Azt tapasztaljuk, hogy a d dimenziószám növekedésével

m M

n

- Mc k

m

3.4. ábra. Dimenziócsökkentés sémája

ld tart a nullához [Tan és tsa., 2005]. Ez alapján arra következtetünk, hogy a távolságfogalom egyre kevésbé lesz használható nagydimenziós terek esetén.

Dimenziócsökkentő eljárások haszna

A fejezet következő szakaszaiban dimenzió-csökkentésről lesz szó, mely rész-ben megoldást jelent a dimenzionalitás átkaként leírt problémákra. A di-menziócsökkentés során az objektumok sok attribútummal való leírását szeret-nénk helyettesíteni kevesebb attribútumot használó leírással. Hasonlóságtartó dimenzió-csökkentésről fogunk beszélni, ami azt jelenti, hogy tudunk adni egy olyan hasonlósági definíciót az új leírásban, ami jó becslése az eredeti hasonló-ságnak.

Az eredeti adathalmazt azm×n-esM mátrixnak tekintjük, az új leírást pe-dig azm×k-sMcmátrixnak. Ahogy már írtuk, aznnagyon nagy lehet, ami azt jelenti, hogy az adatbázis nem biztos, hogy elfér a memóriában. Ezt a problé-mát szeretnénk megkerülni azzal, hogy azM-et azMcmátrixszal helyettesítjük úgy, hogy k n annyira, hogy Mc elférjen a memóriában. Ezáltal lehetővé válik olyan algoritmusok futtatása, amelyek feltételezik, hogy az adatokat leíró mátrix a gyors elérésű memóriában található.

A dimenziócsökkentés hasznos lehet akkor is, ha az adatainkat vizualizálni szeretnénk: egy sokdimenziós adatbázist az ábrázoláshoz akár kettő vagy há-rom dimenziósra csökkenthetünk. Még ha nem is élünk a dimenziószám ilyen szélsőséges csökkentésével, ábrázolhatjuk egy viszonylag kis dimenziószámúra csökkentett adatbázis két- vagy háromdimenziós vetületeit.

A következőkben két speciális feladatot tárgyalunk részletesen. Az elsőben az attribútumok valós számok és két objektum különbözőségén az Euklideszi távolságukat értjük. A második esetben az attribútumok csak binárisak lehet-nek, és két objektum hasonlóságát a Jaccard-koefficiens (lásd 3.2.1 rész) adja meg.

A dimenziócsökkentés során csak a legfontosabb dimenziókat tartjuk meg, azokat, amelyekről úgy gondoljuk, hogy a legnagyobb szerepet játszanak két

objektum hasonlóságának megállapításánál. A többi attribútumot elhagyjuk, ezért a dimenziócsökkentés zajszűrésnek is tekinthető.

Szinguláris felbontás

A szinguláris felbontás3az elméleti szempontból egyik legtöbbet vizsgált, klasszi-kus lineáris algebrai eszközöket használó dimenzió-csökkentési eljárás4. Ennek alkalmazása után nyertMcmátrix soraiból jól közelíthető az euklideszi távolság, illetve az attribútumok vektoraiból számított skaláris szorzattal mért hasonló-ság. Utóbbi megegyezik a koszinusz mértékkel, ha a mátrix sorai normáltak.

Ebben a szakaszban néhány jelölés és alapvető fogalom után definiáljuk a szin-guláris felbontást, igazoljuk a felbontás létezését, majd megmutatjuk, hogy miként használható a felbontás dimenzió-csökkentésre. Megjegyezzük, hogy a szakasz nem mutat a gyakorlatban numerikus szempontból jól alkalmazható módszert a felbontás kiszámítására. Kisebb adathalmaz esetén általános lineá-ris algebrai programcsomag (Matlab, Octave, Maple) használata javasolt, míg nagyobb adatbázisoknál az adatok sajátosságát kihasználó szinguláris felbontó program (SVDPack5) használata ajánlott.

Egy U Rn×n mátrixot ortogonálisnak nevezünk, ha oszlopai ortogonális rendszert alkotnak, azazUTU =In, aholInazn×nméretű egységmátrixot, és UT azU transzponáltját jelöli. Másképpen mondvaU invertálható ésU1-gyel jelölt inverzére teljesül, hogyU1 =UT. Mátrix ortogonalitásának szemléletes tárgyalásához szükségünk lesz a vektorok hosszának általánosítására, a norma fogalmára. A 2-norma általánosítása azM Rm×nmátrixra értelmezett∥M∥F Frobenius-norma, amelynek definíciója ∥M∥F =√∑m

i=1

n

j=1Mi,j2 .

Egy ortogonális mátrix által reprezentált lineáris transzformáció egy for-gatás, mely a vektorok hosszát nem változtatja. Ezen szemlélet alapja, hogy tetszőleges U Rn×n ortogonális mátrix és x∈Rn vektor esetén

∥U x∥2 =∥x∥2

teljesül. Az azonosság az alábbi elemi lépésekből következik:

∥U x∥22 = (U x)T(U x) =xT(UTU)x=xTx=∥x∥22.

Hasonlóan belátható, hogy tetszőlegesX Rm×n mátrix esetén ésU Rm×m illetveV Rn×n ortogonális mátrixok esetén igaz, hogy

U XVT

F =∥X∥F .

3A szinguláris felbontásról szóló rész Fogaras Dániel munkája.

4A szinguláris felbontáshoz nagyon hasonló eljárás a főkomponens analizis (angolul: prin-cipal component analysis).

5http://www.netlib.org/svdpack/

Mm×n=

3.5. ábra. A szinguláris felbontás sematikus vázlata.

A rövid bevezető után rátérünk a szinguláris felbontás definíciójára. Egy nem szükségszerűen négyzetesM Rm×n mátrix szinguláris érték felbontásán (singular value decomposition, SVD) az olyan

M =UΣVT

szorzattá bontást értjük, ahol U Rm×m, V Rn×n ortogonális mátrixok, továbbá aΣmátrixM-mel megegyező méretű és a főátlóban elhelyezkedőσ1 σ2 ≥ · · · ≥σr >0pozitív számokat csupa 0 követi és a többi elem szintén 0. A σiszámokatszinguláris értékeknek nevezzük, és aσi = 0választással terjesztjük ki az i > r esetre. A felbontásból látható, hogy rang(M) = rang(Σ) = r. Az U és a V oszlopait bal-, illetve jobboldali szinguláris vektoroknak mondjuk. A jelölések áttekintése a 3.5. ábrán látható.

3.3.1. Tétel TetszőlegesM Rm×n mátrixnak létezik szinguláris érték felbon-tása, azaz léteznek U Rm×m, V Rn×n ortogonális mátrixok, melyekkel

Bizonyítás. Az MTM mátrix szimmetrikus, ezért ortogonális transzfor-mációval diagonalizálható és sajátértékei valósak. Továbbá pozitív szemide-finit, mert tetszőleges x Rn×n vektor esetén xTMTM x = (M x)T(M x) =

∥M x∥22 0, ezért a sajátértékek nem negatívak. A sajátértékek legyenek σ12 ≥σ22 ≥ · · · ≥σr2 >0. Az ezekhez tartozó sajátvektorokból alkotott ortogo-nális mátrixot jelöljeV, ekkor

VTMTM V = sajátérték-hez tartozó sajátvektorokat tartalmazza. Vagyis

VrTMTM Vr = Σ2+. Vezessük be az

Ur =M VrΣ+1 jelölést, ekkor

M =UrΣ+VrT.

Az Ur vektorai ortogonális vektorrendszert alkotnak, ezt tetszőlegesen kiegé-szítve U = (UrU2) ortogonális mátrixszá

Most megmutatjuk, hogy szinguláris felbontás segítségével hogyan lehet dimenzió-csökkentést végrehajtani. Emlékeztetünk rá, hogy az M mátrix n-dimenziós sorvektorai objektumokat jellemeznek. Dimenzió-csökkentéskor az n attribútumot szeretnénkk < n dimenziójú vektorokkal jellemezni úgy, hogy közben az objektumok euklideszi távolsága vagy skaláris szorzattal mért ha-sonlósága csak kis mértékben változzon. A mátrixszorzás elemi tulajdonsága, hogy a szinguláris felbontás az alábbi formában is írható.

M =UΣVT =

r i=1

σiuivTi ,

aholuivTi a bal- illetve a jobboldali szinguláris vektorokból képzett diádszorzat, azaz egy oszlop- és egy sorvektor szorzataként felírtm×n méretű 1-rangú mát-rix. Látható, hogy az uivTi diádok monoton csökkenő σi súllyal szerepelnek az összegben. Innen adódik az ötlet, hogyk < r esetén csak az elsők legnagyobb súlyú diád összegével közelítsük az M mátrixot. Azaz

Mk =

k i=1

σiuivTi =UkΣkVkT,

ahol Uk = (u1u2 . . . uk) és Vk = (v1v2 . . . vk), valamit Σk egy k × k mé-retű diagonális mátrix, melynek főátlójában a σ1, σ2, . . . , σk értékek vannak.

Könnyen látható, hogyMk sorai egyk-dimenziós altérben helyezkednek el, hi-szen rang(Mk) = rang(Σk) = k. Sokkal mélyebb eredmény a következő, Mk hibájára vontakozó tétel, melynek bizonyítását mellőzzük.

3.3.2. Tétel LegyenM egy legalábbkrangú mátrix és legyenMk a fenti módon számított közelítése. Ha a közelítés hibáját Frobenius-normával mérjük, akkor a k-rangú mátrixok közül az Mk mátrix a lehető legjobban közelíti M-et, azaz

∥M −MkF = min

N:rang(N)=k∥M −N∥F. Továbbá a közelítés hibája a σi szinguláris értékekkel kifejezhető:

∥M −MkF = vu ut ∑r

i=k+1

σ2i.

A közelítés relatív pontosságán a hibanégyzet egytől vett különbségét értjük,

azaz ∑k

i=1σ2i

r

i=1σ2i. (3.2)

Az Mk mátrix sorai az M-éhez hasonlóan n méretűek, de most már egy k-dimenziós altérnek az elemei. Ennek az altérnek egy bázisát alkotják a VkT sorai, és az

M =UkΣk

mátrix k-dimenziós sorvektorai e bázisban fejezik ki az Mk sorait. Tehát a dimenzió-csökkentés eredménye, hogy az M mátrix n-dimenziós sorait a vetí-tés után az M mátrix k-dimenziós soraival közelítjük. A VkT sorainak orto-gonalitásából könnyen belátható, hogy azMk, illetve az M soraiból számított euklideszi távolságok és skaláris szorzatok is megegyeznek. Tehát a közelítés alatt torzítás kizárólag azM-bőlMk-ba történő vetítés során történik, melynek mértéke a 3.3.2.. tétel alapján felülről becsülhető.

Multidimensional Scaling és ISOMAP

Egy további dimenziócsökkentő eljárás a multidimensional scaling (MDS) [Borg és Groenen, 2005]. Az MDS abból indul ki, hogy az objektumok közti távolságok egy távolságmátrix-szal adottak. A korábbiakhoz hasonlóan az a cél, hogy megtaláljuk az objektumok egy olyan, kisebb dimenziós reprezen-tációját, amelynél a páronkénti távolságok minél jobban közelítik az eredeti

páronkénti távolságokat. Ennek érdekében az MDS egy célfüggvényt definiál, melyet optimalizál. Ebből adódik az MDS egyik legnagyobb előnye: nem csak olyan esetben használható, amikor az eredeti adat egy sokdimenziós térben adott, hanem bármilyen olyan esetben, amikor távolságot tudunk definiálni az eredeti adatbázis objektumai között. Ilyen lehet például, ha az objektumaink különböző hosszúságú idősorok vagy karakterláncok (sztring-ek).

Jelöljük di,j-vel az i-dik és j-dik objektumok eredeti távolságát, és di,j-vel azi-dik ésj-dik objektum leképezés utáni távolságát. Az MDS ekkor az alábbi módon definiált stresszt, mint célfüggvényt minimalizálja:

stressz= ahol n az adatbázisbeli objektumok száma.

Az MDS algoritmust nem tárgyaljuk részletesen, személtetésként csak annyit mondunk, hogy az algoritmus kezdetben valahogyan elhelyezi az objektumok-nak megfelelő pontokat a kis dimenziószámú térben, és ezeket a pontokat moz-gatja úgy, hogy közben a fenti stressz értéke csökkenjen.

Az ISOMAP algoritmus abban különbözik az MDS-től, hogy mit tekint az objektumok (pontok) di,j távolságának a stressz számításakor. Adott az ob-jektumok valamely távolságfüggvény szerinti d0i,j távolsága, például Euklideszi távolságuk. Ezen távolságok alapján az ISOMAP algortimus felépít egy szom-szédossági gráfot: minden objektumot összeköt a k darab legközelebbi szom-szédjával. Ezt követően kiszámolja az objektumok közti legközelebbi szomszéd gráfbeli legrövidebb utak hosszát: a di,j távolság tehát az i és j objektumok közti legközelebbi szomszéd gráfbeli legrövidebb út hossza lesz.

Vegyük észre, hogyiésj pontok (objektumok) közti legközelebbi szomszéd gráfbeli legrövidebb út hossza nagyban különbözhet aziésj pontok Euklideszi távolságától: ha például pontjaink egy csigavonal (spirál) mentén helyezked-nek el, a legközelebbi szomszéd gráfbeli legrövidebb út hossza, nagyjából, a csigavonal mentén történő távolságot fogja jelenteni. Ilyen értelemben az ISO-MAP figyelembe veszi az adatok strukturáját a (kisebb dimenziószámú) térbe történő leképezés során (3.6. ábra).

Felügyelt dimenziószámcsökkentés, LDA

Ha címkézett adatokkal dolgozunk, azaz az adatbázisbeli objektumok külön-böző osztályokba sorolhatóak, és legalább az objektumok egy részéről tudjuk, hogy azok mely osztályba tartoznak, a korábbiakban bemutatottak helyett vá-laszthatunk olyan dimenziócsökkentő eljárást is, amely kitüntetett figyelmet szentel az objektumok osztályattribútumának, az osztálycímkének. Ilyen eljá-rások egyike az LDA (Linear Discriminant Analysis).

3.6. ábra. Az ISOMAP figyelembe veszik az adatok strukturáját: a példá-ban a távolságokat a csigavonal mentén számítja, a két jelölt pontot tekinti legtávolabbinak, holott az Euklideszi távolsága más pontpároknak nagyobb.

Az SVD (PCA) és LDA közti különbséget a 3.7. ábrán szemléltetjük. A példában egy kétdimenziós adatot csökkentünk egydimenziósra. A bal oldali ábrán az SVD-vel azon irányt találjuk meg, amely mentén legnagyobb az ob-jektumok szórása. Ezt szaggatott vonal jelöli. Az SVD-t úgy képzelhetjük el, hogy erre a vonalra vetíti az adatokat. Az LDA ezzel szemben figyelembe veszi az osztálycímkéket és olyan irányt keres, amelyre vetítve az osztályok minél jobban elkülönülnek. Az LDA-val talált irányt az ábra jobboldali részén lát-ható szaggatott vonal mutatja. Az LDA-t úgy képzelhetjük el, hogy erre a vonalra vetíti az objektumokat.

Látható, hogy ha az LDA-val egyetlen dimenziósra csökkentünk egy adat-bázist, és meghatározunk egy küszöbszámot, az LDA-t osztályozási feladatok megoldásához használhatjuk.

Minhash alapú lenyomat

Eddig azt feltételeztük, hogy az adattábla egyes sorai felenek meg az adat-bázisbeli objektumoknak és a táblázat oszlopai az egyes attribútumoknak. A sorokat és oszlopokat nyilván felcserélhetjük. Ezzel fogunk élünk a Minhash [Datar és tsa., 2004] eljárás bemutatása során: a Minhash konvencióinak meg-felelően most azt tételezzük fel, hogy az sorok felelnek meg az attribútumoknak, az oszlopok pedig az egyes példányoknak.

A következőkben tehát az adathalmaz sok objektumot és még több attribú-tumot tartalmaz. Célunk az attribútumok számának csökkentése. A feladatot a következő ábra szemlélteti.

AzMmátrix bináris és két oszlop (vektor) hasonlóságát a Jaccard-koefficiens

3.7. ábra. Az SVD (PCA) és LDA dimenziócsökkentő eljárások.

m M

n

?

Mc k

3.8. ábra. A Mishash szemléltetése

adja meg:

di,j = ||mi∩mj||

||mi∪mj|| = (mi)Tmj

||mi||2+||mj||2(mi)Tmj,

hiszen az mi(mj)T bináris vektorok esetében az azonos pozíciókban lévő 1-esek számát adja meg, ||mi||2 pedig a vektor egyeseinek számát. Feltételezzük, hogy a bináris vektorok ritkák azaz, har-el jelöljük a sorokban az 1-esek átlagos számát, akkor r ≪n.

Az Mc mátrixot az M lenyomatmátrixának fogjuk hívni. A lenyomatmát-rixnak nem kell binárisnak lennie, de azt természetesen most is elvárjuk, hogy a memóriaigénye jóval kevesebb legyen, mint azM memóriaigénye. További ki-kötés, hogy az adatok sorfolytonosan vannak tárolva, azaz először kiolvashatjuk

az első sort, majd a másodikat, és így tovább.

Ez a helyzet áll fel hasonló weboldalak kiszűrésénél, koppintások, kalózmá-solatok felderítésénél, hasonló tulajdonságú felhasználók keresésénél stb. To-vábbá ezt a módszert alkalmazhatjuk, amikor hasonló eladású termékpárokat keresünk. Amennyiben a termékeket kis tételben értékesítik, akkor az asszoci-ációs szabályokat kinyerő technikák (lásd 5.2. fejezet) nem alkalmazhatóak.

Gondolkozzunk el azon, hogy működik-e az alábbi algoritmus. Válasszunk ki néhány sort véletlenszerűen és tekintsük ezeket lenyomatoknak. Két lenyo-mat hasonlóságának várható értéke meg fog egyezni az oszlopaik hasonlóságá-val. Ez alapján azt mondhatnánk, hogy a sorok egy véletlenszerűen választott halmaza jó lenyomat.

A fentiek ellenére ez az egyszerű módszer nagyon rossz eredményt adna.

Ennek oka az, hogy a mátrixunk nagyon ritka (r ≪n), tehát egy oszlopban a legtöbb elem 0, így nagy valószínűséggel a legtöbb lenyomat is csupa 0 elemből állna.

A minhash alapú lenyomat egy elemét a következőképpen állítjuk elő. Vélet-lenszerűen permutáljuk meg a sorokat, majd válasszuk azj-edik oszlopok hash értékének (h) azt a legkisebb sorindexet, ahol 1-es szerepel a j-edik oszlopban.

A véletlen permutáció természetesen csak elméleti megközelítés, diszken talál-ható nagy adatbázis esetén túl lassú művelet. Ehelyett sorsoljunk ki minden sorhoz egy véletlen hash értéket. Amennyiben feltehetjük, hogy a mátrix sora-inak száma216-nál kisebb, akkor a születésnapi paradoxon6 alapján válasszunk 32 bit szélességű egyenletes eloszlású véletlen számot. Az algoritmus tényle-ges implementálása során tehát egyesével olvassuk a sorokat, véletlen számot generálunk, és minden oszlopnak folyamatosan frissítjük azt a változóját, ami megadja a legkisebb, 1-est tartalmazó sorindexet.

Mivel egy lenyomatnakk darab eleme van, ezért minden oszlophozk darab véletlen számot állítunk elő, és k darab hash értéket tároló változót tartunk karban. Vegyük észre, hogy a lenyomat előállításhoz egyszer megyünk végig a mátrixon.

Két lenyomat hasonlóságát a páronként egyező lenyomatok számánakk-hoz vett aránya adja meg, azaz

dbij = |{ℓ:Mci,ℓ =Mcj,ℓ}|

k ,

6A születésnap paradoxonnal kapcsolatos kérdés a következő: „Mekkora a valószínűsége annak az eseménynek, hogy emberek egy véletlenszerűen választottr fős csoportjában van legalább két személy, akik egy napon ünneplik a születésnapjukat?”. Elemi kombinatorikus úton a válasz meghatározható: pr= 1(365r)·r!

365r 1exp3·365r2 . A feladat következménye az az állítás, miszerint2nelemnek22nelemű halmazból kell egyenletes eloszlás szerint véletlen-szerűen egyesével kulcsot sorsolni, hogy kicsi (exp(3)<0.05) legyen annak valószínűsége, hogy két elem ugyanazt a kulcsot kapja.

ahol Mci,ℓ az Mcmátrix i-edik oszlopának ℓ-edik elemét jelöli.

Be fogjuk bizonyítani, hogy dbij jó becslése dij-nek abban az értelemben, hogy hai és j oszlopok nagyon hasonlók, akkor azok lenyomatai is nagy való-színűséggel hasonlók. Ehhez a következő észrevételt használjuk fel.

Észrevétel. Tetszőleges (i, j)oszloppárra igaz, hogy P[Mci,ℓ=Mcj,ℓ] =dij.

Bizonyítás. Csak akkor lehet a két lenyomat azonos, ha a legalább az egyik oszlopban az 1-est tartalmazó indexek közül olyan sor kapta a legkisebb véletlen számot, amelynél mindkét oszlopban 1-es szerepel. Ennek valószínűsége éppen dij, amennyiben a permutáció egyenletesen szórja szét az egyeseket.

És most a hasonlóság megőrzésével kapcsolatos állítás:

3.3.3. Tétel Legyenek 0 < δ < 1, és ϵ > 0 valós számok. Amennyiben k >

lnδ/22 , akkorδ-nál kisebb a valószínűsége annak, hogy a lenyomat és az eredeti hasonlóság különbsége ϵ-nál nagyobb.

Bizonyítás. Tekintsük az i, j oszlopokat. Definiáljuk Xl valószínűségi válto-zót, ami 1Mci,ℓ =Mcj,ℓ esetén, különben 0. Legyen Y =X1+. . .+Xk.

Xlbinomiális eloszlású és az előzőekben kimondott észrevétel miattE[Xl] = p=P(Mci,ℓ=Mcj,ℓ) =dij. A lenyomatok hasonlóságának definíciójából adódik, hogydbij = Yk. Írjuk fel Y-re 2.2.2 -es tételét:

P(

|Y −E[Y]|> kϵ)

2e−2ϵ2k, amiből adódik, hogy

P(

|dbij −dij|> ϵ)

2e2k.

További dimenziócsökkentő eljárások

Számos további dimenziószámcsökkentő eljárás létezik. Használhatunk pél-dául neurális hálókat7 is dimenziószámcsökkentésre: egy feed-forward típusú, egy rejtett réteggel rendelkező neurális háló rejtett rétegében lévő neuronjainak aktiválását tekinthetjük a háló bemenetén aktuálisan lévő objektum reprezen-tációjának egy másik (adott esetben kisebb dimenziószámú) térben.

Egy szupport vektor gép által talált elválasztó hipersíkra vetíteve az adat-bázisbeli objektumokat, egyel csökkenthetjük azok dimenzionalitását. Ezt ite-ratíve alkalmazva dimenziócsökkentő eljárást kapunk [Pitelis és Tefas, 2012].

7A neurális hálókat és szupport vektor gépeket az osztályozó algoritmusok közt tárgyaljuk.

3.9. ábra. A legközelebbi szomszéd reláció asszimetrikus (bal oldalt), megvizs-gálhatjuk, hogy egy-egy objektum hányszor fordul elő más objektumok legkö-zelebbi szomszédjaként (középen), a legkölegkö-zelebbi szomszédkénti előfordulások számának eloszlása (jobb oldalt).

A csomósodás jelensége

Sokdimenziós térbeli adatokkal kapcsolatos egyik újabb eredmény a csomóso-dás (presence of hubs) jelenségének megfigyelése [Radovanović és tsa., 2010a, Radovanović, 2011]. A következőkben ezt részletezzük.

Sokdimenziós térbeli adatokkal kapcsolatos egyik újabb eredmény a csomóso-dás (presence of hubs) jelenségének megfigyelése [Radovanović és tsa., 2010a, Radovanović, 2011]. A következőkben ezt részletezzük.