doc. Ing. Jan Platoš, Ph.D. Akademický rok 2017/18 Kancelář: EA432 Konzultační hodiny: Úterý 14:00-15:00

AKS

Přednášky

  1. Základní informace
  2. Teorie pravděpodobnosti a teorie informace
  3. Kodování pomocí kódu proměnné délky
  4. Statistické kódování, část 1
  5. Statistické kódování, část 2 (od slidu 16)
  6. Slovníkové metody, část 1
  7. Slovníkové metody, část 2 (od slidu 14)
  8. Transformace pro kompresi dat
  9. Komprese multimediálních dat
  10. Podobnost pomocí komprese

Cvičení

  1. Histogram pravděpodobností symbolů (12.02.2018) Zobrazit/Skýt
    1. Spočítejte pravděpodobnost jednotlivých symbolů v souboru.
    2. Proveďte toto pro soubory v češtině, angličtně, němčině, francouzštině a maďarštině.
    3. Vypočtěnte entropii v jednotlivých souborech (tedy za jazyky). Výsledek v jednotlivých jazycích při převodu na malá písmena a vynulování počtů symbolů pro netisknutelné znaky je následující Zobrazit/Skýt
    4. Czech     5.064981440612807
      English   4.428868549839281
      French    4.557144353849732
      German    4.5912083766299165
      Hungarian 4.827450750951823
    5. Výsledné histogramy pravděpodobností (pravděpodobnostní funkci) vyneste do jednoho grafu za všechny soubory pro porovnání (např. v Excelu). Zobrazit/Skýt
    6. Porovnejte histogramy pro jednotlivé jazyky pomocí Manhatana distance. Výsledné porovnání by mělo dopadnou takto: Zobrazit/Skýt
    7.            CZ      EN      FR      GE      HU   
         CZ    0.0000  0.5440  0.5250  0.6410  0.4735 
         EN    0.5440  0.0000  0.3571  0.3458  0.5622 
         FR    0.5250  0.3571  0.0000  0.3739  0.5830 
         GE    0.6410  0.3458  0.3739  0.0000  0.6122 
         HU    0.4735  0.5622  0.5830  0.6122  0.0000 
  2. Kódování pomocí kódu proměnných délek (19.02.2018) - Hodnocené cvičení!!! Zobrazit/Skýt
    1. Implementujte Eliasovo kódování gamma a dekódování.
    2. Implementujte Fibonacciho kódování a dekódování.
    3. Pro implementaci nemusíte generovat bity do souboru, stačí do řetězce
    4. Pro oveření funčknosti využijte následující datasety:
      1. 64k 8-bitových čísel
        1. Uniformní rozdělení data a histogram. Entropie=8.00.
        2. Normální rozdělení se středem v 127 a std. odchylkou 16 data a histogram. Entropie=6.05.
        3. Exponencíální rozdělení se parametrem 16 data a histogram. Entropie=5.44.
      2. 128k 16-bitových čísel
        1. Uniformní rozdělení data a histogram. Entropie=15.59.
        2. Normální rozdělení se středem v 2^15 a std. odchylkou 2^11 data a histogram. Entropie=12.97.
        3. Exponencíální rozdělení se parametrem 32 data a histogram. Entropie=6.44.
      3. Výsledné bitové délky a průměrný počet bitů na číslo: Zobrazit/Skýt
      4. uniform_8.txt
        Alpha      =    8398448, BitsPerSymbol =   128.15
        Beta       =     461088, BitsPerSymbol =     7.04
        Gamma      =     854638, BitsPerSymbol =    13.04
        Delta      =     748293, BitsPerSymbol =    11.42
        Fibonacci  =     699069, BitsPerSymbol =    10.67
        
        gausian_8.txt
        Alpha      =    8348667, BitsPerSymbol =   127.39
        Beta       =     491300, BitsPerSymbol =     7.50
        Gamma      =     915409, BitsPerSymbol =    13.97
        Delta      =     784338, BitsPerSymbol =    11.97
        Fibonacci  =     730716, BitsPerSymbol =    11.15
        
        exponential_8.txt
        Alpha      =    1080967, BitsPerSymbol =    16.49
        Beta       =     260218, BitsPerSymbol =     3.97
        Gamma      =     442960, BitsPerSymbol =     6.76
        Delta      =     432928, BitsPerSymbol =     6.61
        Fibonacci  =     404520, BitsPerSymbol =     6.17
        
        uniform_16.txt
        Alpha      = 4285822670, BitsPerSymbol = 32698.23
        Beta       =    1965552, BitsPerSymbol =    15.00
        Gamma      =    3799997, BitsPerSymbol =    28.99
        Delta      =    2816208, BitsPerSymbol =    21.49
        Fibonacci  =    2902780, BitsPerSymbol =    22.15
        
        gausian_16.txt
        Alpha      = 4294867323, BitsPerSymbol = 32767.24
        Beta       =    2031660, BitsPerSymbol =    15.50
        Gamma      =    3932231, BitsPerSymbol =    30.00
        Delta      =    2883655, BitsPerSymbol =    22.00
        Fibonacci  =    3011773, BitsPerSymbol =    22.98
        
        exponential_16.txt
        Alpha      =    4265097, BitsPerSymbol =    32.54
        Beta       =     634972, BitsPerSymbol =     4.84
        Gamma      =    1123417, BitsPerSymbol =     8.57
        Delta      =    1057291, BitsPerSymbol =     8.07
        Fibonacci  =     973968, BitsPerSymbol =     7.43
  3. Huffmanovo kódování (26.2.2018) Zobrazit/Skýt
    1. Nad soubory ze cvičení 1 zjistěte statistiku výskytu symbolů.
    2. Huffmaným algoritmem sestavte kodovací strom, a soubor zakódujte.
    3. Pomocí stejného stromu soubor dekódujte.
    4. Porovnejte dosaženou kompresi s entropií.
    5. Opět není nutné pracovat se soubory, ale kódování může být provedeno do pole znaků 0,1
    6. Výsledky by měly vypadat přibližně takto: Zobrazit/Skýt
    7. File           Symbols    FileSize    Enc.Size   Tree Size  Total Size         bps     Entropy
                                 [bytes]      [bits]      [bits]      [bits]      [bits]      [bits]
      ----------------------------------------------------------------------------------------------
      czech.txt          114      150849      788920        1139      790059       5.230     (5.206)
      english.txt         91      150266      710481         909      711390       4.728     (4.703)
      french.txt         102      150767      759448        1019      760467       5.037     (4.995)
      german.txt         100      232542     1136638         999     1137637       4.888     (4.858)
      hungarian.txt      113      214005     1067150        1129     1068279       4.987     (4.967)
      
      bps - average bits per symbol (comparable to entropy)
  4. Statistický model textu N-tého řádu (5.3.2018) - Hodnocené cvičení!!! Zobrazit/Skýt
    1. Nad soubory ze cvičení 1 zjistěte statistiku výskytu symbolů.
    2. Vytvořte model pro daný soubor pro N-tý stupeň kontextového modelování.
    3. Vypočtěte délku výstupního souboru v bitech (využijte entropie k-tého řádu).
    4. Vypočtete velikost modelu jako počet uzlů.
    5. Pro N zvolte 1, 2, 3, (4, 5).
    6. Výsledky by měly vypadat přibližně takto: Zobrazit/Skýt
    7. File           Order Node Count   Entropy
      -----------------------------------------
      czech.txt        0          111      5.07
      czech.txt        1         2232      3.86
      czech.txt        2        13958      2.76
      czech.txt        3        46554      1.79
      czech.txt        4       102994      1.10
      czech.txt        5       178584      0.70
      -----------------------------------------
      english.txt      0           88      4.65
      english.txt      1         1539      3.51
      english.txt      2         9262      2.50
      english.txt      3        31305      1.83
      english.txt      4        73743      1.33
      english.txt      5       137318      0.96
      -----------------------------------------
      french.txt       0           99      4.91
      french.txt       1         1715      3.57
      french.txt       2         9931      2.59
      french.txt       3        32755      1.82
      french.txt       4        76065      1.26
      french.txt       5       140832      0.86
      -----------------------------------------
      german.txt       0           94      4.73
      german.txt       1         1839      3.53
      german.txt       2        11866      2.66
      german.txt       3        42295      1.99
      german.txt       4       104002      1.45
      german.txt       5       200043      1.05
      -----------------------------------------
      hungarian.txt    0          108      4.82
      hungarian.txt    1         2171      3.89
      hungarian.txt    2        15482      3.04
      hungarian.txt    3        56945      2.11
      hungarian.txt    4       134775      1.36
      hungarian.txt    5       245590      0.86
  5. Slovníková komprese LZ77 (12.3.2018) - Hodnocené cvičení!!! Zobrazit/Skýt
    1. Soubory ze cvičení 1 zkomprimnujte metodou LZ77 nebo LZSS.
    2. Vyzkoušejte několik velikostí oken (4kB, 16kB, 32kB) a délek nezakódované části (16, 32, 64).
    3. Vypočtěte délku výstupního souboru v bitech.
    4. Opět není nutné pracovat se soubory, ale kódování může být provedeno do pole objektů nebo bitů
    5. Výsledky pro LZ77 by měly vypadat přibližně takto: Zobrazit/Skýt
    6. File           Triplets    FileSize  WindowSize   Max.match    Enc.Size         bps
      -----------------------------------------------------------------------------------
      czech.txt         28735      150849        4096          16      689640       4.572
      czech.txt         23979      150849       16384          32      647433       4.292
      czech.txt         22411      150849       32768          64      649919       4.308
      -----------------------------------------------------------------------------------
      english.txt       28546      150266        4096          16      685104       4.559
      english.txt       23701      150266       16384          32      639927       4.259
      english.txt       21646      150266       32768          64      627734       4.177
      -----------------------------------------------------------------------------------
      french.txt        28202      150767        4096          16      676848       4.489
      french.txt        23010      150767       16384          32      621270       4.121
      french.txt        21429      150767       32768          64      621441       4.122
      -----------------------------------------------------------------------------------
      german.txt        44041      232542        4096          16     1056984       4.545
      german.txt        36625      232542       16384          32      988875       4.252
      german.txt        34117      232542       32768          64      989393       4.255
      -----------------------------------------------------------------------------------
      hungarian.txt     44711      214005        4096          16     1073064       5.014
      hungarian.txt     37368      214005       16384          32     1008936       4.715
      hungarian.txt     34750      214005       32768          64     1007750       4.709
  6. Slovníková komprese LZW (19.3.2018) Zobrazit/Skýt
    1. Soubory ze cvičení 1 zkomprimujte metodou LZW.
    2. Vyzkoušejte několik velikostí slovníku (4kB, 16kB, 32kB).
    3. Vypočtěte délku výstupního souboru v bitech.
    4. Opět není nutné pracovat se soubory, ale kódování může být provedeno do pole objektů nebo bitů
    5. Výsledky pro LZW by měly vypadat přibližně takto (vysledky nejsou přesné, není započten seznam použitých symbolů): Zobrazit/Skýt
    6. File           Phrases     FileSize  WindowSize    Enc.Size         bps
      -----------------------------------------------------------------------
      czech.txt         57169      150849        4096      686028       4.548
      czech.txt         44034      150849       16384      616476       4.087
      czech.txt         38887      150849       32768      583305       3.867
      -----------------------------------------------------------------------
      english.txt       54679      150266        4096      656148       4.367
      english.txt       42546      150266       16384      595644       3.964
      english.txt       38111      150266       32768      571665       3.804
      -----------------------------------------------------------------------
      french.txt        55387      150767        4096      664644       4.408
      french.txt        42776      150767       16384      598864       3.972
      french.txt        37799      150767       32768      566985       3.761
      -----------------------------------------------------------------------
      german.txt        83491      232542        4096     1001892       4.308
      german.txt        64158      232542       16384      898212       3.863
      german.txt        58229      232542       32768      873435       3.756
      -----------------------------------------------------------------------
      hungarian.txt     83300      214005        4096      999600       4.671
      hungarian.txt     64695      214005       16384      905730       4.232
      hungarian.txt     58547      214005       32768      878205       4.104
  7. Burrows-Wheelerova transformace (26.3.2018) - Hodnocené cvičení!!! Zobrazit/Skýt
    1. Soubory ze cvičení 1 transformujte metodou BWT.
    2. Velikost bloku nastavte tak, aby se do něj vlezl celý soubor.
    3. Na výsledek aplikujte metodu Move-to-Front.
    4. Vypočtěte entropii před a po transformacích.
    5. Výsledky by měly vypadat přibližně takto: Zobrazit/Skýt
    6. File                Before      After
        -------------------------------------
        czech.txt            5.206      2.860
        english.txt          4.703      2.726
        french.txt           4.995      2.634
        german.txt           4.858      2.744
        hungarian.txt        4.967      3.017
  8. Měření podobnosti pomocí komprese (09.4.2018) - Hodnocené cvičení!!! Zobrazit/Skýt
    1. Vytvořte algoritmus pro FCD porovnání dokumentů.
    2. V souboru vždy odstraňte interpunkci a převeďte velikost písmen na malé.
    3. Slovník vytvořte ze slov pomocí LZW přístupu tvorby frází.
    4. Vypočtěte vzájemnou podobnost mezi dokumenty
    5. Data jsou k dispozici zde
    6. Výsledky by měly vypadat přibližně takto: Zobrazit/Skýt
    7.       |   000   010   020   030   040   050   060   070   080   090
      -------------------------------------------------------------------
         000|  0.00  0.28  0.39  0.47  0.57  0.66  0.72  0.78  0.86  0.92
         010|  0.27  0.00  0.44  0.56  0.59  0.66  0.74  0.79  0.87  0.92
         020|  0.38  0.43  0.00  0.58  0.65  0.70  0.77  0.81  0.88  0.93
         030|  0.44  0.54  0.57  0.00  0.68  0.74  0.78  0.82  0.87  0.93
         040|  0.53  0.57  0.63  0.67  0.00  0.75  0.80  0.84  0.89  0.93
         050|  0.62  0.63  0.68  0.73  0.75  0.00  0.82  0.84  0.90  0.92
         060|  0.69  0.72  0.75  0.76  0.79  0.82  0.00  0.87  0.90  0.94
         070|  0.76  0.77  0.79  0.81  0.84  0.84  0.87  0.00  0.90  0.94
         080|  0.84  0.85  0.86  0.86  0.88  0.89  0.90  0.90  0.00  0.95
         090|  0.90  0.91  0.92  0.92  0.92  0.92  0.93  0.93  0.95  0.00

