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

MAD3

Přednášky

  1. Základní informace
  2. Dolování vzorů a pravidel
  3. Explorativní analýza
  4. Shlukování pomocí reprezentantů a hierarchické shlukování
  5. Shlukování na základě hustoty a validace shluků
  6. Speciální shlukovací metody, Detekce odlehlých hodnot
  7. Redukce dimenze, Klasifikace, Výběr atributů a rozhodovací stromy
  8. Rozhodovací stromy, pravidlové systémy, pravděpodobnostní klasifikace, hodnocení klasifikačních algoritmů.
  9. Support Vector Machines
  10. Neuronové sítě
  11. Regrese a Pokročilé přístupy v klasifikaci
  12. Ensemble metody

Cvičení

  1. Dolování vzorů (14.9.2020) Zobrazit/Skýt
    1. Vygenerujte všechny kombinace bez opakování o délce 3 z 6 možných.
    2. Na jednom z testovacích souborů (chess, connect) vygenerujte četné vzory z vypočtěte Support.
    3. Z vygenerovaných četných vzorů vypište pravidla a jejich Confidence
  2. Explorativní analýza (21.9.2020) Zobrazit/Skýt
    1. Dle pokynů cvičícího si stáhněte datovou sadu.
    2. Vyzkoušejte si analýzu datasetu, jak jednotlivých vlastností, tak i korelaci.
    3. Vyzkoušejte si transformaci jednotlivých atributů.
  3. Aglomerativní shlukování (05.10.2020) Zobrazit/Skýt
    1. Cílem bude implementovat dvě varianty aglomerativního shlukování a to single a complete linkage.
    2. Obě metody vychází z matice vzdáleností.
    3. Cílem bude provést shlukování, které se zastaví buď při vhodné příležitosti, nebo po kompletním shlukování.
    4. Při kompletním shlukování sestupte po dendrogramu shluků a nalezněte ty správné shluky.
    5. k-means shlukovací algoritmus (nepovinný úkol)
      1. Načtěte jeden z uvedených datasetů.
      2. Za pomocí Euklidovy vzdálenosti realizujte/vyzkoušejte k-means algoritmus.
      3. Projděte si výsledky algoritmu v krocích.
  4. Shlukovací metody (12.10.2020) Zobrazit/Skýt
    1. Cílem cvičení je vyzkoušet různé metody pro shlukování nad příklady z kolekce.
    2. Vyzkoušejte jak metody založené na reprezentantech, tak i hierarchické (s různými nastaveními), tak i metody založené na hustotě.
  5. Shlukování - reálný příklad (19.10.2020) Zobrazit/Skýt
    1. Cílem cvičení bude analyzovat reálný dataset, výsledky budou prezentovány rovnou na cvičení, tzn. pozdější odevzdání není možné.
    2. Rozdělte data do vhodných shluků, využít můžete libovolnou metodu, ale počet shluků musíte být schopni zdůvodnit.
    3. Nalezené shluky by měli vhodně popisovat data.
    4. Každý nalezený shluk analyzujte a popište typ dat, kteří do něj patří.
    5. K vašemu řešení připravte krátký report, který, včetně zdrojových kódů, odevzdejte.
  6. Redukce dimenze (26.10.2020) Zobrazit/Skýt
    1. Načtěte dataset pro redukci dimenzi.
    2. Proveďte redukci dimenze na několik hodnot a změřte si Frobeniovu normu mezi originální a rekonstruovanou maticí.
    3. Redukci proveďte pomocí SVD a NMF.
    4. O obou algoritmů si vytiskněte nové bázové vektory.
    5. Např. v Pythonu je možné obě metody nalézt v Scikit-Learn, Accord.Net pro C#.
  7. Klasifikace rozhodovacím stromem (2.11.2020) Zobrazit/Skýt
    1. Načtěte dataset pro klasifikaci.
    2. Sestrojte klasifikační rozhodovací strom s optimálním dělením.
    3. Proveďte klasifikaci bodů v datasetu.
  8. Support Vector Machines (9.11.2020) Zobrazit/Skýt
    1. Experimentování s SVM klasifikací
      1. Na adrese knihovny LibSVM nalezněte canvas SVM.
      2. Otestujte nastavení knihovny na různých zadání bodů a volby kernelů.
      3. Otestujte různé nastavení kernelů, zejména konstantu C.
    2. Pomocí knihovny SkLearn nebo jiné vhodné otestujte použití SVM nad reálnými datasety.
    3. Otestuje lineární i RBF kernely.
  9. Neuronové sítě (23.11.2020) Zobrazit/Skýt
    1. Vyzkoušejte implementaci neuronových sítí (MLP) v rámci knihoven.
    2. Otestujte různé sítě pro datasety pro klasifikaci.
  10. Regrese (30.11.2020) Zobrazit/Skýt
    1. Načtěte regresní data.
    2. Předzpracujte si je tak, aby jste odstranili datum a převedli na den v roce (např.).
    3. Naučte regresní model na rozdělení dat.
  11. Ensamble metody (7.12.2020) Zobrazit/Skýt
    1. Vyzkoušejte si využití ensemble metod pro klasifikaci/regresi.
    2. Porovnejte výkonnost těchto metod s klasickým přístupem.
  12. Klasifikace - reálný příklad (14.12.2020) Zobrazit/Skýt
    1. Cílem cvičení bude analyzovat reálný dataset, výsledky budou odevzdány formou reportu v PDF.
    2. Načtete si zadaný dataset a prozkoumejte jej.
    3. Natrénujte vhodný model (vyzkoušejte i metody z Ensemble přístupů/neuronových sítí).
    4. K vašemu řešení připravte krátký report, který, včetně zdrojových kódů, odevzdejte.

