J.Hozzová Motivácia Výber premenných PA081: Programování numerických r ^ _ o Extrakcia yA'POCľX.Vl premenných PCA 9. Metódy redukcií dimenzionality Isomap Variačně enkódery Aleš Křenek a Jana Hozzová jaro 2019 Dáta vyzerajú aj takto Cvs Alcohol Malic acid Alcality of Magne Total ŕ\sh ash sium phenols Flava No|rfla\^noid npjds phenols SfSSOitß Color cyanins intensity Hue 0D230/0D315 of diluted wines Proline 2 13.05 5.3 213 21,5 86 2.62 2.65 0.3 2.01 2.6 0.73 3.1 330 3 13.71 5.65 2,45 20,5 95 1.68 0.61 0,52 1.06 7.7 0.64 1.74 740 3 12.53 5.51 2,64 25 96 1.79 0.6 0,63 1,1 5 0.82 1.69 515 3 13.17 5.19 2 32 22 93 1.74 0.63 0,61 1.55 7.9 0.6 1.43 725 3 13.33 5.04 2,23 20 30 0.98 0.34 0.4 0.68 4.9 0.53 1.33 415 3 13.62 4.95 2 35 20 92 2 0.3 0,47 1.02 4.4 0.91 2.05 550 3 12.25 4.72 2,54 21 39 1.38 0.47 0,53 0,3 3,85 0.75 1.27 720 3 12.87 4.61 2,43 21,5 86 1.7 0.65 0,47 0.86 7,65 0.54 1.36 625 3 13.4 4.6 2 36 25 112 1.93 0.96 0 27 1.11 8.5 0.67 1.92 630 2 12.42 4.43 2,73 26,5 102 2.2 2.13 0,43 1.71 2,03 0.92 3.12 365 3 13.73 4.36 2 26 22,5 33 1.28 0.47 0 52 1.15 6 62 0.73 1.75 520 2 11.87 4.31 2,39 21 32 2.36 3.03 0,21 2.91 2.3 0.75 3.64 380 2 12.04 4.3 2,33 22 30 2.1 1.75 0,42 1.35 2.6 0.79 2.57 530 3 13.27 4.23 2 26 20 120 1.59 0.69 043 1.35 10.2 0.59 1.56 335 3 13.84 4.12 2,33 19,5 39 1.3 0.33 0,43 1.56 9,01 0.57 1.64 430 3 14.13 4.1 2,74 24,5 96 2.05 0.76 0 56 1.35 9.2 0.61 1.6 560 1 14.21 4.04 2,44 13,9 111 2.35 2.65 0.3 1.25 5,24 0.87 3.33 1080 1 14.22 3.99 2,51 13,2 123 3 3.04 0.2 2.03 5.1 0.89 3.53 760 1 13.24 3.98 2 29 17 5 103 2.64 2.63 0 32 1.66 4 36 0.82 3 680 3 13.4 3.91 2,43 23 102 1.3 0.75 0,43 1.41 7.3 0.7 1.56 750 3 13.08 3.9 2 36 21,5 113 1.41 1.39 034 1.14 9.4 0.57 1.33 550 3 12.25 3.88 2.2 13,5 112 1.38 0.73 0,29 1.14 3,21 0.65 2 355 2 12.7 3.87 2.4 23 101 2.33 2.55 0,43 1.95 2,57 1.19 3.13 463 2 13.05 3.36 2 32 22,5 35 1.65 1.59 0,61 1.62 4.3 0.84 2.01 515 1 13.41 3.84 2,12 13,3 90 2.45 2.63 0,27 1.48 4,23 0.91 3 1035 3 12.36 3.83 2 33 21 33 2.3 0.92 0.5 1.04 7 65 0.56 1.53 520 1 12.93 3.8 2,65 13,6 102 2.41 2.41 0,25 1.93 4.5 1.03 3.52 770 2 11.46 3.74 1,32 19,5 107 3.18 2.53 0,24 3.58 2.9 0.75 2.31 562 3 13.45 3.7 2.6 23 111 1.7 0.92 043 1.46 10 63 0.85 1.56 695 1 14.38 3.59 2,23 16 102 3.25 3.17 0,27 2.19 4.9 1.04 3.44 1065 PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Dimenzionalita dát ► dimenzie ako ► viacero premenných, ktoré patria spolu ► stĺpce v tabuľke ► koordináty N-dimenzionálneho priestoru ► dáta ako ► hodnoty premenných, ktoré patria spolu (jedno meranie, vlastnosti jedného objektu) ► riadky v tabuľke ► body v N-dimenzionálnom priestore Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Prekliatie dimenzionality ► dáta zbierame, aby sme z nich niečo zistili ► to ide blbo, keď má tabuľka 50 stĺpcov ► prekliatie dimenzionality ► čím viac dimenzií, tým exponenciálne viac dát potrebujeme ► pri vysokom počte dimenzií sú dáta riedke ► štatisticky významné závery s riedkymi dátami neurobíte Z toho vyplýva, že potrebujeme ► znížiť počet dimenzií ► ale zachovať podstatu dát (znalosti, vzory, vyvodené dôsledky) ► sa zbaviť časti informácií PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Redukcie dimenzionality dát Redukcia dimenzií ako ► zbavenie sa premenných, ktoré sú redundante a nepodstatné ► odstránenie niektoré stĺpce z tabuľky ► projekcia z originálneho, N-dimenzionálneho priestoru do redukovaného, M-dimenzionálneho priestoru, kde M < 9.5? (survived) 0.73 36% (died) 0.17 61% is sibsp > 2.5? PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery (died) (survived) 0.05 2% 0.89 2% Na čo je to dobré? ► umožňuje dáta vizualizovať Malic Alcality of Magne Total -lava Nonflavanoid ^roantho Color 0D230/0D315 Cvs Alcohol acid t\sh ash sium phenols noids phenols cyanins ntensity Hue of diluted wines Proline 2 13.05 5.8 2,13 21,5 86 2.62 2.65 0.3 2.01 2.6 0.73 3.1 330 3 13.71 5.65 2,45 20,5 95 1.68 0.61 0,52 1.06 7.7 0.64 1.74 740 3 12.53 5.51 264 25 96 1.79 0.6 0 63 1.1 5 0.82 1.69 515 3 13.17 5.19 2,32 22 93 1.74 0.63 0,61 1.55 7.9 0.6 1.43 725 3 13.83 5.04 2,23 20 30 0.98 0.34 0.4 0.68 4.9 0.53 1.33 415 3 13.62 4.95 2,35 20 92 2 0.3 0,47 1.02 4.4 0.91 2.05 550 3 12.25 4.72 2,54 21 39 1.38 0.47 0,53 0,3 3,85 0.75 1.27 720 3 12.87 4.61 2,43 21,5 86 1.7 0.65 0,47 0.86 7 65 0.54 1.86 625 3 13.4 4.6 2,36 25 112 1.98 0.96 0,27 1.11 3.5 0.67 1.92 630 2 12.42 4.43 2,73 26,5 102 2.2 2.13 0,43 1.71 2,03 0.92 3.12 365 3 13.73 4.36 2,26 22,5 38 1.28 0.47 0,52 1.15 6,62 0.73 1.75 520 2 11.87 4.31 2,39 21 32 2.36 3.03 0,21 2.91 2.3 0.75 3.64 330 2 12.04 4.3 2 33 22 30 2.1 1.75 0,42 1.35 2.6 0.79 2.57 530 3 13.27 4.23 2,26 20 120 1.59 0.69 0,43 1.35 10.2 0.59 1.56 835 3 13.84 4.12 2,33 19,5 39 1.3 0.33 0,43 1.56 9,01 0.57 1.64 430 3 14.13 4.1 2,74 24,5 96 2.05 0.76 0 56 1.35 9.2 0.61 1.6 560 1 14.21 4.04 2,44 13,9 111 2.35 2.65 0.3 1.25 5,24 0.87 3.33 1030 1 14.22 3.99 2 51 13 2 123 3 3.04 0.2 2.03 5.1 0.89 3.53 760 1 13.24 3.98 2,29 17,5 103 2.64 2.63 0,32 1.66 4,36 0.82 3 630 3 13.4 3.91 2,43 23 102 1.3 0.75 0,43 1.41 7.3 0.7 1.56 750 3 13.08 3.9 2 36 21,5 113 1.41 1.39 0 34 1.14 9.4 0.57 1.33 550 3 12.25 3.33 2.2 13,5 112 1.38 0.73 0,29 1.14 3,21 0.65 2 355 2 12.7 3.87 2.4 23 101 2.33 2.55 043 1.95 2,57 1.19 3.13 463 2 13.05 3.86 2,32 22,5 35 1.65 1.59 0,61 1.62 4.3 0.84 2.01 515 1 13.41 3.84 2,12 13,3 90 2.45 2.63 0,27 1.48 4,23 0.91 3 1035 3 12.36 3.83 2 33 21 88 2.3 0.92 0.5 1.04 7 65 0.56 1.58 520 1 12.93 3.8 2,65 13,6 102 2.41 2.41 0,25 1.93 4.5 1.03 3.52 770 2 11.46 3.74 1,82 19 5 107 3.18 2.53 0 24 3.58 2.9 0.75 2.81 562 3 13.45 3.7 2.6 23 111 1.7 0.92 0,43 1.46 10,68 0.85 1.56 695 1 14.33 3.59 2,23 16 102 3.25 3.17 0,27 2.19 4.9 1.04 3.44 1065 < □ ► < [31 ► ► < -E ► -E PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Na čo je to dobré? ► umožňuje dáta vizualizovať PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Na čo je to dobré? ► znižuje výpočetný čas: metadynamika ► znižuje množstvo dát na ukladanie/prenos ► zjednodušuje/umožňuje vyvodenie statisticky významných záverov z dát: autotuning, RNA-sekvencovanie ► umožňuje použiť algoritmy, ktoré nefungujú vôbec/dobre s vysokým počtom dimenzií ► znižuje riziko overfittingu ► znižuje množstvo šumu v dátach: RNA-sekvencovanie ► zvyšuje presnosť výsledkov PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Základná štatistika ► rozptyl (variance) 9.5? (survivecT) 0.73 36% (dieď) 0.17 61% is sibsp > 2.5? dáta (died) (survived) 0.05 2% 0.89 2% ► málo robustné, náchylné na overíitting PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery ^tephen Milborrow, https: //commons. wi ki medi a. org/wi ki /Fi 1 e: CART_tree_titanic_survivors.png « n>,ff - -= -f ^acv 13/42 Náhodný les ► rozhodovací strom vytvára vetvy, aby čo najlepšie rozdelil ^Fl is sex male? is age > 9.5? (s u rvi ve d) 0.73 36% (died) 0.17 61% is sibsp > 2.5? (died) (s u rvi ve d) 0.05 2% 0.89 2% dáta ► málo robustné, náchylné na overfitting ► viacero stromov: les ► jeden strom = podmnožina dát s podmnožinou premenných ► pri predikcii sa rozhodujú všetky stromy a ich výsledky sa "spriemerujú" PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery 1 Stephen Milborrow, https : //commons . wi ki medi a. org/wi ki / Fi 1 e: CART_tree_ti tani c_survi vo r s. png Jednoduchý príklad prežitie na Titanicu PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Komplexný príklad ■ Autotuning ► portabilita výkonu, napr. pri prechode na iné GPU ► jeden kód, viacero parametrov ► hodnoty parametrov na danom hw určujú výkon ► je ich veľa a navzájom sa ovplyvňujú PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Niekedy stromy nestačia ► veľmi riedke dáta ► iné než kolmé hrany závislostí znamenajú veľké stromy ► časové rady, dáta vo forme grafov, obrázky ► niekedy sú podstatné premenné ukryté medzi originálnymi dimenziami PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Extrakcia redukovaných dimenzií ► nové premenné/rysy/koordináty v redukovanom priestore ► pomerne presne popisujú dátovú sadu ► dajú sa spočítať z pôvodných premenných ► majú vysoký rozptyl, nízka kovariancia ► (niekedy) zachovávajú vlastnosti pôvodného priestoru (napr. vzdialenosti medzi bodmi) PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Druhy metód ► využívajú lineárne závislosti medzi premennými (PCA) ► zachovávajú vzdialenosti medzi bodmi v priestore (MDS, Isomap) ► aproximujú nelineárne závislosti ako vážený súčet lineárnych fitovaní (LLE) ► využívajú lokalitu dát pomocou spektrálnych metód (Spectral Embedding) ► využívajú rozloženie pravdepodobnosti medzi bodmi (t-SNE) ► využívajú skryté závislosti pomocou strojového učenia PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery PCA - princíp • • • • • • • • • • PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery PCA - princíp X2 • 1 1 1 1 1 • 1 1 • 1 1 1 ■ • 1 • 1 1 1 1 • 1 1 1 1 • 1 1 1 • 1 1 • 1 1 1 1 • PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery PCA - princíp PA081: Programování numerických výpočtů J.Hozzová #2 El Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery PCA - princíp • • 1 > * • C 1 í 1 w • w Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery PCA - princíp PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery PCA ■ Ako sa to spočíta? ► spočítame kovariačnú maticu ► nájdeme jej vlastné čísla a vlastné vektory ► vlastné vektory najvyšších vlastných čísel ukazujú najvýznamnejšie smery rozptylu premenných ► projekcia z originálneho priestoru do redukovaného priestoru PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery X'm = XW; m kde Wm je matica so stĺpcami vlastných vektorov kovariačnej matice PCA ■ Co to znamená? ► hľadáme smer najvyššieho rozptylu Variance along the line = al=pT.p= (Avf(Av) = vT(ATA)v = /Cv ► kde A sú naše dáta, v je hľadaný smer, p je projekcia na hľadaný smer ► hľadáme v také, aby v). T T . xx x y \ T T v x y yt cov(x. y) cov(y, x) a\ ► najvyššie vlastné číslo ~ veľkosť vektora v ► smer korešpondujúceho vlastného vektora ~ smer vektora v PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery 2https://towardsdatasciencexom/dimensionality-reduction-for-dumm part-2-3ble3490bdc9 25/42 Jednoduchý príklad odrody vína PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Komplexný príklad ■ Atómové náboje ► výpočet parciálnych atómových nábojov (prednáška Optimalizace) ► presné ale výpočetně náročné kvantové metódy ► aproximatívne ale rýchle empirické metódy ► systém lineárnych rovníc s parametrami ► trénovacia sada nábojov spočítaných kvantovkov ► hľadáme také hodnoty parametrov, ktoré vyústia v také isté hodnoty nábojov ► optimalizačný problém na maximalizáciu korelácie ► ako vyzerá optimalizovaný priestor? ► redukcia dimenzií za účelom vizualizácie PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery 27/42 Komplexný príklad - Atómové náboje PA081: Programování numerických výpočtů J.Hozzová Motivácia Extrakcia premenných Komplexný príklad ■ MD trajektorie ► trajektorie molekulovej dynamiky ► v každom časovom bode koordináty každého atómu ► chaotický systém, ako porovnám dve trajektorie? ► esenciálne koordináty 3 ► vlastné hodnoty a vektory kovariačnej matice: PCA ► porovnávali sme vektory vlastných čísel PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery JAmadei, A., Linssen, A. B., Berendsen, H. J. (1993). Essential dynamics of proteins. Proteins, 17(4), 412-425. https://doi.org/10.1002/prot.340170408 □ Komplexný príklad - MD trajektorie PA081: Programování numerických výpočtů J.Hozzová čas vs. fluktuácie v pohybe (displacement) ■3.0 100.0 300,0 500.0 700.0 900. C -3.0 100.0 300 O 500.0 i •-T - eigenvectors 700.0 aco.o Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery 3.0 2.0 1.0 -2.0 -3.0 — eigenvectof 20 -1.0 - 100-0 300.0 500.0 700.0 tme (ps) 900.0 3.0 1.0 o.c -1,0 •2.0 ■3.0 - eigenvector 50 100.0 300. G 500.0 700,0 tíme (ps) 900.0 Komplexný príklad ■ MD trajektorie pohyb vs. pravděpodobnostně rozloženie v čase 5.0 4.0 3.0 -2.0 -1,0 - 0.0 -20 5.0 4.0 3.0 2.0 1.0 0.0 Fäigenveclor t 5.0 4.0 3.0 2.0 I-1.0 l ■1,0 1.0 0.0 2.0 -a.0 zoo - aigenvector^O 1ä.Q 10.11 5.0 h -1.0 0.0 1.0 dísplacemení (nm) 0.0 2.0 -2.0 elgen vectoŕ £ 2.0 eigativeciorSO -1.0 0,0 1.0 dísplacement (nm) 2.0 PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery 31/42 PA081: Multidimensional scaling Programování numerických výpočtů J.Hozzová Motivácia ► dáta s nelineárnymi vzťahmi medzi premennými ► na vstupe je matica skutočných vzdialeností medzi bodmi ► na výstupe je matica vzdialeností medzi bodmi v redukovanom priestore ► algoritmus minimalizuje stresovú maticu, ktorá reprezentuje rozdiel medzi vstupnou a výstupnou maticou ► zachováva vzdialenosti medzi bodmi Extrakcia premenných v originálnom priestore Isomap Variačně enkódery Isomap ► rozšírenie MDS ► poznáme len vzdialenosti medzi susednými bodmi ► ostatné sa dopočítajú ako geodetická vzdialenosť ► euklidovská: vzdialenosť vzdušnou čiarou ► geodetická: dĺžka najkratšej cesty PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Isomap algoritmus ► nájdi susedov pre každý bod (K-najbližších, pevný polomer) ► vytvor graf susedov (spojené uzly sú susedia, dĺžka hrany je euklidovská vzdialenosť medzi nimi) ► pomocou algoritmu Floyd-Warshall spočítaj geodetické vzdialenosti medzi všetkými bodmi ► pomocou MDS spočítaj projekcie do redukovaných dimenzií PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Jednoduchý príklad S-krivka PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Komplexný príklad ■ Metadynamika ► molekulová dynamika, kde molekuly pošťuchujeme správnym smerom ► ktorý smer je ten správny? ► supermarket, vozíky a smrad ► v priestore s veľkým počtom dimenzií ľahko smradu utečiem ► redukcie dimenzionality s cieľom nájsť správny smer pohybu PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery Komplexný príklad - Metadynamika crowns boat-chairs boats \ PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery boats i >. 37/42 Variačně enkódery PA081: Programování numerických výpočtů J.Hozzová Input Ideally they are identical. X ä; x' Reconstructed input Bottleneck! An compressed low dimensional representation of the input. Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery 4 https://towardsdatasciencexom/dimensionality-reduction-for-machine-Iearning-80a46c2ebb7e i *> 94 SIMLR 110 o -110- -20-, 2, ■16- VASC ■2-cell g * 4-cell I * 8-cell '16-cell * Blast Dimension 1 PA081: Programování numerických výpočtů J.Hozzová -110 98 -10 16 Motivácia Výber premenných Extrakcia premenných B o V) CO m 284-, 99- V -86- —r~ -118 59 243-, -I'M -, -265-236 -300 6n 2H -20 260 0 110l OH * *. 1-110 1 2 -110 0 -22-, H -I -20-110 -1 ■ Zygote • 2-cell * 4-cell » Blast o -i 17 PCA Isomap Variačně enkódery ► bunky rôzneho štádia vývinu ► PCA, ZIFA, VASC ok ► t-SNE, SIMLR nok Komplexný príklad - RNA sekvencie PA081: Programování numerických výpočtů J.Hozzová D 115-, C (D CL 207-, 2H: -115-1-1-1 -165 -138 42 222 -128 17 4n H -1 -2- 162 • 57--4- 0 -, -65H 3 -56 16-, -24 -20- :1, £ 56 -20 -1 18 ■2338 Kera 2339 * NPC *K562 ► GW16 *BJ * GW21 ahl60 GW21+3 « hiPSC ► 11 rôznych druhov buniek ► PCA, ZIFA nok ► SIMLR klustery obsahujú aj bunky iného typu ► VASC osem klusterov, neurónové bunky (GW*) nerozlíšené Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery 41/42 Komplexný príklad - RNA sekvencie j* >> ÔT 'N "O o o 285-, 84- ' ^ -117- 19-i -104 16 -25 6n 2- 136 -19 -I -2 17 40-i 6- -r 2 -, -28 7 22-, 4- 37 —I -14 39 - •A ■ 2j 2 Serum_1 2j~3 Serum_2 2i~4 Serum_3 t2í-5 4a2i_2 «a2i 3 17 n 17 ► kmeňové bunky v troch rôznych prostrediach (sérum, *2i) ► tri rôzne zmesi ► PCA odlíšila prostredia ale nerozlíšila zmesi ► ZIFA ok, ale zmiešala 2i_2 s a2i ► SIMLR ok, ale zmiešala niektoré 2i a a2i ► t-SNE, VASCok PA081: Programování numerických výpočtů J.Hozzová Motivácia Výber premenných Extrakcia premenných PCA Isomap Variačně enkódery 42/42