Projekty

V rámci projektů je třeba ke každému tématu vypracovat prezentaci shrnujícíc vlastní práci, provedené experimenty, a dodat zdrojové kódy, data a prezentaci. Rozsah prezentace není definován, ale musí reprezentovat celkovou práci, za kterou autor bude hodnocen. Používáte-li další zdroje jako jsou články a cizí prezentace, dodejte je jako součást odevzdávaného díla.

  1. Dynamic Markov Coding (DMC) Zobrazit/Skýt
    1. Cílem je prostudovat metodu DMC a otestovat tuto metodu v praxi.
    2. Metoda je popsána v článku.
    3. Otestování by mělo být provedeno nad vhodnými daty a porovnáno s dalšími metodami.
  2. Context Tree Weighting (CTW) Zobrazit/Skýt
    1. Cílem je prostudovat metodu CTW a otestovat tuto metodu v praxi.
    2. Metoda je popsána v článku.
    3. Otestování by mělo být provedeno nad vhodnými daty a porovnáno s dalšími metodami.
  3. Fixed Order Models (FOM) Zobrazit/Skýt
    1. Cílem je prostudovat metodu FOM a její varianty a otestovat tuto metodu v praxi.
    2. Metoda je popsána na této stránce a v článcích Matta Mahoneyho .
    3. Otestování by mělo být provedeno nad vhodnými daty a porovnáno s dalšími metodami.
  4. Context Mixing (CM) Zobrazit/Skýt
    1. Cílem je prostudovat metodu CM a její varianty a otestovat tuto metodu v praxi.
    2. Metoda je popsána na této stránce a v článcích Matta Mahoneyho ke kompresoru PAQ.
    3. Otestování by mělo být provedeno nad vhodnými daty a porovnáno s dalšími metodami.
  5. Lempel Ziv Markov Algorithm (LZMA) Zobrazit/Skýt
    1. Cílem je prostudovat metodu LZMA a otestovat tuto metodu v praxi.
    2. Metoda je popsána na této stránce a této stránce.
    3. Otestování by mělo být provedeno nad vhodnými daty a porovnáno s dalšími metodami.
  6. Multiple Huffman Table Zobrazit/Skýt
    1. Cílem je prostudovat metodu MHT a otestovat tuto metodu v praxi.
    2. Metoda je popsána v tomto článku a ve zdrojovém kódu BZIP2.
    3. Otestování by mělo být provedeno nad vhodnými daty a porovnáno s dalšími metodami.
  7. K2-tree binary table compression (Michal Vašinek) Zobrazit/Skýt
    1. The objective is to study the K2-tree method and test this method in practice.
    2. The method is described in paper.
    3. Testing should be done over experimental data. Each line consists of a series of "0"s and "1"s. Table is of NxN dimension, where N=4181 and each line contains "1" at least once. There is 15,163 "1"s in the bitmap.
    4. The binary size representation: 17,484,942 bits. The best representation developed by me: 182,149 bits. or 12.016 bits per "1".
  8. RLE based binary table compression (Michal Vašinek) Zobrazit/Skýt
    1. The objective is to encode binary table data by RLE to encode runs of "0"s followed by Huffman coding of these run values.
    2. RLE should be restricted on maximal length of runs of l=64,128,256,512,1024,2048 and 4181, 8362.
    3. Find the optimal l value.
    4. Testing should be done over experimental data. Each line consists of a series of "0"s and "1"s. Table is of NxN dimension, where N=4181 and each line contains "1" at least once. There is 15,163 "1"s in the bitmap.
    5. The binary size representation: 17,484,942 bits. The best representation developed by me: 182,149 bits. or 12.016 bits per "1".
  9. Parameter-less binary table compression (Michal Vašinek) Zobrazit/Skýt
    1. The objective is to study and encode the parameter-less model described in paper (chapters 3 and 4)
    2. Testing should be done over experimental data. Each line consists of a series of "0"s and "1"s. Table is of NxN dimension, where N=4181 and each line contains "1" at least once. There is 15,163 "1"s in the bitmap.
    3. The binary size representation: 17,484,942 bits. The best representation developed by me: 182,149 bits. or 12.016 bits per "1".
  10. Binary table compression (Michal Vašinek) Zobrazit/Skýt
    1. The objective is to design your own non-trivial algorithm for compression of binary tables and test this method in practice.
    2. Student should discuss the proposed design of an algorithm with a lecturer.
    3. Testing should be done over experimental data. Each line consists of a series of "0"s and "1"s. Table is of NxN dimension, where N=4181 and each line contains "1" at least once. There is 15,163 "1"s in the bitmap.
    4. The binary size representation: 17,484,942 bits. The best representation developed by me: 182,149 bits. or 12.016 bits per "1".
  11. Video kodek AV1 Zobrazit/Skýt
    1. Popište kodek AV1 včetně jeho kompresních postupů.
    2. Proveďte porovnání výstupů algoritmu ve srovnání se stávajícími metodami.
    3. Čerpejte z dostupných zdrojů, není třeba vlastnoručně kódvat videa.
  12. Algoritmus Re-Pair Zobrazit/Skýt
    1. Nastudujte algoritmus Re-Pair a jeho praktickou variantu popsanou v článku.
    2. Otestujte vlastnosti algoritmu na vybraných soubrech.