Datasety

  1. Dolování vzorů: Zobrazit/Skýt
  2. Data jsou uložena ve formátu DAT, což je čistě textový formát, který na každém řádku/transakci zachycuje seznam nakoupeného zboží/přítomnosti zboží v transakci.

    • Test Formát: DAT
    • Chess Formát: DAT
    • Connect Formát: DAT
    • Mushroom Formát: DAT
    • T10I4D100K (generated shopping cart) DAT
  3. Shlukování: Zobrazit/Skýt
  4. 3 kruhové shluky: CSV
    5 kruhových shluků: CSV
    5 překrývajících se shluků: CSV
    Soustředné kruhy: CSV
    Obdélníky: CSV
    Husté vlnovky: CSV
  5. Redukce dimenze Zobrazit/Skýt
    • BAR dataset - 10 000 obrázků 8x8 uložených jako 64 bytů v textovém formátu.
    • BAR Noise 20% dataset - 10 000 obrázků 8x8 uložených jako 64 bytů v textovém formátu spolu s 20% bílého šumu
    • BAR Noise 50% dataset - 10 000 obrázků 8x8 uložených jako 64 bytů v textovém formátu spolu s 50% bílého šumu
    • MNIST dataset - 60 000 obrázků 28x28 uložených jako 784 bytů v textovém formátu
  6. Klasifikace Zobrazit/Skýt
  7. 5 překrývajících se shluků: CSV
    Soustředné kruhy: CSV
    Obdélníky: CSV
    Husté vlnovky: CSV
    Iris dataset se 4 atributy a 3 třídami: Informace CSV, Original
    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 oddělující pásmo. CSV
    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 oddělující pásmo a navíc každá třída dalších 20 bodů, které jsou zamíchány v druhé skupině. CSV
    Tic-Tac-Toe dataset s 9 atributy a 2 třídami. Informace. CSV, Original
  8. Regrese Zobrazit/Skýt

ARD

Přednášky

  1. Základní informace
  2. Neuronové sítě
  3. Neuronové sítě - parametry
  4. Konvoluční neuronové sítě.
  5. Autoencodér
  6. Variační autoenkodér
  7. Rekurentní neuronové sítě
  8. Klasifikace textu - reprezentace slov
  9. Modelování jazyka pomocí RNN
  10. Zpracování vektorových dat - Explorativní analýza a klasifikace
  11. Lokalizace a rozpoznání objektů v obraze
  12. Generativní metody - GAN

