Trénování modelů strojového učení

Apache Spark ve službě Azure Synapse Analytics umožňuje strojové učení s velkými objemy dat a poskytuje možnost získat cenné přehledy z velkých objemů strukturovaných, nestrukturovaných a rychle se pohyblivých dat. Při trénování modelů strojového učení pomocí Azure Sparku ve službě Azure Synapse Analytics existuje několik možností: Apache Spark MLlib, Azure Machine Učení a různé další opensourcové knihovny.

Apache SparkML a MLlib

Apache Spark ve službě Azure Synapse Analytics je jednou z implementací Apache Sparku v cloudu od Microsoftu. Poskytuje jednotnou opensourcovou architekturu paralelního zpracování dat, která podporuje zpracování v paměti za účelem zvýšení analýzy velkých objemů dat. Modul pro zpracování Sparku je vytvořený pro rychlost, snadné použití a sofistikované analýzy. Funkce distribuovaných výpočtů v paměti Sparku z něj činí dobrou volbou pro iterativní algoritmy používané ve výpočtech strojového učení a grafů.

Existují dvě škálovatelné knihovny strojového učení, které do tohoto distribuovaného prostředí přinášejí funkce algoritmického modelování: MLlib a SparkML. MLlib obsahuje původní rozhraní API postavené na sadách RDD. SparkML je novější balíček, který poskytuje rozhraní API vyšší úrovně založené na datových rámcích pro vytváření kanálů ML. SparkML zatím nepodporuje všechny funkce knihovny MLlib, ale nahrazuje knihovnu MLlib jako standardní knihovnu strojového učení Sparku.

Poznámka:

Další informace o vytvoření modelu SparkML najdete v tomto kurzu.

Každý fond Apache Sparku ve službě Azure Synapse Analytics obsahuje sadu předem načtených a oblíbených knihoven strojového učení. Tyto knihovny poskytují opakovaně použitelný kód, který můžete chtít zahrnout do svých programů nebo projektů. Mezi relevantní knihovny strojového učení, které jsou ve výchozím nastavení zahrnuté, patří:

  • Scikit-learn je jednou z nejoblíbenějších knihoven strojového učení s jedním uzlem pro klasické algoritmy ML. Scikit-learn podporuje většinu algoritmů učení pod dohledem a bez dohledu a dá se také použít pro dolování dat a analýzu dat.

  • XGBoost je oblíbená knihovna strojového učení, která obsahuje optimalizované algoritmy pro trénování rozhodovacích stromů a náhodných doménových struktur.

  • PyTorch & Tensorflow jsou výkonné knihovny hlubokého učení Pythonu. V rámci fondu Apache Spark ve službě Azure Synapse Analytics můžete pomocí těchto knihoven vytvářet modely s jedním počítačem nastavením počtu exekutorů ve fondu na nulu. I když Apache Spark není v rámci této konfigurace funkční, představuje jednoduchý a nákladově efektivní způsob vytváření modelů s jedním počítačem.

Další informace o dostupných knihovnách a souvisejících verzích najdete v publikovaném modulu runtime Azure Synapse Analytics.

MMLSpark

Knihovna Microsoft Machine Učení pro Apache Spark je MMLSpark. Tato knihovna je navržená tak, aby datoví vědci v Sparku zvýšili produktivitu, zvýšili míru experimentování a využili špičkové techniky strojového učení, včetně hlubokého učení, u velkých datových sad.

MMLSpark poskytuje vrstvu nad rozhraními API sparkML nízké úrovně při vytváření škálovatelných modelů ML, jako je indexování řetězců, vynucení dat do rozložení očekávaného algoritmy strojového učení a sestavení vektorů funkcí. Knihovna MMLSpark tyto a další běžné úlohy při vytváření modelů v PySparku zjednodušuje.

Automatizované strojové učení ve službě Azure Machine Učení

Azure Machine Učení je cloudové prostředí, které umožňuje trénovat, nasazovat, automatizovat, spravovat a sledovat modely strojového učení. Automatizované strojové učení ve službě Azure Machine Učení přijímá trénovací data a nastavení konfigurace a automaticky iteruje kombinacemi různých metod normalizace a standardizace funkcí, modelů a nastavení hyperparametrů, aby bylo dosaženo nejlepšího modelu.

Při použití automatizovaného strojového učení ve službě Azure Synapse Analytics můžete využít hlubokou integraci mezi různými službami ke zjednodušení trénování modelů a ověřování.

Upozorňující

  • Od 29. září 2023 ukončí Azure Synapse oficiální podporu pro moduly Runtime Sparku 2.4. Po 29. září 2023 nebudeme řešit žádné lístky podpory související se Sparkem 2.4. Pro chyby nebo opravy zabezpečení pro Spark 2.4 nebude zaveden žádný kanál verze. Využití Sparku 2.4 po datu ukončení podpory se provádí na vlastním riziku. Důrazně nedoporučujeme jeho trvalé používání kvůli potenciálním obavám o zabezpečení a funkčnost.
  • V rámci procesu vyřazení Apache Sparku 2.4 bychom vás chtěli upozornit, že AutoML ve službě Azure Synapse Analytics bude také zastaralé. To zahrnuje rozhraní s nízkým kódem i rozhraní API používaná k vytváření zkušebních verzí AutoML prostřednictvím kódu.
  • Mějte na paměti, že funkce AutoML byla výhradně dostupná prostřednictvím modulu runtime Spark 2.4.
  • Zákazníkům, kteří chtějí dál využívat funkce AutoML, doporučujeme ukládat data do účtu Azure Data Lake Storage Gen2 (ADLSg2). Odtud můžete bez problémů přistupovat k prostředí AutoML prostřednictvím služby Azure Machine Učení (AzureML). Další informace týkající se tohoto alternativního řešení najdete tady.

Služby Azure AI

Služby Azure AI poskytují možnosti strojového učení k řešení obecných problémů, jako je analýza textu pro emocionální mínění nebo analýza obrázků pro rozpoznávání objektů nebo tváří. Abyste mohli s těmito službami pracovat, nepotřebujete žádné speciální vědomosti o strojovém učení nebo datových vědách. Služba Cognitive Service poskytuje část nebo všechny komponenty v řešení strojového učení: data, algoritmus a natrénovaný model. Tyto služby jsou určené k tomu, aby vyžadovaly obecné znalosti o vašich datech, aniž by bylo nutné mít zkušenosti se strojovým učením nebo datovými vědami. Tyto předem natrénované služby Azure AI můžete využít automaticky ve službě Azure Synapse Analytics.

Další kroky

Tento článek obsahuje přehled různých možností pro trénování modelů strojového učení v rámci fondů Apache Sparku ve službě Azure Synapse Analytics. Další informace o trénování modelů najdete v následujícím kurzu: