Zkuste nás kontaktovat
 Doba trvání 21 hodiny

Návrh Školení

Úvod

  • Úvod do TensorFlowu a hlubokého učení
  • Použití a aplikace TensorFlowu
  • Ekosystém TensorFlowu a nástroje
  • Pracovní postupy v machine learningu a hlubokém učení
  • Přehled cílů kurzu a praktických cvičení

TensorFlow 2.x vs. předchozí verze — co je nového

  • Hlavní rozdíly mezi TensorFlowem 1.x a 2.x
  • Spěchaní na pozadí (eager execution)
  • Zjednodušené API a vylepšená použitelnost
  • Změny ve stavbě a trénování modelů
  • Úvod do Keras jako vyšší úrovně API
  • Úvahy týkající se migrace stávajících aplikací TensorFlow
  • Doporučené postupy pro TensorFlow 2.x

Nastavení TensorFlowu 2.x

  • Instalace TensorFlowu
  • Konfigurace prostředí Python
  • Ověření instalace TensorFlowu
  • Instalace a správa požadovaných závislostí
  • Konfigurace prostředí CPU a GPU
  • Používání TensorFlowu s Jupyter notebooky
  • Základní příkazy a operace TensorFlowu
  • Řešení problémů s instalací a konfigurací

Přehled funkcí a architektury TensorFlowu 2.x

  • Architektura TensorFlowu a jádrové komponenty
  • Tensor a operace s tenzory
  • Proměnné a konstanty
  • Výpočetní grafy a spěchaní na pozadí (eager execution)
  • Automatické derivování
  • API a moduly TensorFlowu
  • Integrace Keras
  • Datapipeliny pomocí tf.data
  • Serionalizace modelů a TensorFlow SavedModel
  • Ekosystém TensorFlowu a vývojový proces

Jak fungují neuronové sítě

  • Základy umělých neuronových sítí
  • Neurony, vrstvy a architektury sítí
  • Aktivacioní funkce
  • Přímá propagace
  • Funkce ztráty (loss functions)
  • Zpětná propagace
  • Metoda gradientu klesajícího a optimalizace
  • Učící rychlosti a strategie optimalizace
  • Přeučení a nedostatečné učení
  • Techniky regularizace
  • Datové sady pro trénování, validaci a testování

Používání TensorFlowu 2.x pro vytváření modelů hlubokého učení

  • Vytváření tenzorů a proměnných
  • Stavba neuronových sítí pomocí Keras
  • Sequentní a funkcionální API pro modely
  • Definice vlastních modelů a vrstev
  • Konfigurace optimalizátorů
  • Výběr vhodných funkcí ztráty
  • Trénování modelů pomocí fit()
  • Vlastní smyčky trénování
  • Volání zpět (callbacks) a monitorování trénování
  • Správa kontrolních bodů modelů (checkpoints)

Analýza dat

  • Pochopení datových sad pro machine learning
  • Prozkoumání strukturovaných a nestrukturovaných dat
  • Vizualizace dat
  • Identifikace vzorců a odchylek
  • Zpracování chybějících a nekonzistentních dat
  • Rozdělení dat na trénovací, validační a testovací sady
  • Výběr relevantních znaků
  • Příprava datových sad pro modely TensorFlowu

Předzpracování dat

  • Normalizace a standardizace dat
  • Kódování kategoriech dat
  • Zpracování chybějících hodnot
  • Měřítko znaků (feature scaling)
  • Předzpracování obrázků
  • Předzpracování textu
  • Zmenšení a zvětšení dat (data augmentation)
  • Stavba efektivních vstupních datapixelů
  • Použití tf.data
  • Dávkování, promíchávání, ukládání do mezipaměti a předčítání
  • Příprava dat pro trénování modelu

Stavba modelu

  • Výběr vhodné architektury neuronové sítě
  • Definice vstupů a výstupů modelu
  • Vytváření hustých neuronových sítí
  • Výběr aktivacioních funkcí
  • Konfigurace modelu pro trénování
  • Výběr optimalizátorů a funkcí ztráty
  • Trénování a validace modelu
  • Monitorování metrik trénování
  • Zlepšování výkonu modelu
  • Prevence přeučení
  • Implementace regularizace a dropout

Implementace špičkového klasifikátoru obrázků

  • Základy klasifikace obrázků
  • Příprava datových sad obrázků
  • Normalizace a augmentace obrázků
  • Konvoluční neuronové sítě
  • Konvoluční a poolovací vrstvy
  • Design architektury klasifikace obrázků
  • Přenášení učení (transfer learning)
  • Použití předtrénovaných modelů
  • Doladění předtrénovaných sítí
  • Stavba pokročilého klasifikátoru obrázků
  • Hodnocení výkonu klasifikace

Trénování modelu

  • Konfigurace parametrů trénování
  • Velikost dávky (batch size) a éry
  • Výběr optimalizátoru
  • Nastavení učící rychlosti
  • Volání zpět pro trénování
  • Brzké zastavení (early stopping)
  • Ukládání kontrolních bodů modelu
  • Monitorování pokroku trénování
  • Detekce přeučení
  • Zlepšování výkonu trénování
  • Distributivní trénování a úvahy týkající se akcelerace

Trénování na GPU vs. TPU

  • Architektury CPU, GPU a TPU
  • Výhody hardwarové akcelerace
  • Konfigurace TensorFlowu pro trénování na GPU
  • Pochopení trénování založeného na TPU
  • Výběr hardwaru pro různé úlohy
  • Přenos výpočtů mezi zařízeními
  • Správa paměti a výpočetních zdrojů
  • Srovnání výkonu trénování
  • Distributivní strategie a strategie akcelerace trénování

