Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Vyhledávání v multimediálních databázích Tomáš Skopal KSI MFF UK 4. Mapování a redukce dimenze 1. část – úvod + mapování vektorových sad.

Podobné prezentace


Prezentace na téma: "Vyhledávání v multimediálních databázích Tomáš Skopal KSI MFF UK 4. Mapování a redukce dimenze 1. část – úvod + mapování vektorových sad."— Transkript prezentace:

1 Vyhledávání v multimediálních databázích Tomáš Skopal KSI MFF UK 4. Mapování a redukce dimenze 1. část – úvod + mapování vektorových sad

2 Osnova Motivace  mapování do vektorů jako součást extrakce vlastností  vlastnosti mapování, důsledky pro vyhledávání Mapování vektorových sad  kontraktivní triviální redukce dimenze  aproximativní LSI (resp. SVD) náhodné projekce Mapování metrických sad  kontraktivní pivot-based metody modifikovaný SparseMap  aproximativní FastMap SparseMap MetricMap

3 Motivace Mapování (mapping, embedding) = zobrazení objektů datové sady S do vektorového prostoru dimenze k tak, že původní vzdálenosti d(*,*) mezi objekty jsou (částečně) zachovány i mezi zobrazenými vektory (vzhledem ke vzdálenosti  (*,*) ve vektorovém prostoru) proč mapovat?  rychlost vyhledávání – drahá funkce podobnosti d vs. levná funkce  (např.  je L p metrika O(k), kdežto d je třeba editační vzdálenost O(m*n))  redukce dimenze konstantní dimenze k – lepší správa dat (např. řetězce mají proměnlivou délku) snížení prostorových nároků na ukládání/vyhledávání objektů nižší dimenze = (někdy) lepší možnosti indexování  využití prostorových (vektorových) metod indexování (např. R-strom, atd.)  d nemusí být metrika, kdežto  většinou je (takže lze lépe indexovat)

4 Mapování jako extrakce vlastností kolekce multimediálních dokumentů + lidské vnímání podobnosti sada objektů S  U + míra podobnosti/odlišnosti na U klasická extrakce vlastností: 1) „ruční“ návrh reprezentace dokumentů – schéma univerza U 2) „ruční“ návrh měření podobnosti/odlišnosti – míra d na U 3) „ruční“ návrh metody extrakce – doménově závislá metoda mapování: 1) automatický návrh reprezentace dokumentů – vektory dimenze k 2) automatický návrh měření vzdálenosti – předdefinovaná metrika (např. L 2 ) 3) automatická extrakce – jedna z univerzálních metod (viz dále) sada vektorů S’  R k + metrika na R k

5 Mapování – definice a vlastnosti zobrazení (vnoření) prostoru (S, d) do (R k,  ) formálně F: S  R k 1/c 1 * d(O 1,O 2 )   (F(O 1, O 2 ))  c 2 * d(O 1, O 2 )  nejmenší c 1 *c 2 určuje zkreslení vzdáleností (distortion)  obecně zkreslení nemusí existovat, resp. může být nekonečné  každý konečný metrický prostor lze vnořit do Euklidovského prostoru (tj. do (R k, L 2 )) tak, že zkreslení dosahuje O(log |S|) pokud c 1 > 1 a c 2 > 1, je mapování aproximativní pokud c 2 = 1, je mapování kontraktivní, tj.  (F(O 1, O 2 ))  d(O 1, O 2 ) alternativní mírou zachování vzdáleností je stress  O 1,O 2 (  (F(O 1 ), F(O 2 )) – d(O 1, O 2 )) 2 /  O 1,O 2 d(O 1, O 2 ) 2  stress měří celkovou odchylku vzdáleností, tj. rozsah, ve kterém se odlišují  existují varianty

6 Mapování a dotazy (1) dotaz často nepochází z datové sady, tj. Q  U – S datová sada S je často budována dynamicky je žádoucí uvažovat F: U  R k místo F’: S  R k, jinak:  pro dynamicky rostoucí S nebo pro Q  U – S vzroste zkreslení např. kontraktivita F’ už není zaručena pro F  lze aplikovat v případě, kdy se F konstruuje nezávisle na S, tj. přímo ze znalosti U (a případně nějakých konstantních dat)  bohužel, někdy to nejde, v tom případě se spoléhá na uniformitu dat i dotazů (tj. že se zkreslení zásadně nezvýší) pro konstrukci F se použije dostatečně velký vzorek S, u kterého se předpokládá, že je reprezentativní (popisuje distribuci i zbytku dat, včetně dotazů)

