1 / 29

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. 10 . Sjednocen ý model vyhledávání v (ne)metrických prostorech. Osnova. různé pohledy sjednocení podobností transformacemi konkávní a konvexní modifikace ball-overlap factor T-error TriGen algoritmus T-báze.

arva
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 10. Sjednocenýmodel vyhledávání v (ne)metrických prostorech

  2. Osnova • různé pohledy • sjednocení podobností transformacemi • konkávní a konvexní modifikace • ball-overlap factor • T-error • TriGen algoritmus • T-báze

  3. Různé pohledy na podobnostní vyhledávání (1) • přesné vs. aproximativní vyhledávání • motivace – vyměnit rychlost vyhledávání za přesnost vyhledávání • determinováno dobře/volně modelovanou funkcí podobnosti • dobře definovaná • editační vzdálenost pro potřeby spellcheckingu (najdi všechny jednoznakové překlepy slova „google“) • L2 metrika pro potřeby „opravdové“ vzdálenosti (najdi nejbližší restaurační zařízení) • biometrické podobnosti (identifikuj osobu)

  4. Různé pohledy na podobnostní vyhledávání (2) • přesné vs. aproximativní vyhledávání • determinováno dobře/volně modelovanou funkcí podobnosti • volně definovaná • editační vzdálenost pro potřeby zarovnávání DNA sekvencí (stejné hodnoty vzdálenosti mohou znamenat různě významné změny funkce) • L2 jako míra vzdálenosti na vektorech obrázků (už vektorová reprezentace je nepřesná) • neuronová síť

  5. Různé pohledy na podobnostní vyhledávání (3) • přesné vs. aproximativní vyhledávání • dobře modelovaná podobnost → má smysl hledat přesně → aproximativní vyhledávání JE kvalitativní zhoršení • volně modelovaná podobnost→ samotná definice podobnosti je nepřesná → aproximativní vyhledávání nutně NEMUSÍ VÉST ke kvalitativnímu zhoršení

  6. Různé pohledy na podobnostní vyhledávání (4) • metrické vs. nemetrické vyhledávání • motivace – nemetrický přístup • vyměnit rychlost vyhledávání (metrika) za přesnost modelování podobnosti (nemetrika) • expert modelující podobnost není svázán metrickými axiomy • možnost použití „neznámé“ podobnosti (tj. předpoklad nemetriky) • popis algoritmem – nerozhodnutelné topologické vlastnosti • heuristika, rekurze, potřeba stavu • HW zařízení – black-box • FPGA obvody

  7. Různé pohledy na podobnostní vyhledávání (5) • statické vs. dynamické vyhledávání • motivace – dynamické měření podobnosti • flexibilita modelování podobnosti • učící se podobnost • trénovací množina • uživatelské profilování • podobnost se může měnit v čase • zohlednění dotazového objektu při stanovení míity podobnosti

  8. Sjednocující rámec • model zachycující vyhledávání • přesné metrické • aproximativní metrické • přesné nemetrické • aproximativní nemetrické • zdrojová podobnostní funkce je modifikována na aproximaci metriky (v limitním případě na přesnou metriku ) • modifikovanou vzdálenost (metriku) lze tudíž využít v metrických přístupových metodách

  9. Předpoklady • potřebujeme malý vzorek T databáze S • databáze S nemusí být celá k dispozici na začátku (je dynamická, tj. postupně se plní) • v malé databázi hledáme triviálně sekvenčně, tj. neindexujeme • jakmile je databáze dostatečně velká (sekvenční vyhledávání se stane brzdou), nasamplujeme z ní náhodných m = |T| objektů • předpokládáme uniformní distribuci databáze v čase, tj. distribuce dat ve zvětšující se databázi se v čase příliš nemění • potřebujeme podobnostní míru • zadaná jako black-box, tj. neznáme její analytický popis, ani jiné vlastnosti

  10. Základní modifikace vstupní podobnostní míry • mějme nějakou podobnost s • transformace na vzdálenost •  = –s • reflexivita, non-negativita • lze zajistit • pokud je známá minimální vzdálenost d-, příslušně posuneme • pokud není, nasamplujeme omezený počet vzdáleností a nejmenší prohlásíme za d- • vzdálenosti, které později padnou pod d- ošetříme speciálně (d- je uvažována jako horní hranice) • symetrie • lze zajistit • konstrukce symetrie – (O1, O2) = min(asym(O1,O2), asym(O2,O1)) • výsledek vyhledávání je pak třeba přefiltrovat přes asymetrickou vzdálenost • předpokládejme rovněž maximální vzdálenost d+ • získáme stejně jako d- (vzdálenosti nad d+ jsou opět ošetřeny speciálně) • zbývá trojúhelníková nerovnost, tj. pracujeme obecně s d+-omezenou semimetrikou

  11. Trojúhelníkové trojice • nechť a = (O1, O2), b =(O2, O3), c = (O1, O3) • trojice <a, b, c> je trojúhelníková, pokud a+b≥c  b+c≥aa+c≥b • trojici si lze představit jako všechny možné trojúhelníky v Euklidovské rovině (a naopak) • pokud členy trojice uspořádáme tak, že a ≤ b ≤ c, stačí testovat a+b≥c • metrika generuje pouze trojúhelníkové trojice a naopak, pokud semimetrika generuje pouze trojúhelníkové trojice, je to metrika • trojúhelníková nerovnost je splněna, pokud trojice jsou trojúhelníkové • otázka – jak netrojúhelníkové trojice změnit na trojúhelníkové? • „neškodná“ modifikace semimetriky, která trojice upraví (viz dále)

  12. Samplování trojic • pro všechny objekty ze vzorku T spočítáme vzdálenosti (tj. matici vzdáleností) • takto jsme schopni za cenu O(m2) = O(|T|2) výpočtů vzdáleností vytvořit ( ) trojic • 2 metody • triviální – uniformě nasamplujeme objekty do trojice • anomální trojice – snažíme se najít takové trojice, kde nejdelší strana je výrazně delší než součet zbylých stran (tj. hledáme výrazně netrojúhelníkové trojice) • můžeme kombinovat, např. 10% anomálních trojic a 90% obyčejných trojic m3

  13. T-error • jak měřit stupeň narušení trojúhelníkové nerovnosti • z datové sady nasamplujeme trojice podle semimetriky • T-error – poměr netrojúhelníkových trojic (mnt) ku všem trojicím (m), tj. e = mnt / m • proč T-error • trojúhelníkové trojice se nakonec objeví v MAM jako „rozhodnutí“ o filtrování... tj. jsme nejblíže zdroji porušení troj. nerovnosti • T-error je přímo odvozen z dat a použité semimetriky, tj. v této formě se projevuje v MAM

  14. Modifikace vzdálenosti • základní nástroj, tzv. SP-modifikátor rostoucí funkce f, kde f(0)=0 • modifikace f(O1,O2) = f((O1,O2)) • při použití f místo  je zachováno podobnostní uspořádání (f je prostá) • tj. sekvenční vyhledávání vrátí stejný výsledek • při rozsahovém dotazu je třeba stejně modifikovat i poloměr dotazu

  15. TG-modifikace • =konkávní SP-modifikátor • věta: TG-modifikátor zvyšuje počet trojúhelníkových trojic Důsledek: každá semimetrika lze transformovat na metriku

  16. TG-modifikace • sice dostaneme metriku (tj. e=0), nicméně zvýšíme vnitřní dimenzi • TG-modifikátor trojúhelníkům (trojicím) natahuje strany nerovnoměrně, rozíly v délkách se zmenšují • v limitě vyrobí z libovolného trojúhelníku trovnostranný trojúhelník • snižování rozdílů v délkách hran přímo implikuje zvyšování vnitřní dimenze, protože se snižuje rozptyl • objem se kumuluje u povrchu koule (tedy u velkých vzdáleností) • zvyšuje se průměrná vzdálenost • je třeba vybrat TG-modifikátor který minimalizuje zvýšení dimenze a zároveň vyrobí potřebné trojice

  17. TV-modifikace • =konvexní SP-modifikátor • věta: TV-modifikátor snižuje počet trojúhelníkových trojic Důsledek: každá metrika lze transformovat na semimetriku

  18. TV-modifikace • sice z metriky dostaneme pouze semimetriku, ale zase snížíme vnitřní dimenzi • opak k TG-modifikátoru • zvýší se rozptyl vzdáleností v rámci trojice (a tedy i v rámci všech trojic) • objem se rozprostře rovnoměrněji mezi všechny vzdálenosti • snižuje se průměrná vzdálenost • je třeba vybrat TV-modifikátor který sníží dimenzi, ale minimalizuje počet netrojúhelníkových trojic

  19. Histogramy vzdáleností, příklad

  20. Vnitřní dimenze vs. BOF • vnitřní dimenze (tj. poměr průměrné vzdálenosti a rozptylu) je kvantitativní ukazatel, číslo neznamená žádnou kvalitativní hodnotu, čísla lze mezi sebou porovnávat • „nepozná“ se indexovatelnost dané (semi)metriky • ball-overlap factor (BOF) – kvalitativní ukazatel • mějme objekty datové sady (všechny nebo n nasamplovaných) • každému objektu najdeme nejbližšího souseda – obdržíme koule • pro všechny dvojice koulí zjistíme jejich průnik • BOF = počet dvojic s neprázdným průnikem ku počtu všech dvojic • nezávisle na MAM tedy BOF simuluje metrické regiony a jejich překryvy

  21. Vnitřní dimenze vs. BOF • výhoda BOF se projeví při TG-modifikacích • příklad: mějme TG-modifikátor • f vyrobí z každé semimetriky metriku, nicméně je nepoužitelný pro indexování – každé dvě koule se budou protínat • BOF bude 1, což znamená nejhorší indexovatelnost • vnitřní dimenze pouze vrátí velké číslo, nicméně z toho nepoznáme jestli je „pouze“ velká dimenze anebo data nelze vůbec indexovat

  22. Automatizovaná modifikace • cílem je mít nástroj, který jakoukoliv míru vzdálenosti (ať metriku mebo semimetriku) dokáže modifikovat tak, že je zajištěn určitý stupeň T-error – stanovíme hodnotu T-tolerance  (tj. ≤ ) • nenulová T-tolerance lze použít právě pro aproximativního vyhledávání • abychom to mohli dělat automatizovaně, je třeba zobecnit určité třídy TG- a TV-modifikátorů do funkce, která na vstupu (kromě modifikované vzdálenosti) očekává také váhu konkávnosti/konvexnosti • tím se docílí generování TG- TV-modifikátorů na míru, neboť • nižší míra konkávnosti znamená nižší vnitřní dimenzi (případně BOF) a závoveň se zvýší T-error (a naopak) • nižší míra konvexnosti znamená vyšší vnitřní dimenzi (BOF) a zároveň se sníží T-error (a naopak) • tímto způsobem můžeme SPOJITĚ škálovat kvalitu modifikátorů • slovo „spojitě“ je důležité, protože „šoupáním“ váhy můžeme upravovat požadované vlastnosti modifikátoru

  23. T-báze • zobecnění modifikátorů, další parametr váha konkávnosti/konvexnosti w (w = 0 je identita) • w > 0 – používáme TG-modifikátor • w < 0 – používáme TV-modifikátor • dvě T-báze • FP-báze – jednoduchá báze (mocnina váhy)konvexnost/konkávnost je globální • RBQ-báze – odvozena z racionální Bézierovykvadriky, konvexnost/konkávnost lze nastavitdruhým Bézierovým bodem P(a,b)

  24. TriGen algoritmus • hledání optimálního modifikátoru pomocí T-bází lze algoritmizovat • nejprve otestujeme identitu (w = 0, nemodifikovanou vzdálenost) • pokud splňuje danou T-tolerance, můžeme si dovolit více narušit trojúhelníkovou nerovnost – uvažujeme TV-modifikátory, tj. jen váhy w < 0 • pokud nesplňuje danou T-tolerance, musíme uvažovat váhy w > 0, tj. TG-modifikátory • do množiny T-bází vložíme FP-bázi a několik (mnoho) RBQ-bází, každá RBQ-báze pro konkrétní Bézierův bod P(a,b) • pro každou bázi najdeme optimální váhu, tj. nejnižší váhu takovou, že ještě T-error leží v toleranci • půlením intervalu vah se po fixovaném počtu iterací dobereme k nějaké takové váze (u RBQ bází nemusí existovat řešení, nicméně u FP-báze ano) • z kandidátů (modifikátorů) nalezených algoritmem vybereme toho, který vykazuje nejnižší vnitřní dimenzi (resp. BOF)

  25. TriGen algoritmus

  26. Experimenty (1)

  27. Experimenty (2)

  28. Experimenty (3)

  29. Experimenty (4)

More Related