Cvičení

  1. Základy Google Collaboratory, Tensorflow a nastavení modelu (14.9.2020) Zobrazit/Skýt
    1. Cílem bude nastavit na počítači Tensorflow nebo se naučit pracovat s nástrojem Google Colaboratory.
    2. Na základním příkladě se podíváme na možnosti nastavení a vytvoření modelů pro analýzu datasetu.
    3. Vyzkoušme si jednak základní modely tak i použítí validačních množin, regularizace a další vlastnosti.
    4. Základní pracovní sešit naleznete zde
  2. Ukládání modelu a transfer learning (21.9.2020) Zobrazit/Skýt
    1. Cílem bude nastavit na počítači Tensorflow nebo se naučit pracovat s nástrojem Google Colaboratory.
    2. Vyzkoušíme si analýzu těžšího datasetu.
    3. Vyzkoušme si jednak ukládání modelů, jejich průběžné sledování a ukládání nejlepších výsledků a transfer learning.
    4. Základní pracovní sešit naleznete zde
  3. Konvoluční neuronové sitě (05.10.2020) Zobrazit/Skýt
    1. Vyzkoušíme si analýzu obrazů pomocí Konvolučních sítí.
    2. Vyzkoušíme si nastavení jednotlivých parametrů sítí k dosažení maximální efektivity.
    3. Základní pracovní sešit naleznete zde
  4. Autoencodér (12.10.2020) Zobrazit/Skýt
    1. Vyzkoušíme si vytvoření autoenkodéru.
    2. Vyzkoušíme si použití autoencodéru pro detekci anomálií a odstranění šumu.
    3. Dále si vyzkoušíme transfer learning předučených modelů.
    4. Základní pracovní sešit naleznete zde
  5. Variační autoencodér (19.10.2020) Zobrazit/Skýt
    1. Vyzkoušíme si použití variačního autoencodéru generování dovu typů obrázků dle použitých sad.
    2. Základní pracovní sešit naleznete zde
  6. Rekurentní neuronové sítě (26.10.2020) Zobrazit/Skýt
    1. Vyzkoušíme si použití rekuretních sítí pro predikci ceny akcií.
    2. Základní pracovní sešit naleznete zde
  7. Klasifikace textových dat (2.11.2020) Zobrazit/Skýt
    1. Vyzkoušíme si práci s texty pomocí neuronových sítí a práci se slovy.
    2. Základní pracovní sešit naleznete zde
  8. Modelování textu (9.11.2020) Zobrazit/Skýt
    1. Vyzkoušíme si modelování jazyka pomocí rekurentních sítí.
    2. Základní pracovní sešit naleznete zde
  9. Vektorová data (23.11.2020) Zobrazit/Skýt
    1. Na tomto cvičení zkusíte zpracovat standartní vektorová data.
    2. Základní pracovní sešit naleznete zde
  10. Lokalizace objektů v obrazech (30.11.2020) Zobrazit/Skýt
    1. Na tomto cvičení zkusíte lokalizovat objekty v obrazech a klasifikovat je do správných kategorií.
    2. Základní pracovní sešit naleznete zde
  11. Generativní modely (7.12.2020) Zobrazit/Skýt
    1. Na tomto cvičení zkusíte vytrénovat generativní model GAN.
    2. Základní pracovní sešit naleznete zde

MAD4

Přednášky

  1. Základní informace
  2. Dolování datových proudů I.
  3. Dolování datových proudů II.
  4. Predikce v časových řadách I.
  5. Predikce v časových řadách II.
  6. PowerBI I.
  7. PowerBI II.

Cvičení

  1. Předvídání v časových řadách (23.2.2021) Zobrazit/Skýt
    1. Cílem cvičení bude vyzkoušet si predikci v časových řadách.
    2. Odkaz na cvičení je ZDE
  2. Předvídání v časových řadách pomocí DNN (2.3.2021) Zobrazit/Skýt
    1. Cílem cvičení bude vyzkoušet si predikci v časových řadách pomocí neuronových sítí.
    2. Odkaz na cvičení je ZDE