7 Mapování a dotazy (2) nechť QR orig je výsledek dotazu provedeného v původním prostoru (S, d) a QR map je výsledek dotazu provedeného v novém prostoru (R k,  ), potom  objekt Oi  QR map a zároveň Oi  QR orig je false hit  objekt Oi  QR map a zároveň Oi  QR orig je false drop obecně při nenulovém zkreslení vzdáleností (aproximativní mapování) dochází i ke zkreslení výsledků dotazů  může nastat QR orig ≠ QR map, přičemž QR orig  QR map a QR map  QR orig  dochází jak k „false hits“, tak k „false drops“, tj. snižuje se relativní přesnost, resp. relativní úplnost (vzhledem ke QR orig ) u kontraktivního mapování dochází u rozsahových dotazů (Q, r Q ) pouze k false hits (tj. relativní úplnost je 100%)  vždy platí QR orig  QR map  k false drop nemůže dojít, protože d(Q, O i )  r Q   (F(Q), F(O i ))  r Q  neplatí pro kNN dotazy! (lze dosáhnout kombinací vyhledávání v obou prostorech)

8 Mapování a dotazy (3) Důsledky mapování pro vyhledávání: aproximativní mapování  aproximativní vyhledávání (false hits a false drops), tj. nižší relativní přesnost a úplnost  může výrazně zrychlit vyhledávání levnější funkce odlišnosti ve vektorovém prostoru (navíc metrika) změna distribuce dat v prostoru – tvorba shluků  chyba vyhledávání (přesnost a úplnost) především závisí na velikosti dimenze k a na metrice kontraktivní mapování  přesné vyhledávání (vzhledem k původnímu prostoru) – false hits ve výsledku dotazu jsou odfiltrovány v druhé fázi vyhledávání (pomocí původní podobnosti), false drops nejsou  zrychlení vyhledávání levnější funkce odlišnosti ve vektorovém prostoru (navíc metrika) pro první fázi filtrování nicméně původní drahou podobnostní funkci je třeba použít pro druhou fázi filtrování  efektivita filtrování závisí na velikosti dimenze k a na metrice

9 Mapování vektorů do vektorů Důvody pro „přemapování“ vektorů: redukce dimenze z N do k, kde k << N  nižší nároky na uložení i vyhledávání levnější funkce podobnosti (metrika)  díky nižší dimenzi  nižší složitost (např. od kvadratické formy k L 2 ) zanedbání méně významných dimenzí (resp. podprostorů) tak, že přesnost a úplnost je ovlivněna pouze marginálně

10 Triviální redukce dimenze prosté zanedbání některých dimenzí  ručně, uživatel určí nejméně důležité dimenze  automaticky, statistickou analýzou „příspěvků“ dimenzí  omezené využití – tam, kde jsou dimenze striktně nezávislé a výrazně se liší distribuce na jednotlivých dimenzích  výhoda: nezávislost mapování na S a dotazech, tj. F: U  R k kontraktivní např. pro L p metriky  důkaz triviální: ubereme „ příspěvek“ dané dimenze = zmenšení celkové vzdálenosti

11 Indexování latentní sémantiky - LSI indexační schéma využívající aproximativního mapování F: R N  R k pomocí singulárního rozkladu (SVD) datové matice, kde d =  = L 2 původně navrženo pro textové dokumenty (vektorový model DIS), nicméně používá se v širším kontextu Information Retrieval odkrývá latentní sémantiku v datech – odhaluje skryté vzory ve vektorech, tzv. koncepty (lineární kombinace původních dimenzí) nový prostor „konceptů“, vektory „vah konceptů“ koncepty jsou navíc seřazeny podle důležitosti, tj. méně důležité koncepty (vlastně šum) lze zanedbat – další redukce dimenze

12 LSI – popis Datová matice A řádu N x |S|, sloupce tvoří vektory (dimenze N) objektů z S. Plný SVD rozklad: A = V  W T, kde sloupcové vektory ve V (řádu N*N) tvoří levou singulární bázi, sloupcové vektory ve W (řádu |S|*|S|) tvoří pravou singulární bázi a diagonální matice  (řádu N*|S|) obsahuje klesající singulární čísla  1 ≥  2 ≥... ≥  min(N,|S|) příslušná k singulárním vektorům. Popis matic důležitých pro LSI: V – sloupce tvoří bázi konceptů v původním prostoru  W T – sloupcemi jsou namapované vektory (vyjádřené v bázi konceptů) V T q– projekce dotazového vektoru q do cílového prostoru, používá se pro porovnávání s vektory (  W T ) i

13 Redukovaný SVD rozklad Místo plného SVD rozkladu se používá redukovaný rank-k SVD rozklad: A k = V k  k W k T kde k << N, V k obsahuje prvních k sloupců z V,  k obsahuje prvních k singulárních čísel a W k T obsahuje prvních k řádků W T, tj. obdržíme namapované vektory dimenze k (sloupce  k W k T ) A k je nejlepší aproximace A (důkaz Eckart aYoung) ze všech matic hodnosti k ve smyslu Frobeniovy normy, tj. pro A k je minimální ||A – A k || F = sqrt(  2 k+1 +  2 k+2 +  2 k+3 +... +  2 rA ) Pro rank-k SVD existují rychlé numerické metody - “Lanczos”, “Arnoldi”...

