1 Adatbiztonság és tartalom alapú információkezelés 2. előadás
2 Tartalom alapú információkezelés : Tartalom alapú információkezelés : adott adattípusokon belül rejtett kapcsolatok és „minták”, függőségek …stb. feltárása Multimédiás adatok: Bármilyen információ ami tárolható, processzálható és átvihető digitális médiumon keresztül (pl. video, hang, szöveg, grafikus információk, …stb.)
3 Információelőhívás és kezelés tartalom alapján ??? Melyik -ben szerepel a szó Bin Laden ?_ Melyik biztonsági kamerás felvételen szerepelt álarcos ember ? Melyik híradóban hangzott el a szó ‘elnökválasztás” szöveg kép hang
4 String matching
5 Karp – Rabin algoritmus Pattern: d e d Text: b a d e d e d c a bText: Text: Transzf: AND
6 Előhívás tömörített file-ban 0 =a 10 = b 11 = c Text: a b a c b b a a b c a b cPattern: ac Huffman kódolás Text: Pattern: 011 OK NEM OK
7 Általánosítás – string matching helyett kulcsszavak felismerése természetes nyelvekben Természetes nyelv: magyar, angol, kínai, héber, arab … Algoritmusok + morfológiai megfontolásokAlkalmazás: pl. www keresés (több mint egy trillió dokumentum)
8 Példa Melyik Shakespeare dráma tartalmazza a szavakat: Ceasar AND Brutus AND Calpurnia kulcsszavak A kulcsszavas keresés problémái: Homonimák: Előhívhat irreleváns dokumentumokat (pl. nap vs. Nap fogas vs fogas Hatvan vs hatvan) Szinonimák: Elmulaszt releváns dokumentumokat (pl. autó vs. kocsi, gépjármű USA vs. Amerika )
9 Brutus AND Caesar AND Calpurnia (bitwise AND) AND AND = Kulcsszó szerinti keresés
10 Probléma Vegyünk n = 1M db dokumentumot, Mindegyik kb 1K kifejezéssel. Átlag 6 bytes/kifejezés (beleértve központozást is) 6GB adat a dokumentumokban Vegyünk m = 500K jól különböző kifejezést. 500K x 1M matrix ^9 db 0’s vagy 1’s. Hatalmas adatmező, nem tudjuk reprezentálni Nagyon ritkás kitöltésű Van-e ügyesebb reprezentáció ?
11 Invertált indexek
12 Kulcsszó: Brutus AND Caesar Komplexitás:
13 Tudunk-e gyorsítani ? Skip pointers 831
14 Optimalizálás ? Sok rövid skip: kisebb ugrások, sok pointer összehasonlítás, de nagyobb valószínűséggel ugrunk Kevés hosszú skip: nagyobb ugrások, kevés pointer összehasonlítás, de kisebb valószínűséggel ugrunk
15 További optimalizálás Brutus AND Calpurnia AND Ceasar ??? Caesar AND Brutus AND Calpurnia Műveletvégrehajtás: Frekvencia szerinti sorbarendezés Növekvő frekvenciák szerinti sorrendben
16 Általános megoldás Kulcsszó Tokenizálás (szótövekre bontás, morfológia) Indexelés (adatbázis) Matching (algoritmus) végeredmény
17 Indexelés (invertált indexek) TermDoc # ambitious2 be2 brutus1 2 capitol1 caesar1 2 2 did1 enact1 hath1 I1 I1 i'1 it2 julius1 killed1 1 let2 me1 noble2 so2 the1 2 told2 you2 was1 2 with2 DOC 1. DOC 2.
18 Sokszoros előfordulás kiszűrése TermDoc # ambitious2 be2 brutus1 2 capitol1 caesar1 2 2 did1 enact1 hath1 I1 I1 i'1 it2 julius1 killed1 1 let2 me1 noble2 so2 the1 2 told2 you2 was1 2 with2 TermDoc #Freq ambitious21 be21 brutus11 21 capitol11 caesar11 22 did11 enact11 hath21 I12 i'11 it21 julius11 killed12 let21 me11 noble21 so21 the11 21 told21 you21 was11 21 with21
19 Invertált index
20
21 West Law adatbázis Előfizethető jogi adatbázis (precedencia típusú igazságszolgáltatási rendszerben fontos) ADATMENNYISÉG: 7 terrabyte, appr. 700,000 felhasználó Tipikus keresés: Gondatlanságból elkövetett AND felmentő ítélet AND állammal szemben
22 Tokenizálás Bemenet: Bemenet: fiú aki éppen egy biciklin pedálozik Kimenet: Kimenet: fiú, kerékpár, pedál, hajt TOKENIZÁLÓ (nyelvi műveletek, természetes nyelvprocesszálás)
23 Problémák Hewlett-Packard: egy szó, két szó ? Nyelvek szóelválasztás nélkül (pl. Japán és Kínai) Dátumok: 3/21/12; March 21, 1912; BC 55 Balról jobbra (magyar, angol) vagy jobbról balra (héber, arab), vagy fel le (kínai) Rövidítések: holnap MIT tanul MIT vagy mit ? Kis, vagy nagybetű: FED vs. fed
24 Redukálás The boy’s cars are different in colours The boy car be different colour Sokfajta előfordulás Standard forma Pl. Porter algoritmus (nyelvészeti szabályok segítségével minden szót 65 lépésben szabványosít)
25 Kifejezés alapú keresések Pl. „.. A szegedi egyetemen tanultam …” Bigramok: „szegedi egyetem”, „egyetem tanulás” … Porbléma: nagyon növelődik a keresendő objektumok száma
26 Indexelt bigramok kifejezés alapú kereséshez A kőszívű ember fiai N M F F Az egész szöveg testet indexeljük az {N,M,F} halmazzal (pl. MNMMFFFNN…) Algoritmus: String matching a BM algoritmussal megkeresvén a szövegben az NMFF stringeket, ezek között szó alapú keresés
27 Folytonos szöveg keresése 1: 7, 18, 33, 72, 86, 231; 2: 3, 149; 4: 17, 191, 291, 430, 434; 5: 363, 367, …> n To 2:1,17,74,222,551; 4:8,16,190,429,433; 7:13,23,191;... n Be: 1:17,19; 4:17,191,291,430,434; 5:14,19,101;... Ugyanez közelségi keresésre is !!!
28 A pozicionális keresés ára Appr. 4x-es indexadat halmaz Az indextáblázat a szöveg méretének appr %-a Ez angol nylevű szövegek esetén igaz