MAD3

Přednášky

  1. Základní informace
  2. Metody pro výběr atributů
  3. Rozhodovací stromy a pravidlové systémy
  4. Pravděpodobnostní klasifikace a logistická regrese
  5. Support Vector Machines
  6. Neural networks
  7. Classification Assessment, Regression, Advanced Comcepts, Ensembles

Cvičení

  1. Výběr atributů (9.10.2017) Zobrazit/Skýt
    1. Implementace ohodnocení atributů metodou Gini index a Entropie.
    2. Ověření těchto metrik nad datovou sadou.
    3. Výsledky pro sample.csv:
    4. G(col0=a) = 0
      G(col0=b) = 0,5
      G(col0=c) = 0,375
      G(col0) = 0,2916667
      G(col1=x) = 0,4444444
      G(col1=y) = 0,4444444
      G(col1) = 0,4444444
      E(col0=a) = 0
      E(col0=b) = 0,6931472
      E(col0=c) = 0,5623351
      E(col0) = 0,4184941
      E(col1=x) = 0,6365142
      E(col1=y) = 0,6365142
      E(col1) = 0,6365142
  2. Rozhodovací stromy (16.10.2017) Zobrazit/Skýt
    1. Klasifkace pomocí rozhodovacích stromů, nastavení, varianty.
    2. Otestování nad datovou sadou Sample a IRIS.
    3. Výsledky nad sample.csv
    4. Attr[0]=a
        Yes:   Class=0
        No:    Attr[0]=b
          Yes:     Attr[1]=x
            Yes:       Class=0
            No:        Class=1
          No:      Attr[1]=y
            Yes:       Class=0
            No:        Class=1
      
    5. Výsledky nad iris.csv
    6. Attr[3]<=0.6
        Yes:   Class=0
        No:    Attr[3]<=1.7
          Yes:     Attr[2]<=4.9
            Yes:       Attr[3]<=1.6
              Yes:         Class=1
              No:          Class=2
            No:        Attr[3]<=1.5
              Yes:         Class=2
              No:          Attr[0]<=6.7
                Yes:           Class=1
                No:            Class=2
          No:      Attr[2]<=4.8
            Yes:       Attr[0]<=5.9
              Yes:         Class=1
              No:          Class=2
            No:        Class=2
  3. Pravděpodobnostní klasifikace (23.10.2017) Zobrazit/Skýt
    1. Klasifkace pomocí Naiviního Bayesovského přístupu.
    2. Otestování nad datovou sadou - pro každou kombinaci vstupních atributů by se měly vypsat pravděpodobnosti jednotlivých tříd.
    3. Výsledky nad sample.csv a Alpha=0.00001
    4. a,x
      Prob(0) = 1,43932, Prob(1) = 0,00003
      a,y
      Prob(0) = 0,23990, Prob(1) = 0,00002
      b,x
      Prob(0) = 0,71967, Prob(1) = 1,38229
      b,y
      Prob(0) = 0,11995, Prob(1) = 0,92154
      c,x
      Prob(0) = 0,35985, Prob(1) = 2,07342
      c,y
      Prob(0) = 0,05998, Prob(1) = 1,38229
  4. Support Vector Machines (30.10.2017) Zobrazit/Skýt
    1. Experimentování s SVM pomocí appletu na stránkách autorů.
    2. Analýza dat v programu WEKA s LibLinear a LibSVM nad datasety IRIS a Diabetes.
  5. Neural Networks Zobrazit/Skýt
    1. Implementace jednoduchého perceptronu.
    2. Analýza linárně separovatelného případu - Dataset: Separabilní 2D dataset.
    3. Analýza linárně separovatelného případu - Dataset: Neseparabilní 2D dataset.
  6. Hodnocení klasifikátorů Zobrazit/Skýt
    1. V programu Weka ovetřere libovolný dataset (např. IRIS, Diabetes) a za pomocí klasifkátorů J48, Bayes nebo podobného analyzujte dataset. Poté pomocí pravého kliknutí nad výsledným setem využijte možnosti Vizualize Threshold Curve pro jednotlivé třídy a prostudujte tuto křivku.
    2. Vyberte si jeden z klasifikátorů, které jste zatím implementovali, a který vrací ke každému bodu konkrétní třídu. Implementujte měření vašeho klasikátoru z pohledu přesnost, precision, recall a F1 (tyto lze spočítat pro výsledný model, aniž by jste potřebovali pracovat s prahem (threshold)).

