250 likes | 395 Views
Vyhledávání v multimediálních databázích Tomáš Skopal KSI MFF UK. 9. Vnitřní dimenze a aproximativní vyhledávání. Osnova. prokletí dimenzionality vnitřní dimenze aproximativní vyhledávání přibližné vyhledávání pravděpodobnostní vyhledávání kombinace (tzv. PAC queries).
E N D
Vyhledávání v multimediálních databázíchTomáš SkopalKSI MFF UK 9.Vnitřní dimenze a aproximativní vyhledávání
Osnova • prokletí dimenzionality • vnitřní dimenze • aproximativní vyhledávání • přibližné vyhledávání • pravděpodobnostní vyhledávání • kombinace (tzv. PAC queries)
Prokletí dimenzionality • předpoklady: vektorová sada, uniformní distribuce (resp. nízká korelacesouřadnic) • se vzrůstající dimenzí rostou efekty prokletí dimenzionality • prokletí = většina efektů je nepříznivých pro potřeby vyhledávání (i jiné potřeby) • řešení • aproximativní vyhledávání • redukce dimenze
Efekty vysokých dimenzí (1) • objemy • uvažujme L2 kouli vepsanou do n-rozměrné jednotkové krychle – střed koule je tedy [0.5, 0.5, ..., 0.5] • dále uvažujme bod [0.51, 0.51, ..., 0.51] – tedy bod, který je v každé dimenzi vzdálen od středu koule o 0.1 • pro dimenzi • n < 25 je bod uvnitř koule • n = 25 je bod přesně na hranici koule • n > 25 je bod vně koule
Efekty vysokých dimenzí (2) • objemy S rostoucí dimenzí klesá poměr objemu koule a krychle. Data jsou řídká – exponenciální objem vs. konst. data
Efekty vysokých dimenzí (3) • povrchypočet k-rozměrných krychlí (kvadrantů) „dotýkajících se„n-rozměrné krychle Data jsou blízko os, jejich vektory jsou téměř ortogonální.(viz náhodné projekce – ortogonalita sloupců matice)
Efekty vysokých dimenzí (4) • vzdálenosti S rostoucí dimenzí se vzdálenosti bodů (k počátku) přibližují. Nejbližší a nejvzdálenější soused (čehokoliv) mají srovnatelné vzdálenosti.
Vnitřní dimenze (1) • vektorová (embedding) dimenze neříká nic o distribuci dat, např. • vektory [x, y, y, y, ..., y] jsou sice vysokorozměrné, ale vlastně pouze 2-rozměrné • vektory [x, 2*x, 3*x,..., d*x] leží na přímce • jak měřit dimenzi u nevektorových dat? • odpověď: vnitřní dimenze
Vnitřní dimenze (2) • zobecnění vektorové dimenze, resp. popis struktury dat (a ne struktury prostoru) • mnoho definic vnitřní/fraktální dimenze • „statistická“ vnitřní dimenze (Chávez et al.)kde je průměr 2 rozptyl vzdáleností (mezi všemi objekty) v datové sadě • tato definice je „zpětně kompatibilní“, tj. vnitřní dimenze všech (nebo velkého počtu náhodně vybraných) bodů vektorového prostoru dimenze n je O(n)
Vnitřní dimenze (3) • příklad nízká vnitřní dimenze vysoká vnitřní dimenze(2D vektorová sada a L1) (30D vektorová sada a L1)
Vysoká vnitřní dimenze a MAMs • všechny objekty jsou víceméně stejně (hodně) vzdálené • neexistují těsné shluky • všechny regiony MAM se překrývají s libovolným dotazem
Aproximativní vyhledávání • přibližné vyhledávání (approximately correct search) • je garantována nějaká odchylka vzdálenosti, např. násobek vzdálenosti k nejbližšímu sousedu • relativně malé zrychlení vyhledávání • pravděpodobnostní vyhledávání (probabilistic search) • je garantována pouze pravděpodobnost, že nalezený výsledek bude správný (tj. v konkrétním případě může být úplně špatný) • vyšší urychlení vyhledávání, ale také vyšší riziko false dropů/false hitů • kombinace – tzv. PAC queries (probably approximately correct)
Přibližné vyhledávání (1) • k-NN dotazy v M-stromu • relativní chyba • hledání (1+)nejbližšího souseda, tj. takový soused není dál než (1+) násobku ke skutečnému nejbližšímu sousedu • úprava algoritmu kNN: z PR jsou v každém kroku odfiltrovány ty regiony které neprotínají dynamický dotaz s poloměrem rQ’ = rQ/(1+) • rychlejší, ale ne o moc
Přibližné vyhledávání (2) • opět k-NN v M-stromu • ukončení algoritmu, když se změna poslední hodnoty v NN (tj. vzdálenosti ke kandidátovi na k-tého souseda) za posledních několik kroků zpomalí • z časové řady úprav této vzdálenosti se stanoví derivace – pokud spadne pod uživatelsky definovanou konstantu , je algoritmus zastaven a obsah NN je výsledek • lze interpretovat jako šanci, že se podaří najít lepšího kandidáta
Pravděpodobnostní vyhledávání • u LAESA metod • zmenšení vyhledávacího „prstence“ dělením vyhledávácího poloměru rQ • aby zmenšený poloměr zaručoval stanovenou pravděpodobnost korektního vyhledávání, je definován jako kdep je počet pivotů 2 je rozptyl na distribuci vzdáleností
PAC queries • kombinace aproximativních a pravděpodobnostních metod • např. pro M-strom a k-NN • hledá se opět (1+)-NN, ale pouze s pravděpodobností • ukončovací podmínka algoritmu je navíc rozšířena o testování poklesu dynamického poloměru rQ pod rQ, což je odhad vzdálenosti (1+)NN počítaný z distribuce vzdáleností
Compact partitions (1) – inkrementální vyhledávání • předpoklad: best-first algoritmus využívající frontu PR s výsledky nebo kandidáty (viz minulé přednášky) • kNN algoritmus u M-stromu (navíc pole NN) • lze použít i pro obyčejný rozsahový dotaz, kde poloměr je fixní a tedy se nezmenšuje jako u kNN • hlavní idea – limitace počtu aplikací metriky • jakmile je algoritmus ve stavu kdy je spočítáno M vzdáleností, je výpočet zastaven a uživateli vrácen aktuální obsah PR • vzhledem k tomu, že fronta je setříděna podle vzdálenosti k datazu, nedostane se (díky limitaci)na neperspektivní objekty/zóny • jiná terminologie: region = zóna
Compact partitions (3) – hodnocení zón (zone ranking) • zobecnění předchozího definováním dalších heuristik pro setřídění fronty PR • původní heuristika dLB = d(Q, center(Z)) – rZvzdálenost dotazu k nejbližšímu možnému objektu v zóně • d(Q, center(Z)) - vzdálenost dotazu k centru zóny • d(Q, center(Z)) + rZ - vzdálenost k nejvzdálenějšímu možnému objektu v zóně • dynamic beta = b(d(Q, center(Z)) – rZ) • b = 1/(1.0 – center(Z)/mcr), kde mcr je maximální možný poloměr zóny • podobný princip jako u pravděpodobnostní LAESA
Region proximity (1) • region proximity – „datová“ vzdálenost dvou regionů • pravděpodobnost, že dva regiony (Ox, rx), (Oy, ry) mají ve svém průniku společný objekt O (náhodně vybraný) – jak ji spočítat? • triviální aproximace:v metrickém prostoru nemáme objem, tj. průnik musíme kvantifikovat alternativně, např. • tento přístup je jednoduchý, nicméně nezohledňuje distribuci datových objektů a tudíž to není dobrá aproximace
Region proximity (2) • region proximity – „datová“ vzdálenost dvou regionů • aproximace zohledňující distribuci vzdáleností:celková vzdálenost párů regionů se stejnou vzdáleností mezi centry Ox, Oy • jak ji spočítat? – uvažujme spojenou podmíněnou hustotucož je pravděpodobnost, že d(Ox, O) = x a d(Oy, O) = yza předpokladu d(Ox, Oy) = dxypotom lze Xdxy spočítat jako • bohužel, neznáme analytickou formu
Region proximity (3) • region proximity – „datová“ vzdálenost dvou regionů • místo toho autoři navrhují aproximaci Xdxy jako kde fX, Y(x,y) je spojená hustota vzdáleností, tj. fX, Y(x,y) = fX (x) fY(y), nicméně X a Y jsou nezávislé náhodné proměnné, takže lze místo fX, Y použít f(x) (ta lze získat jednoduše nasamplováním z databáze)f(x)vlatně aproximuje původní • bx, by jsou jisté funkce, které umožňují použít různé aproximace (ortogonální, rovnoběžnou, diagonální a normalizovanou) • využití při pravděpodobnostním vyhledávání, jsou prohledány pouze takové datové regiony, které mají vzdálenost (proximity) ke koule dotazu vyšší než daná prahová hodnota
Semimetrické vyhledávání (1) • uvažujme rostoucí funkci s počátkem v 0 • libovolná taková funkce aplikovaná na podobnostní míru zachovává podobnostní uspořádání, tj. pokud ji použijeme k sekvenčnímu vzhodnocení, obdržíme stejný výsledek jako s původní mírou • pokud tato funkce bude konvexní, aplikací na metriku obdržíme funkci vzdálenosti, která bude vykazovatnižší vnitřní dimenzi (vyhledem k libovolné databázi) • bohužel tato nová míra může být pouze semimetrikou, tj. nemusí se zachovat trojúhelníková nerovnost
Semimetrické vyhledávání (2) • takto vzniklou semimetriku můžeme použít v libovolné MAM • tím, že vnitřní dimenze je nižší, je i vyhledávání rychlejší • na druhou stranu absence trojúhelníkové nerovnosti může vést k nekorektnímu filtrování a tedy ke ztrátě přesnosti výsledku • toto lze korigovat volbou modifikující funkce tak, aby její konvexita narušovala trojúhelníkovou nerovnost v dostatečně malé míře
Zdroje • Bustos and Navarro: Probabilistic proximity searching algorithms based on compact partitions, Journal of Discrete Algorithms 2(1):115-134, 2004 • Amato et al.: Region proximity in metric spaces and its use for approximate similarity search, ACM TODS 21(2):192-227, 2003 • Skopal et al.: Metric Indexing for the Vector Model in Text Retrieval, SPIRE 2004