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

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

10. června 2010 Paralelní výpočet SVD s aplikacemi pro vyhledávání informací Petr Kotas, Vít Vondrák, Pavel Praks Fakulta elektrotechniky a Informatiky.

Podobné prezentace


Prezentace na téma: "10. června 2010 Paralelní výpočet SVD s aplikacemi pro vyhledávání informací Petr Kotas, Vít Vondrák, Pavel Praks Fakulta elektrotechniky a Informatiky."— Transkript prezentace:

1 10. června 2010 Paralelní výpočet SVD s aplikacemi pro vyhledávání informací Petr Kotas, Vít Vondrák, Pavel Praks Fakulta elektrotechniky a Informatiky VŠB - TUO

2 10. června 2010 Motivace • Proč se problémem SVD a vlastních čísel zabývat – Řešení homogeních lineárních rovnic – Využití při analýze DNA – Registrace obrazu – Komprimace dat – Statistika – Vyhledávače

3 10. června 2010 Obsah • Úvod do SVD – Výpočet a problémy při něm vznikající – Návrh řešení → paralelizace • Výpočet SVD – Bidiagonalizace – Výpočet singulárních čísel – Výpočet singulárních vektorů – Sestavení rozkladu • Aplikace na multimediální data

4 10. června 2010 Úvod do SVD • Výpočet je velmi náročný na HW – Pro plné matice je SVD vysoce paměťově náročné – Značná náročnost na floating point operace (kvůli přesnosti) • Iterační charakter → větší náročnost než jiné rozklady • Praktická implementace → rozdělení problému – Bidiagonalizace – Výpočet singulárních čísel z bidiagonální matice – Výpočet singulárních vektorů

5 10. června 2010 Výpočet SVD - Bidiagonalizace • Praktická implementace – Využití Householderových zrcadlení • Urychlení výpočtu • Numerická stabilita – Householderova matice Ortogonální tranformace, redukující dimenzi problému.

6 10. června 2010 Výpočet SVD - Bidiagonalizace

7 10. června 2010 Výpočet SVD - Bidiagonalizace

8 10. června 2010 Výpočet SVD - Bidiagonalizace

9 10. června 2010 Výpočet SVD - Bidiagonalizace

10 10. června 2010 Výpočet SVD - Bidiagonalizace

11 10. června 2010 Výpočet SVD - Bidiagonalizace

12 10. června 2010 Výpočet SVD - Bidiagonalizace

13 10. června 2010 Výpočet SVD - Bidiagonalizace

14 10. června 2010 Výpočet SVD – Bidiagonalizace : Distribuce

15 10. června 2010 Výpočet SVD – Paralelní bidiagonalizace • Distribuovaný výpočet – V každém kroku se spočítá Householderův vektor – Houselderoův vektor se rozdistribuuje na každý uzel – Každý uzel dále elimuje prvky jemu přiřazené

16 10. června 2010 Výpočet SVD – Bidiagonalizace : Škálovatelnost • Největší problém —Dimenze x (1.2GB) —Doba běhu 1(h)

17 10. června 2010 Výpočet SVD – Výpočet singulárních čísel • Diagonalizace matice – Pomocí Givensonových rotací – Iterační proces – Řád konvergence je O(N 2 )

18 10. června 2010 Výpočet SVD – Výpočet singulárních čísel • Vynulování prvního prvku bidiagonály

19 10. června 2010 Výpočet SVD – Výpočet singulárních čísel • Vynulování prvního prvku bidiagonály • Vynulování nově vzniklého prvku

20 10. června 2010 Výpočet SVD – Výpočet singulárních čísel • Vynulování prvního prvku bidiagonály • Vynulování nově vzniklého prvku • Opravení prvního řádku

21 10. června 2010 Výpočet SVD – Výpočet singulárních čísel • Vynulování prvního prvku bidiagonály • Vynulování nově vzniklého prvku • Opravení prvního řádku • Na třetím řádku se objeví prvek navíc

22 10. června 2010 Výpočet SVD – Výpočet singulárních čísel • Vynulování prvního prvku bidiagonály • Vynulování nově vzniklého prvku • Opravení prvního řádku • Na třetím řádku se objeví prvek navíc • Opravení druhého řádku

23 10. června 2010 Výpočet SVD – Výpočet singulárních čísel • Vynulování prvního prvku bidiagonály • Vynulování nově vzniklého prvku • Opravení prvního řádku • Na třetím řádku se objeví prvek navíc • Opravení druhého řádku • Vynulování posledního prvku navíc

24 10. června 2010 Výpočet SVD – Výpočet singulárních čísel • Diagonalizace – Ukončovací podmínka • Největší problém – Dimence x – Doba běhu (s) – Počet iterací Důkaz lze najít v G.W.Stewart – Matrix algorithms vol 2

25 10. června 2010 Výpočet SVD – Singulární vektory • Sestavení matic U a V (ortogonálních tranformací) – Matice a jsou sestaveny postupnou akumulací z Householderových vektorů • Potřebuje – Sestavení matic a je proces řešení třídiagonálních soustav – Výsledné matice U a V vzniknou pronásobením přechozích

26 10. června 2010 Porovnání s Matlabem – sekvenční kód

27 10. června 2010 Závěr • Existující implementace – ScaLapack, Lapack, MatLab, ProPack... • Proč se zabývat novou implementací – Výpočet úplného singulárního rozkladu pro plné velké matice – Licence paralelního MatLabu je drahá – Většina stávajících implentací je pro řídké matice – Stávající řešení se povětšinou zaměřují na největší vlastní čísla • Budoucnost – Akcelerace výpočtu pomocí „kompaktní reprezentace“ Householderovy tranformace – Další zvětšení dimenze řešitelných problémů – Možnost volby části spektra pro výpočet

28 10. června 2010 Aplikace na multimediální data • Hledání podobnosti dvou digitálních obrazů – Problém velikost • Aproximace matic pomocí SVD (LSI) • Umožní redukci dimenze původní datové matice řádově na desetinu – Matematický popis (pro úplnost, zde se jím nezabýváme) • MPEG-7 • Rozdělění histogramu • Frekvenční odezva na waveletové filtry

29 10. června 2010 Aplikace na multimediální data : Ukázka

30 10. června 2010 Aplikace na multimediální data : Ukázka

31 10. června 2010 Děkuji za pozornost. Dotazy?


Stáhnout ppt "10. června 2010 Paralelní výpočet SVD s aplikacemi pro vyhledávání informací Petr Kotas, Vít Vondrák, Pavel Praks Fakulta elektrotechniky a Informatiky."

Podobné prezentace


Reklamy Google