14 kolekce 730 obrázků domů Příklad LSI na obrázcích (1)

15 Nechť matice A reprezentuje kolekci obrázků. Každý sloupec v A je jeden “dlouhý” vektor, v případě obrázků vektor jasů všech pixelů. a) Skenujeme pixely každého obrázku a vytvoříme vektor obrázku V i : b) Vektor obrázku V i : V i = (251,250,251,251,249,247,252,249,244,242,216,227,...) T A = N = výška*šířka např. 4800 = 60*80 Nechť počet obrázků v kolekci je |S|, potom matice A je řádu N x |S| např. 4800 * 730 Příklad LSI na obrázcích (2)

16 Vizualizace matice A (prvních 20 sloupcových vektorů obrázků):... Vizualizace matice V (levá báze singulárních vektorů – obrázkové koncepty):... Díky povaze matice A (přímo jasy pixelů) můžeme hovořit o “singulárních obrázcích” namísto levých singulárních vektorů ve V. Každý “singulární obrázek” je nějakou měrou přítomen ve všech indexovaných obrázcích. Tato míra je daná velikostí hodnot singulárních čísel  i, tj. první singulární obrázky jsou nejdůležitější (připomíná DCT frekvence.) 0 1 2 3 4 5 6 7 8 9 10 1112 13 14 15 16 17 18 19 0 1 2 3 4 5 6 7 8 9 10 1112 13 14 15 16 17 18 19 30 3132 33 34 35 36 37 38 39 Příklad LSI na obrázcích (3)

17 Příklad LSI na obrázcích (4) Důležitost levého singulárního vektoru V i (singulárního obrázku) je dána hodnotou  i. Singulárních čísel je maximálně |S|. Příklad, diagonála v  je:  = 10 5 * (2.2555, 0.3386, 0.2615, 0.2222, 0.1822, 0.1675, 0.1485, 0.1402, 0.1254, 0.1238, 0.1191, 0.1155, 0.106, 0.1, 0.0989, 0.0963, 0.0924, 0.0908, 0.0867, 0.0835, 0.0823,...) k = 50

18 Původní obrázky (jasy) – matice A: Visualizace chyby aproximace pomocí rank-k rekonstrukce: Rank-15 SVD, rekonstruované obrázky – matice A 15 : - pouze hrubé obrysy původních obrázků Příklad LSI na obrázcích (5) 0 1020 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 0 1020 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190

19 Původní obrázky – matice A: Rank-50 SVD- jemnější obrysy, hrubé detaily původních obrázků Rank-250 SVD- ještě jemnější obrysy, více detailů Příklad LSI na obrázcích (6) 0 1020 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 0 1020 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 0 1020 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190

20 Náhodné projekce (random projections - RP) LSI, resp. SVD, je výpočetně drahé mapování – levnou variantou redukce dimenze jsou náhodné projekce matice A pomocí projekční matice R se datová matice A promítne do R T A (místo projekce V T A u LSI) R se zkonstruuje tak, že její prvky jsou nezávislé náhodné proměnné a řádky matice mají nulovou střední hodnotu a jednotkový rozptyl  klasická náhodná projekce – prvky R mají normální rozložení na intervalu 0..1  jednoduchá náhodná projekce (dvě varianty) R obsahuje celá čísla {-1, 0, 1}, resp. jejich násobky  3, 0 má pravděpodobnost 2/3 a  1 má pravděpodobnost 1/6 R obsahuje celá čísla {-1, 1},  1 má pravděpodobnost ½  aby R byla projekční, musí být sloupcově ortonormální, nicméně při dostatečně velké dimenzi a výše zmíněné konstrukci je to „skoro“ pravda, tj. R T R je „skoro“ identita

21 Srovnání LSI a náhodných projekcí experimentální srovnání pro vektorový model (VM) v Text Retrieval data: cca 17000 dokumentů LATimes o cca 50000 termech, tj. vektory dimenze 50000, redukce do dimenze 50,100,250,500,1000 výhody náhodných projekcí  mnohem levnější než SVD (levné generování R oproti výpočtu V)  vzdálenosti jsou poměrně dobře zachovány (pro rozumné k) nevýhody proti LSI  potřeba větší k pro srovnatelné zachování vzdáleností  neexistují koncepty, sloupce projekční matice R jsou všechny „stejně důležité“


Stáhnout ppt "Vyhledávání v multimediálních databázích Tomáš Skopal KSI MFF UK 4. Mapování a redukce dimenze 1. část – úvod + mapování vektorových sad."

Podobné prezentace


Reklamy Google