V simulátoru: Nakresli číslici "1" (svislá čára), zapamatuj si pozici. Spusť rozpoznání. Pak použij tlačítka posunu (→ ↓) a znovu rozpoznej.
| Pozice vzoru | Rozpoznaná číslice | Jistota (%) | Úspěch? |
|---|---|---|---|
| Originální (stred) | |||
| Posun 1× → | |||
| Posun 1× ↓ |
Porovnání vstupů: Jak se liší vstupní vektory pro stejné číslo na různých pozicích?
Co potřebujeme od sítě:
Počet parametrů - porovnání:
| Architektura | Parametry (vstup→skrytá) | Výpočet |
|---|---|---|
| MLP (5×5 → 16) | ||
| CNN (4 kernely 3×3) |
Kolikrát méně parametrů má CNN?
Vizualizace: V simulátoru přepínej mezi 4 kernely (◀ ▶). Sleduj jejich váhy.
Zkus aplikovat různé presety na Kernel 1. Sleduj Feature Map.
| Preset | Co detekuje? | Pozorování |
|---|---|---|
| Hrany (Edge) | ||
| Horizontální (—) | ||
| Vertikální (|) |
Nakresli kern horizontální detektor (barvy: zelená = kladná váha, červená = záporná):
Závěr: Kernel detekuje horizontální hranu, protože:
V simulátoru: Nakresli "L" (roh). Přepínej mezi Feature Maps (◀ ▶). Zapni "Zobrazit záporné hodnoty".
| Feature Map # | Co je aktivní (kladné)? | Co je záporné? |
|---|---|---|
| 1 | ||
| 2 | ||
| 3 | ||
| 4 |
Hypotéza: Pro rozpoznání číslice potřebujeme:
Příklad: Číslice "7" má horní vodorovnou čáru + pravou šikmou čáru. Které kernely ji najdou?
Vysvětli: Proč Feature Map má stejnou velikost jako vstup?
| Část | Co dělá? | Proč je důležitá? |
|---|---|---|
| Konvoluce | ||
| Feature Maps | ||
| Flatten | ||
| MLP |
Zakresli tok dat od vstupu (5×5) přes kernely k výstupu:
V simulátoru: Nakresli "0", přidej do tréninku. Tlaítky posunu (← ↑ ↓ →) posuň a opět přidej. Opakuj.
Kolik vzorů jsem vytvořil?
| Dataset | Počet vzorů | Epochy do chyby < 0.1 | Úspěšnost posunu |
|---|---|---|---|
| Bez augmentace (1 pozice/číslici) | |||
| S augmentací (9 pozic/číslici) |
Načti dataset 0-9, spusť 500 epoch. Sleduj, jak se mění váhy kernelů.
Pozorování: Naučily se kernely detekovat nějaké konkrétní rysy?
| Aspekt | MLP Grayscale | CNN-MLP |
|---|---|---|
| Translační invariance | ||
| Parametry (vstup→hidden) | ||
| Výhoda |
| Komponenta | Účel | V reálné CNN |
|---|---|---|
| Kernel (filter) | ||
| Feature Map | ||
| Pooling (MAX/AVG) |
Kde se CNN používají?
Jaký je největší "aha moment" z práce s CNN-MLP?
Jak CNN navazuje na předchozí kapitoly (MLP Builder, Grayscale, ReLU)?