Hodnocení modelu

  • Výběr vhodných metrik hodnocení
  • Přesnost, presize, recall a skóre F1
  • Metriky hodnocení regrese
  • Matice zmatku (confusion matrices)
  • Strategie validace
  • Hodnocení klasifikačních modelů
  • Hodnocení generalizace modelu
  • Identifikace slabých míst modelu
  • Srovnání různých konfigurací modelů

Provádění predikcí

  • Používání trénovaných modelů pro inferenci
  • Příprava nových vstupních dat
  • Provádění dávkových a jednotlivých predikcí
  • Interpretace výstupů modelu
  • Pravděpodobnosti klasifikace
  • Predikce regrese
  • Stavba pracovního postupu inferenční
  • Zpracování neznámých dat
  • Správa predikčních datapixelů

Hodnocení predikcí

  • Analýza kvality predikcí
  • Srovnání predikcí s očekávanými výsledky
  • Identifikace falešně pozitivních a falešně negativních výsledků
  • Analýza chyb
  • Hodnocení důvěry modelu
  • Vizualizace výsledků predikcí
  • Detekce zkreslení v datech a predikcích
  • Zlepšování výkonu modelu na základě analýzy predikcí

Ladění modelu

  • Identifikace běžných problémů s trénováním
  • Diagnostika nesprávných predikcí
  • Ladění datapixelů
  • Prozkoumání chování funkcí ztráty a metrik
  • Detekce explozivních a vymizelých gradientů
  • Diagnostika přeučení a nedostatečného učení
  • Prohlížení vrstev modelu a výstupů
  • Používání nástrojů pro ladění a profilování TensorFlowu
  • Zlepšování stability a výkonu modelu

Ukládání modelu

  • Ukládání trénovaných modelů
  • Formát TensorFlow SavedModel
  • Ukládání a obnovování váh modelu
  • Ukládání architektury a konfigurace modelu
  • Nahrávání modelů pro inferenci
  • Verzování modelů
  • Export modelu pro nasazení
  • Správa artefaktů modelu
  • Příprava modelů pro produkční prostředí

Nasazení modelu do cloudu

  • Úvod do nasazení modelů do cloudu
  • Příprava modelů TensorFlowu pro produkci
  • Servírování modelů prostřednictvím API
  • Concepts servírování modelů
  • Kontejnerizace aplikací TensorFlow
  • Cloudová inference
  • Měření škálovatelnosti úloh servírování modelů
  • Monitorování nasazených modelů
  • Správa verzí modelů
  • Úvahy týkající se nasazení do produkce

Nasazení modelu na mobilní zařízení

  • Výzvy mobilního machine learningu
  • TensorFlow Lite
  • Konverze modelů TensorFlowu pro mobilní nasazení
  • Optimalizace modelu a zmenšování velikosti
  • Kvantizace
  • Spouštění inferenční na mobilních zařízeních
  • Správa zdrojů mobilního zařízení
  • Integrace modelů do mobilních aplikací
  • Testování výkonu mobilní inferenční

Nasazení modelu do vestavěného systému (IoT)

  • Machine learning na vestavěných zařízeních
  • TensorFlow Lite pro vestavěné aplikace
  • Omezení zdrojů a optimalizace
  • Zmenšování velikosti modelu a výpočetních požadavků
  • Hraniční inference (edge inference)
  • Zpracování senzorových a reálných dat v reálném čase
  • Spouštění predikcí lokálně
  • Úvahy týkající se energie a paměti
  • Integrace modelů TensorFlowu do pracovních postupů IoT
  • Testování a monitorování hraničních nasazení

Integrace modelu s různými programovacími jazyky

  • Interoperabilita modelů TensorFlowu
  • Servírování modelů prostřednictvím API
  • Používání modelů TensorFlowu z různých programovacích prostředí
  • Integrace modelů založená na Pythonu
  • Integrace modelů do webových aplikací
  • Inference modelu prostřednictvím REST služeb
  • Integrace TensorFlowu do stávajících aplikací
  • Výměna a serializace dat
  • Úvahy týkající se produkční integrace

Řešení problémů

  • Diagnostika problémů s instalací TensorFlowu
  • Řešení chyb při stavbě modelů
  • Ladění problémů s předzpracováním dat
  • Řešení selhání trénování
  • Prozkoumání problémů s konfigurací GPU a TPU
  • Diagnostika problémů s pamětí a výkonem
  • Řešení problémů s načítáním a ukládáním modelů
  • Ladění problémů s nasazením
  • Praktická cvičení k řešení problémů

Shrnutí a závěr

  • Rekapitulace konceptů TensorFlowu 2.x
  • Rekapitulace pracovních postupů neuronových sítí a hlubokého učení
  • Rekapitulace přípravy dat a vývoje modelů
  • Rekapitulace klasifikace obrázků
  • Rekapitulace technik trénování a hodnocení
  • Rekapitulace ladění a optimalizace modelů
  • Rekapitulace nasazení do cloudu, na mobilní zařízení a IoT
  • Doporučené postupy pro vývoj s TensorFlowem
  • Finální praktické cvičení
  • Diskuse otázek

Požadavky

  • Zkušenosti s programováním v jazyce Python.
  • Zkušenosti s příkazovou řádkou Linuxu.

Cílová skupina

  • Vývojáři
  • Data scientisti

Počet účastníků


Cena za účastníka

Reference (4)

Nadcházející kurzy

Související kategorie