Datasety

  1. Sample dataset s 2 atributy a 2 třídami. Formát: CSV
  2. Iris dataset se 4 atributy a 3 třídami. Informace: zde. Formát: CSV, Original
  3. Tic-Tac-Toe dataset s 9 atributy a 2 třídami. Informace: zde. Formát: CSV, Original
  4. Separabilní 2D dataset. Dataset obsahuje 2 třídy (+1,-1), a jedná se o body v rovině. Každá třída má 50 bodů a mají mezi sebou odělující pásmo. Formát: CSV
  5. Neseparabilní 2D dataset. Dataset obsahuje 2 třídy (+1,-1), a jedná se o body v rovině. Každá třída má 50 bodů, které mají mezi sebou odělující pásmo a navíc každá třída dalších 20 bodů, které jsou zamíchány v druhé skupině. Formát: CSV

Témata pro implementace a prezentace

Představit srozumitelně princip algoritmu, vstupy, výstupy, omezení.

  1. AdaBoost algoritmus
  2. Depp Learning (classification, application, not images)
  3. C5.0 Algorithm
  4. Probabilistic Decision Trees
  5. Locally adaptive metric nearest-neighbor classification (Domeniconi C, Peng J, Gunopulos D. Locally adaptive metric nearest-neighbor classification. IEEE Transactions on Pattern Analysis and Machine Intelligence. 2002 Sep;24(9):1281-5.)
  6. Nested cross-validation (popsat jak funguje, jak s etyo dá využít, prakticé použití)
  7. Kernel Explanation and Vizualization (popis fungování jednotlivých kernelů a vizualizace jejich chování)
  8. Kernel-based Nearest Neighbor Classification (Yu, K., Ji, L. & Zhang, X. Neural Processing Letters (2002) 15: 147. https://doi.org/10.1023/A:1015244902967)
  9. – dle výběru studenta --