Podmínky pro získání zápočtu:
- Povinně: Vypracování projektu a jeho osobní prezentace na cvičení během semestru (nejpozději 18.5.2026).
- Povinně: Ústní přezkoušení z probrané teorie.
- Volitelně (ale ovlivní výslednou známku): Aktivní účast na hodinách, řešení úloh.
Aktivní účast na přednáškách a cvičeních, řešení úloh.
- Účast na hodinách není povinná, nicméně je doporučená a přispěje k lepší známce.
- Aktivní účast znamená, že se student soustředí na výuku, podílí na řešení příkladů, komunikuje.
- Známkování účasti: 1 bod za 1 aktivní účast na hodině, maximálně lze získat 26 bodů.
- pro známku A za účast: stačí 20 z 26 bodů
- pro známku B za účast: stačí 16 z 26 bodů
- pro známku C za účast: stačí 13 z 26 bodů
- pro známku D za účast: stačí 10 z 26 bodů
- pro známku E za účast: stačí 6 z 26 bodů
- pro známku F za účast: méně než 6 bodů
- Pokud se nemůžete z vážných důvodů (např. kolize rozvrhu) účastnit výuky, můžeme se předem domluvit na individuální práci v kombinaci s pravidelnými konzultacemi. V takovém případě bde požadavek na docházku příslušně upraven.
- V případě zájmu studentů bude v průběhu semestru zadáno několik dobrovolných (především domácích) úkolů a bude možnost získat za ně bonusové body za účast.
Vypracování projektu a jeho prezentace
V rámci kurzu budete samostatně pracovat na projektu, který následně odprezentujete před ostatními studenty na cvičení. Cílem projektu je aplikace některého z probíraných modelů na reálný datový problém a experimentování s různými probíranými metodami a technikami.
-
Co bude projekt obnášet?
- Výběr úlohy a datové sady: Zvolte si vhodnou úlohu a odpovídající datovou sadu. Může jít např. o klasifikaci, regresi, práci s obrazovými nebo sekvenčními daty – podle toho, co vás zajímá. Pokud si nebudete vědět rady, ráda vám úlohu doporučím. Pokud se rozhodnete pro existující datovou sadu, vyhněte se notoricky známým a extrémně zjednodušeným datovým sadám (jako ty integrované přímo v Kerasu).
- Předzpracování dat: Důležité je důkladně data připravit pro trénování modelů – může zahrnovat čištění, vektorizaci, augmentaci apod.
- Výběr a aplikace modelu: Použijte jeden nebo více probíraných modelů, které jsou vhodné pro vámi zvolený problém.
-
Experimentování:
- Vyzkoušejte různé přístupy (např. různé modely, různé varianty jednoho modelu, různou volbu architektury či parametrů, předučené modely). Můžete také zkusit aplikovat techniky zlepšení učení (např. regularizace, dropout, augmentace dat,...). Důležitý je proces experimentování. Jak budete experimentovat (a v jakém rozsahu) nechám na vás, ale ráda poradím.
- Porovnejte výsledky více modelů, různých nastavení parametrů nebo různých přístupů.
- Vyhodnocení: Zhodnoťte výsledky svého experimentu – jak dobře model funguje / modely fungují? Které techniky měly největší dopad a jaký? Co Vám dalo nejvíc zabrat? Naučili jste se něco nového?
- Tip: Pokud jste již pracovali nebo právě pracujete na nějakém projektu týkajícím se neuronových sítí, například v rámci bakalářské nebo jiné práce, můžete ho po domluvě použít jako projekt pro tento předmět.
- 15.4-30.4.2026 Výběr úlohy a její schválení.
- V období mezi výběrem úlohy a její prezentací nabízím možnost individálních konzultací vašeho projektu (ať už jednorázově nebo pravidelně). Cílem konzultací je, abyste při řešení projektů netápali a vyhnuli se zbytečným chybám a problémům.
- 11.5.2026 nebo 18.5.2026 Prezentace vypracovaných projektů před ostatními. Jako doplněk odevzdáte okomentovaný zdrojový kód (ideální forma je notebook), vstupní data a výstupy (vizualizace apod.). Pokud budete vypracovávat k prezentaci i slidy (nebo jiné podklady), pošlete je také. Prezentaci je možné po domluvě uskutečnit i dříve.
- Doplnění: Pokud nestihnete projekt dokončit včas, na cvičení odprezentujete aktuální stav projektu a následně (nejpozději do 11.9.2026) odevzdáte zevrubnější zprávu o řešení, finální obhajoba projektu pak proběhne během individuální konzultace (ideálně současně s přezkoušením). Stejně tak, pokud projekt a jeho prezentace budou mít větší nedostatky nebo nedostatečný rozsah, mohu vás požádat o nějaké doplnění, které mi pak odevzdáte a dodatečně odprezentujete (nejpozději opět do 11.9.2026).
FAQ k projektům.
- Co si mám připravit na prezentaci projektu a s jakým časem mám počítat?
- Předpokládaná délka prezentace je 15-20 minut. Delší prezentace (např. většího projektu) je možná po předchozí domluvě (pokud to dovolí čas).
- Doporučuji při závěrečné prezentaci použít jako podklad vytvořený Jupyter notebook. Veškeré vaše poznámky, vysvělení, vizualizace, tabulky a další výstupy mohou být přímo v něm (není pak třeba připravovat extra slidy). Pokud se rozhodnete vytvořit prezentaci např. v PowerPointu, mějte i tak k dispozici kód k nahlédntí.
- Jakou zvolit strukturu závěrečné prezentace?
- Popis úlohy, kterou jste se rozhodli řešit.
- Popis dat (charakter dat, příznaky, počet vzorů,...) a jejich zdroj (popř. jak jste data získali).
- Jakým způsobem jste data předzpracovali.
- Popis experimentu - se kterými modely, technikami, nastaveními parametrů jste experimentovali a jak.
- Výsledky experimentu (vhodná vizualizace pomocí tabulek, obrázků a nebo grafů) + zhodnocení vlastními slovy.
- Kde se dají sehnat data?
- Kaggle: https://www.kaggle.com/datasets
- UCI Machine learning repository: https://archive.ics.uci.edu/
- KDnuggets: https://www.kdnuggets.com/datasets/index.html
- GitHub: https://github.com/topics/machine-learning-datasets
- Google dataset search: https://datasetsearch.research.google.com/
- OpenML https://www.openml.org/
- časové řady (např. kurzy měn, akcií),...
- samozřejmě místo nějakého veřejného datasetu můžete použít i nějaká vlastní data (např. fotorafie, data ze simulací, experimentů apod.)
- Pokud se rozhodnete pro existující datovou sady, vyhněte se notoricky známým a "extrémně zjednodšeným" datovým sadám (jako ty interované přímo v Kerasu apod.)
- Které modely zvolit?
Můžete si vybrat libovolné s probíraných modelů. Doporučuji zejména tyto:- Vrstevnatá neuronová síť s některou variantou algoritmmu zpětného šíření.
- Konvoluční neuronová síť.
- Jednoduchý neuron (perceptron, lineární neuron). Neuronová síť s jednou vrstvou neuronů.
- Asociativní síť. Samoorganizace. Kohonenovy mapy. RBF-síť
- Jak provést srovnání modelů?
- Rozdělte data na trénovací, validační a testovací množinu (vhodným způsobem - závisí na typu a charakteru dat). Nezávislá testovací data jsou pro správné vyhodnocení modelu nezbytná.
- Pokud je k dispozici velké množsví dat, vystačíme si s jednorázovým rozdělením dat. Pro malé nevyvážené úlohy doporčuji použít křížovou validaci (k-násobnu, Monte Carlo).
- Typicky srovnáváme rychlost (čas, počet epoch), velikost chyby a příp. další metriky (na trénovací i testovací množině).
- Architektura u vrstevnaté neuronové sítě - je možné zkusit různé počty neuronů, různé počty vrstvev.
- Zkusit různé kombinace hodnot parametrů modelu, výsledky formou tabulky, zhodnotit výsledek vlastními slovy.
Přezkoušení z probrané teorie.
- Zadání otázky / otázek z předem známého seznamu okruhů (příklad otázky: Perceptron: popište model a jeho algoritmus učení, na jaké úlohy se hodí, jaké jsou jeho výhody a nevýhody
- U přezkoušení mi jde o to, zda máte o dané problematice obecné povědomí, tušíte, jak modely fungují a k čemu se hodí, jaký je princip algoritmů, nezkouším z konkrétních matematických vzorečků a technických detailů.
- Předběžný seznam okruhů (otázek) - bude průběžně aktualizováno
- Základní pojmy: Strojové učení, matematický model neuronu, neuronová síť, vrstevnatá neuronová síť, hluboké vs. mělké učení
- Perceptron, reprezentace logických funkcí (logický prahový obvod), lineární separabilita, perceptronový algoritmus učení (princip, varianty, úskalí)
- Přenosová funkce a její význam, kdy se která hodí. Přenosová funkce ve skryté vrstvě. Ve výstupní vrstvě. K jakým úlohám se hodí/nehodí, jaká požaduje data.
- Lineární neuron a lineární neuronová síť, popis modelu, algoritmy učení (princip, srovnání), k jakým úlohám se hodí/nehodí, jaká požaduje data, omezení. Souvislost s lineární regresí
- Umělý neuron se spojitou přenosovou funkcí, popis modelu, varianty, učení pomocí gradientní metody. K jakým úlohám se hodí/nehodí, problémy a omezení.
- Jednovrstvá neuronová síť – stručný popis modelu a jeho učení, na jaké úlohy se hodí, jaká požaduje data, omezení
- Vrstevnatá neuronová síť a algoritmus zpětného šíření: princip, jeho přednosti a nevýhody, typické úlohy, požadavky na data. Architektura v závislosti na typu úlohy.
- Vrstevnatá neuronová síť – hyperparametry a jejich nastavení, algoritmy učení. Techniky pro zrychlení a zlepšení učení.
- Schopnost modelů neuronových sítí zobecňovat - vysvětlení problematiky, jak tuto schopnost vyhodnotit a jaké jsou techniky pro její zlepšení.
- Operace konvoluce a její význam v konvolučních sítích (a i jinde). Konvoluční vrstva.
- Konvoluční neuronová síť – architektura, vrstvy, aplikace, výhody a nevýhody. Učení, přenesené učení, techniky pro zlepšení učení, moderní architektury a aplikace.
- Shlukování – co to je, typické úlohy, probírané algoritmy (princip, varianty, vyhodnocení), jejich výhody a nevýhody
- Kompetitivní modely: WTA, Neural Gas a Kohonenova mapa – popis modelů a jejich učení, na jaké úlohy se hodí/nehodí, výhody a nevýhody
- Hybridní modely (LVQ) – stručný popis, k čemu se hodí, výhody a nevýhody