1 / 21

Vyhledávání v multimediálních databázích Tomáš Skopal KSI MFF UK

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. Osnova. Motivace mapování do vektorů jako součást extrakce vlastností vlastnosti mapování, důsledky pro vyhledávání Mapování v ektorov ý ch sad

Download Presentation

Vyhledávání v multimediálních databázích Tomáš Skopal KSI MFF UK

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Vyhledávání v multimediálních databázíchTomáš SkopalKSI 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 dovektorové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 Lp 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 klasická extrakce vlastností: 1) „ruční“ návrh reprezentace dokumentů – schéma univerza U2) „ruční“ návrh měření podobnosti/odlišnosti – míra d na U3) „ruční“ návrh metody extrakce – doménově závislá metoda sada objektů S  U +míra podobnosti/odlišnosti na U mapování:1) automatický návrh reprezentace dokumentů – vektory dimenze k2) automatický návrh měření vzdálenosti – předdefinovaná metrika (např. L2)3) automatická extrakce – jedna z univerzálních metod (viz dále) sada vektorů S’Rk+metrika naRk

  5. Mapování – definice a vlastnosti • zobrazení (vnoření) prostoru (S, d) do (Rk, ) • formálně F: SRk • 1/c1 * d(O1,O2)  (F(O1, O2))  c2 * d(O1, O2) • nejmenší c1*c2 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 (Rk, L2)) tak, že zkreslení dosahuje O(log |S|) • pokud c1> 1 a c2 > 1, je mapování aproximativní • pokud c2 = 1, je mapování kontraktivní, tj. (F(O1, O2))  d(O1, O2) • alternativní mírou zachování vzdáleností je stressO1,O2 ((F(O1), F(O2)) – d(O1, O2))2 / O1,O2 d(O1, O2)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Rk místo F’: SRk, 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ť QRorig je výsledek dotazu provedeného v původním prostoru (S, d) a QRmap je výsledek dotazu provedeného v novém prostoru (Rk, ), potom • objekt Oi  QRmap a zároveň Oi  QRorig jefalse hit • objekt Oi  QRmap a zároveň Oi  QRorig jefalse drop • obecně při nenulovém zkreslení vzdáleností (aproximativní mapování) dochází i ke zkreslení výsledků dotazů • může nastat QRorig≠ QRmap , přičemž QRorig QRmap a QRmap QRorig • dochází jak k „false hits“, tak k „false drops“, tj. snižuje se relativní přesnost, resp. relativní úplnost (vzhledem ke QRorig) • u kontraktivního mapování dochází u rozsahových dotazů (Q, rQ)pouze k false hits (tj. relativní úplnost je 100%) • vždy platí QRorig QRmap • k false drop nemůže dojít, protože d(Q, Oi)  rQ  (F(Q), F(Oi))  rQ • 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 L2) • 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Rk • kontraktivní např. pro Lp 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: RNRk pomocí singulárního rozkladu (SVD) datové matice, kde d =  = L2 • 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 WT, 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 WT – sloupcemijsou namapované vektory (vyjádřené v bázi konceptů) VTq– projekcedotazového vektoruqdo cílového prostoru, používá se pro porovnávání s vektory (WT)i

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

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

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

  16. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 30 31 32 33 34 35 36 37 38 39 Příklad LSI na obrázcích (3) Vizualizace matice A (prvních 20 sloupcových vektorůobrázků): ... Vizualizace maticeV (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íchobrá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.)

  17. k = 50 Příklad LSI na obrázcích (4) Důležitost levého singulárního vektoru Vi (singulárního obrázku) je dána hodnotou i. Singulárních čísel je maximálně |S|. Příklad, diagonálav je:  = 105 * (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, ...)

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

  19. 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 Příklad LSI na obrázcích (6) 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ů

  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 RTA (místo projekce VTA 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. RTR je „skoro“ identita

  21. Srovnání LSI a náhodných projekcí • experimentální srovnání pro vektorový model (VM) v Text Retrievaldata: 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é“

More Related