Sdílet prostřednictvím


Perspektiva rozhraní Azure Well-Architected Framework ve službě Azure Machine Learning

Azure Machine Learning je spravovaná cloudová služba, kterou můžete použít k trénování, nasazování a správě modelů strojového učení. Existuje široká škála možností a konfigurací pro trénování i nasazování modelů, včetně skladových položek výpočetních prostředků a konfigurací. Modely strojového učení můžete nasadit do výpočetních prostředků služby Machine Learning nebo do jiných služeb Azure, jako je Azure Kubernetes Service (AKS).

Tento článek obsahuje doporučení architektury pro informovaná rozhodnutí při trénování, nasazování a správě modelů strojového učení pomocí strojového učení. Pokyny jsou založené na pilířích rozhraní Azure Well-Architected Framework.

Důležité

Jak používat tohoto průvodce

Každá část obsahuje kontrolní seznam návrhu , který představuje oblasti zájmu o architekturu spolu se strategiemi návrhu lokalizovanými do oboru technologie.

Součástí jsou také doporučení týkající se technologických možností, které můžou pomoct tyto strategie materializovat. Doporučení nepředstavují vyčerpávající seznam všech konfigurací dostupných pro Machine Learning a jeho závislostí. Místo toho vypisují klíčová doporučení mapovaná na perspektivy návrhu. Doporučení využijte k vytvoření testování konceptu nebo optimalizaci stávajících prostředí.

Základní referenční architektura základní architektury open-to-endového chatu OpenAI ukazuje řadu klíčových doporučení.

Rozsah technologie

Tato kontrola se zaměřuje na vzájemně související rozhodnutí týkající se těchto prostředků Azure:

  • Machine Learning
  • Výpočetní clustery služby Machine Learning
  • Výpočetní instance služby Machine Learning

Kontrola neřeší připojené prostředky, jako jsou úložiště dat nebo Azure Key Vault.

Spolehlivost

Účelem pilíře spolehlivosti je poskytovat nepřetržité funkce tím, že se vytváří dostatečná odolnost a schopnost rychle se zotavit z selhání.

Principy návrhu spolehlivosti poskytují strategii návrhu na vysoké úrovni, která se používá pro jednotlivé komponenty, systémové toky a systém jako celek.

Kontrolní seznam návrhu

Zahajte strategii návrhu na základě kontrolního seznamu pro kontrolu návrhu pro spolehlivost a určete její relevanci podle vašich obchodních požadavků. Rozšiřte strategii tak, aby zahrnovala další přístupy podle potřeby.

  • Odolnost: Nasaďte modely do prostředí, která podporují zóny dostupnosti, jako je AKS. Tím, že zajistíte distribuci nasazení mezi zóny dostupnosti, zajistíte, aby nasazení bylo dostupné i v případě selhání datacentra. Pokud chcete zvýšit spolehlivost a dostupnost, zvažte topologii nasazení ve více oblastech.

  • Odolnost: Ujistěte se, že máte dostatečný výpočetní výkon pro trénování i odvozování. Prostřednictvím plánování prostředků se ujistěte, že vaše skladová položka výpočetních prostředků a nastavení škálování splňují požadavky vaší úlohy.

  • Odolnost: Oddělení pracovních prostorů služby Machine Learning používaných pro průzkumnou práci od pracovních prostorů používaných pro produkční prostředí.

  • Odolnost: Při používání spravovaných online koncových bodů k odvozování použijte strategii vydávání verzí, jako jsou nasazení modrozelené, abyste minimalizovali prostoje a snížili riziko spojené s nasazením nových verzí.

  • Obchodní požadavky: Vyberte použití výpočetních clusterů, výpočetních instancí a hostitelů externích odvozování na základě požadavků na spolehlivost, přičemž jako faktor zvažte smlouvy o úrovni služeb (SLA).

  • Obnovení: Při trénování velkých modelů se ujistěte, že máte možnosti samoopravení, jako jsou funkce pro vytváření kontrolních bodů podporované službou Machine Learning.

  • Obnovení: Ujistěte se, že máte definovanou strategii obnovení. Machine Learning nemá automatické převzetí služeb při selhání. Proto musíte navrhnout strategii, která zahrnuje pracovní prostor a všechny jeho závislosti, například Key Vault, Azure Storage a Azure Container Registry.

Doporučení
Doporučení Výhoda
Nasazení modelu ve více oblastech: Pokud chcete zvýšit spolehlivost a dostupnost, zvažte prostředí nasazení ve více oblastech, pokud je to možné. Nasazení ve více oblastech zajistí, že úlohy Služby Machine Learning budou dál běžet i v případě výpadku v jedné oblasti. Nasazení ve více oblastech zlepšuje distribuci zatížení mezi oblastmi a potenciálně zvyšuje výkon pro uživatele v různých geografických oblastech. Další informace najdete v tématu Převzetí služeb při selhání pro provozní kontinuitu a zotavení po havárii.
Odolnost proti trénování modelů: Použijte funkce pro vytváření kontrolních bodů podporované službou Machine Learning, včetně azure Container for PyTorch, třídy TensorFlow Estimator nebo objektu Run a třídy FileDataset, které podporují vytváření kontrolních bodů modelu. Kontrolní body modelu pravidelně ukládají stav modelu strojového učení během trénování, aby bylo možné ho obnovit v případě přerušení, selhání nebo ukončení. Další informace najdete v tématu Zvýšení rychlosti kontrolního bodu a snížení nákladů pomocí nebula.
Pro výpočetní clustery použijte úroveň vyhrazeného virtuálního počítače: K dávkovému odvozování použijte úroveň vyhrazeného virtuálního počítače pro výpočetní clustery, abyste zajistili, že vaše dávkové úlohy nebudou zrušené. Virtuální počítače s nízkou prioritou mají nižší cenu, ale jsou preemptovatelné. Clustery, které používají úroveň vyhrazeného virtuálního počítače, nejsou zrušené.

Zabezpečení

Účelem pilíře Zabezpečení je poskytnout sadě funkcí záruky důvěrnosti, integrity a dostupnosti .

Principy návrhu zabezpečení poskytují strategii návrhu vysoké úrovně pro dosažení těchto cílů použitím přístupů k technickému návrhu týkajícímu se strojového učení.

Kontrolní seznam návrhu

Zahajte strategii návrhu na základě kontrolního seznamu pro kontrolu návrhu pro zabezpečení a identifikujte ohrožení zabezpečení a ovládací prvky, abyste zlepšili stav zabezpečení. Rozšiřte strategii tak, aby zahrnovala další přístupy podle potřeby.

  • Dostupnost: Omezte prostor pro útoky pracovního prostoru Služby Machine Learning tím, že omezíte přístup k pracovnímu prostoru na prostředky ve virtuální síti.

  • Důvěrnost: Implementace izolace sítě chrání před exfiltrací dat z pracovního prostoru Služby Machine Learning. Ujistěte se, že je explicitně schválený přístup ke všem externím prostředkům a že není povolený přístup ke všem ostatním externím prostředkům.

  • Integrita: Implementujte řízení přístupu, které ověřují a autorizují pracovní prostor Služby Machine Learning pro externí prostředky na základě nejnižšího principu oprávnění.

  • Integrita: Implementujte oddělení případů použití pro pracovní prostory služby Machine Learning nastavením pracovních prostorů na základě konkrétních případů použití nebo projektů. Tento přístup dodržuje princip nejnižších oprávnění tím, že zajišťuje, aby pracovní prostory byly přístupné jenom jednotlivcům, kteří vyžadují přístup k datovým a experimentačním prostředkům pro případ použití nebo projekt.

  • Integrita: Regulujte přístup k základním modelům. Ujistěte se, že přístup k modelům v registru modelů mají jenom schválené registry.

  • Integrita: Regulujte přístup ke schváleným registrům kontejnerů. Ujistěte se, že výpočetní prostředky služby Machine Learning mají přístup jenom ke schváleným registrům.

  • Integrita: Regulujte balíčky Pythonu, které je možné spouštět na výpočetních prostředcích služby Machine Learning. Regulace balíčků Pythonu zajistí, že se budou spouštět jenom důvěryhodné balíčky.

  • Integrita: Vyžaduje podepsání kódu použitého pro trénování ve výpočetních prostředích Služby Machine Learning. Vyžadováním podepisování kódu se zajistí, že spuštěný kód pochází z důvěryhodného zdroje a nebude s jeho pomocí manipulováno.

  • Důvěrnost: Dodržujte zásadu nejnižšího oprávnění pro řízení přístupu na základě role (RBAC) k pracovnímu prostoru Služby Machine Learning a souvisejícím prostředkům, jako je účet úložiště pracovního prostoru, abyste zajistili, že jednotlivci budou mít pouze potřebná oprávnění pro svou roli, čímž se minimalizují potenciální bezpečnostní rizika.

  • Integrita: Nastavte důvěryhodnost a ověřený přístup implementací šifrování neaktivních uložených dat a přenášených dat.

Doporučení
Doporučení Výhoda
Standardní hodnoty zabezpečení: Pokud chcete zlepšit zabezpečení a dodržování předpisů služby Machine Learning, použijte standardní hodnoty zabezpečení Azure pro Machine Learning. Standardní hodnoty zabezpečení poskytují přizpůsobené pokyny týkající se klíčových aspektů zabezpečení, jako je zabezpečení sítě, správa identit, ochrana dat a privilegovaný přístup. Pro zajištění optimálního zabezpečení využijte Microsoft Defender pro cloud k monitorování těchto aspektů.
Izolace spravované virtuální sítě: Nakonfigurujte izolaci spravované virtuální sítě pro Machine Learning. Když povolíte izolaci spravované virtuální sítě, vytvoří se pro pracovní prostor spravovaná virtuální síť. Spravované výpočetní prostředky, které vytvoříte pro pracovní prostor, automaticky používají tuto spravovanou virtuální síť. Pokud nemůžete implementovat izolaci spravované virtuální sítě, musíte postupovat podle doporučení síťové topologie a oddělit výpočetní prostředky do vyhrazené podsítě od ostatních prostředků v řešení, včetně privátních koncových bodů pro prostředky pracovního prostoru. Izolace spravované virtuální sítě zvyšuje zabezpečení tím, že izoluje pracovní prostor od jiných sítí a snižuje riziko neoprávněného přístupu. Ve scénáři, kdy dojde k narušení zabezpečení v jiné síti ve vaší organizaci, zůstane izolovaná síť pracovního prostoru Služby Machine Learning nedotčená a chrání úlohy strojového učení.
Izolace sítě služby Machine Learning: Nakonfigurujte privátní koncový bod pro pracovní prostor Služby Machine Learning a připojte se k pracovnímu prostoru přes tento privátní koncový bod. Izolace sítě Machine Learning zvyšuje zabezpečení tím, že zajišťuje, aby přístup k pracovnímu prostoru byl zabezpečený a řízený. Když je pro váš pracovní prostor nakonfigurovaný privátní koncový bod, můžete pak omezit přístup k pracovnímu prostoru tak, aby probíhal pouze přes privátní IP adresy.
Povolit pouze schválený odchozí přístup: Nakonfigurujte odchozí režim na spravovaném odchozím přístupu pracovního prostoru služby Machine Learning, Allow only approved outbound aby se minimalizovalo riziko exfiltrace dat. Nakonfigurujte privátní koncové body, značky služeb nebo plně kvalifikované názvy domén (FQDN) pro prostředky, ke kterým potřebujete přístup. Tato konfigurace minimalizuje riziko exfiltrace dat a zlepšuje zabezpečení dat. Když je tato konfigurace povolená, nemůže aktér se zlými úmysly, který získá přístup k vašemu systému, odesílat vaše data do neschváleného externího cíle.
Izolace virtuální sítě pro závislé služby: Nakonfigurujte závislé služby, jako jsou Storage, Key Vault a Container Registry, s privátními koncovými body a zakažte veřejný přístup. Izolace sítě posiluje zabezpečení tím, že omezuje přístup k řešením Azure PaaS (platforma jako služba) pouze na privátní IP adresy.
Spravovaná identita: Pro ověřování mezi Machine Learning a dalšími službami používejte spravované identity . Spravované identity zlepšují zabezpečení tím, že eliminují potřebu ukládat přihlašovací údaje a ručně spravovat a obměňovat instanční objekty.
Zakázat místní ověřování: Zakažte místní ověřování pro výpočetní clustery a instance služby Machine Learning. Zakázání místního ověřování zvyšuje zabezpečení výpočetních prostředků služby Machine Learning a poskytuje centralizovanou kontrolu a správu identit a přihlašovacích údajů prostředků.
Zakažte veřejný port SSH: Nastavením na Disabledhodnotu se ujistěte, že je veřejný port SSH (Secure Shell) na výpočetním remoteLoginPortPublicAccess clusteru Machine Learning zavřený. Podobnou konfiguraci použijte, pokud používáte jiný výpočetní výkon. Zakázání přístupu SSH pomáhá zabránit neoprávněným osobám v získání přístupu a potenciálně poškodit váš systém a chrání vás před útoky hrubou silou.
Nezřizovat veřejné IP adresy pro výpočetní prostředky služby Machine Learning: Při zřizování výpočetních clusterů nebo výpočetních instancí služby Machine Learning nastavte enableNodePublicIpfalse na hodnotu . Podobnou konfiguraci použijte, pokud používáte jiný výpočetní výkon. Vyhněte se zřizování veřejných IP adres, abyste zvýšili zabezpečení tím, že omezíte možnost neoprávněného přístupu k výpočetní instanci nebo clusterům.
Získání nejnovější image operačního systému: Vytvořte znovu výpočetní instance, abyste získali nejnovější image operačního systému. Používání nejnovějších imagí zajišťuje, že udržujete konzistentní, stabilní a zabezpečené prostředí, včetně zajištění nejnovějších oprav zabezpečení.
Striktní řízení přístupu k pracovním prostorům Machine Learning: Ke správě přístupu k pracovnímu prostoru použijte skupiny Microsoft Entra ID a dodržujte princip nejnižších oprávnění pro řízení přístupu na základě role. Přísné řízení přístupu k pracovním prostorům vylepšuje zabezpečení tím, že zajišťuje, aby jednotliví uživatelé měli jenom potřebná oprávnění pro svou roli. Datový vědec může mít například přístup ke spouštění experimentů, ale ne k úpravě nastavení zabezpečení a minimalizaci potenciálních bezpečnostních rizik.
Omezení nasazení katalogu modelů: Omezte nasazení modelů na konkrétní registry. Omezení nasazení z katalogu modelů na konkrétní registry zajistí, že modely nasadíte pouze do schválených registrů. Tento přístup pomáhá regulovat přístup k opensourcovým základním modelům.
Šifrování neaktivních uložených dat: Zvažte použití klíčů spravovaných zákazníkem ve službě Machine Learning. Šifrování neaktivních uložených dat zvyšuje zabezpečení dat tím, že zajišťuje, aby se citlivá data šifrovala pomocí klíčů, které spravujete přímo vy. Pokud máte zákonný požadavek na správu vlastních šifrovacích klíčů, použijte tuto funkci ke splnění tohoto požadavku.
Minimalizace rizika exfiltrace dat: Implementujte prevenci exfiltrace dat. Vytvořte například zásadu koncového bodu služby, která bude filtrovat výchozí přenosy virtuální sítě a povolit exfiltraci dat jenom do konkrétních účtů Služby Azure Storage. Minimalizujte riziko exfiltrace dat omezením příchozích a odchozích požadavků.
Advisor

Následuje několik příkladů doporučených osvědčených postupů zabezpečení Advisoru pro machine learning:

  • Pracovní prostory by měly být šifrované pomocí klíče spravovaného zákazníkem (CMK).
  • Pracovní prostory by měly používat Azure Private Link.
  • Pracovní prostory by měly zakázat veřejný síťový přístup.
  • Výpočetní prostředky by měly být ve virtuální síti.
  • Výpočetní instance by se měly znovu vytvořit, aby získaly nejnovější aktualizace softwaru.
Azure Policy

Níže jsou uvedené příklady integrovaných definic Azure Policy pro zabezpečení služby Machine Learning:

Optimalizace nákladů

Optimalizace nákladů se zaměřuje na zjišťování vzorců výdajů, určování priorit investic v kritických oblastech a optimalizaci v ostatních oblastech tak, aby splňovaly rozpočet organizace při současném splnění obchodních požadavků.

Přečtěte si principy návrhu optimalizace nákladů , abyste porozuměli přístupům k dosažení těchto cílů a nezbytným kompromisům v možnostech technického návrhu souvisejících s trénováním a nasazováním modelů v jejich prostředích.

Kontrolní seznam návrhu

Začněte strategii návrhu na základě kontrolního seznamu pro kontrolu návrhu pro optimalizaci nákladů pro investice a vylaďte návrh tak, aby úloha odpovídala rozpočtu přidělenému pro danou úlohu. Váš návrh by měl využívat správné funkce Azure, monitorovat investice a hledat příležitosti k optimalizaci v průběhu času.

  • Optimalizace využití: Zvolte vhodné prostředky, abyste zajistili, že jsou v souladu s vašimi požadavky na úlohy. Můžete si například vybrat mezi procesory nebo grafickými procesory, různými skladovými jednotkami nebo virtuálními počítači s nízkou nebo běžnou prioritou.

  • Optimalizace využití: Zajistěte, aby výpočetní prostředky, které se nepoužívají, byly v nečinnosti vertikálně snižovány nebo vypnuty, aby se omezilo plýtvání.

  • Optimalizace využití: Použijte zásady a nakonfigurujte kvóty tak, aby vyhovovaly horním a dolním limitům návrhu.

  • Optimalizace využití: Otestujte paralelizaci trénovacích úloh a zjistěte, jestli je možné splnit požadavky na trénování u skladových položek s nižšími náklady.

  • Optimalizace rychlosti: Pokud máte dobrý odhad využití v průběhu následujícího jednoho až tří let, kupte si rezervované instance virtuálních počítačů Azure.

  • Monitorování a optimalizace: Monitorujte využití prostředků, jako je využití procesoru a GPU při trénování modelů. Pokud se prostředky nevyužívá naplno, upravte kód tak, aby prostředky lépe využíval, nebo vertikálně snižte kapacitu na menší nebo levnější velikosti virtuálních počítačů.

Doporučení
Doporučení Výhoda
Optimalizace výpočetních prostředků: Optimalizujte výpočetní prostředky na základě požadavků úloh. Zvolte skladovou položku, která nejlépe vyhovuje vašim úlohám:
  • Pro obecné účely – vyvážený poměr procesoru k paměti, vhodný pro všechny účely.
  • Optimalizováno pro výpočty – vysoký poměr procesoru k paměti, vhodný pro výpočty náročné na matematiku.
  • Optimalizováno pro paměť – vysoké využití paměti a procesoru, vhodné pro výpočty v paměti nebo databázové aplikace.
  • Řada M – velmi velké počítače, které mají velké množství paměti a procesoru.
  • GPU – je lepší pro modely s velkým počtem proměnných, které můžou těžit z vyššího paralelismu a specializovaných instrukcí pro jádra. Typické aplikace jsou hluboké učení, zpracování obrazu nebo videa, vědecké simulace, dolování dat a využití vývojových architektur GPU. Testujte s více rodinami a zdokumentujte výsledky jako směrný plán. S tím, jak se model a data vyvíjejí, se může měnit nejvhodnější výpočetní prostředek. Monitorujte dobu provádění a podle potřeby znovu vyhodnotte.
Výběr správného výpočetního prostředí je kritický, protože přímo ovlivňuje náklady na provoz úloh. Výběr GPU nebo vysoce výkonné skladové položky bez správného použití může vést k plýtvání, zatímco volba poddimenzovaných výpočetních prostředků může vést k nevýznamně dlouhé době trénování a problémům s výkonem.
Optimalizace škálování výpočetních prostředků: Nakonfigurujte výpočetní clustery pro automatické škálování , abyste měli jistotu, že používáte jenom to, co potřebujete.

Pro trénovací clustery nastavte minimální počet uzlů na 0 a nakonfigurujte dobu, po kterou je uzel nečinný, na odpovídající dobu. Pokud chcete experimentovat méně iterativní, zkraťte čas, abyste ušetřili náklady. Pokud chcete experimentovat iterněji, použijte delší dobu, abyste zabránili placení za vertikální navýšení nebo snížení kapacity po každé změně.
Nakonfigurujte automatické škálování výpočetních clusterů tak, aby bylo možné vertikálně snížit kapacitu při nízkém využití.

Nastavte minimální počet uzlů na 0, aby se v případě, že se nepoužívají, kapacitu clusterů pro trénování vertikálně snížit na 0.
Nastavení zásad ukončení trénování: Nastavením zásad předčasného ukončení omezte dobu trvání trénovacích běhů nebo je předčasně ukončete. Nastavení zásad ukončení vám může pomoct ušetřit náklady tím, že v rané fázi zastavíte nevýkonné spuštění.
Použití virtuálních počítačů s nízkou prioritou pro dávkové úlohy: Zvažte použití virtuálních počítačů s nízkou prioritou pro dávkové úlohy , které nejsou časově citlivé a ve kterých je možné přerušení obnovit. Virtuální počítače s nízkou prioritou umožňují za nízkou cenu využívat velký výpočetní výkon. Využívají nadbytečnou kapacitu v Azure.
Povolit nečinné vypnutí výpočetních instancí: Povolte nečinné vypnutí výpočetních instancí nebo naplánujte čas spuštění a zastavení , pokud je čas využití známý. Ve výchozím nastavení máte k dispozici výpočetní instance a načítají se vám náklady. Konfigurace vypnutí výpočetních instancí, když jsou nečinné, nebo konfigurace plánu pro tyto instance šetří náklady, když se nepoužívají.
Paralelizace trénovacích úloh: Zvažte paralelizaci trénovacích úloh. Jejich spuštění otestujte pomocí paralelních komponent ve službě Machine Learning. Paralelní úlohy je možné spouštět na několika menších instancích, což může přinést úspory nákladů.
Rezervované instance virtuálních počítačů Azure: Zakupte rezervované instance virtuálních počítačů Azure, pokud máte dobrý odhad využití na další jeden až tři roky. Využijte možnosti rezervované kapacity pro služby, pokud máte dobrý odhad využití. Nákupem služby Azure Reserved VM Instances si předplatíte využití virtuálních počítačů a poskytnete slevy s průběžnými platbami. Sleva se automaticky uplatní na využití virtuálního počítače, které odpovídá rezervaci.

Efektivita provozu

Efektivita provozu se primárně zaměřuje na postupy pro vývojové postupy, pozorovatelnost a správu verzí.

Principy návrhu efektivity provozu poskytují strategii návrhu na vysoké úrovni pro dosažení těchto cílů směrem k provozním požadavkům úlohy.

Kontrolní seznam návrhu

Začněte strategii návrhu na základě kontrolního seznamu kontroly návrhu pro efektivitu provozu pro definování procesů pozorovatelnosti, testování a nasazení souvisejících se službou Machine Learning.

  • Standardy vývoje: Využijte katalogy a registry modelů služby Machine Learning k ukládání, verzím a sdílení prostředků strojového učení.

  • Zautomatizujte efektivitu: Postupujte podle osvědčených postupů pro operace strojového učení (MLOps). Pokud je to možné, vytvářejte ucelené automatizované kanály pro procesy přípravy, trénování a vyhodnocování dat. Při vývoji používejte skripty místo poznámkových bloků pro trénovací modely, protože skripty se snadněji integrují do automatizovaných kanálů.

  • Nasazení s jistotou: Implementujte infrastrukturu jako kód (IaC) pro pracovní prostory služby Machine Learning, výpočetní clustery, výpočetní instance a další prostředí nasazení.

  • Pozorovatelnost: Monitorujte výkon nasazených modelů, včetně posunu dat.

  • Pozorovatelnost: Pokud jsou vaše modely nasazené do online koncových bodů, povolte Application Insightsmonitorovat online koncové body a nasazení. Monitorujte trénovací infrastrukturu a ujistěte se, že splňujete základní požadavky.

  • Jednoduchost: Používejte kurátorovaná prostředí optimalizovaná pro Machine Learning, pokud jsou k dispozici.

Doporučení
Doporučení Výhoda
Minimalizace instancí pracovních prostorů služby Machine Learning: Pokud je to možné, minimalizujte počet pracovních prostorů, abyste snížili údržbu. Omezení počtu pracovních prostorů snižuje úsilí o údržbu a náklady na provoz. Pro požadavky, jako je zabezpečení, můžete potřebovat několik samostatných pracovních prostorů. Pokud je to možné, minimalizujte počet pracovních prostorů.
Využijte katalogy a registry modelů: Využijte katalogy a registry modelů služby Machine Learning k ukládání, verzím a sdílení prostředků strojového učení.

Katalogy modelů služby Machine Learning vám pomůžou s implementací testování A/B a nasazením modelů.
Pomocí registrů modelů služby Machine Learning můžete ukládat a vytvářet verze modelů strojového učení, abyste mohli sledovat změny a udržovat rodokmen pomocí úloh a datových sad používaných pro trénování.

Díky katalogům modelů služby Machine Learning můžou týmy datových věd objevovat, vyhodnocovat a dolaďovat předem natrénované základní modely strojového učení.

Ukládání modelů s verzemi v registrech modelů služby Machine Learning podporuje strategie nasazení, jako jsou verze A/B, kanárské verze a vrácení zpět.
Monitorování výkonu modelu: Monitorujte výkon nasazených modelů a detekujte posun dat u datových sad. Monitorování nasazených modelů zajišťuje, aby vaše modely splňovaly požadavky na výkon.

Monitorování posunu dat pomáhá detekovat změny ve vstupních datech, které můžou vést k poklesu výkonu modelu. Správa posunu dat pomáhá zajistit, aby model poskytoval přesné výsledky v průběhu času.
Monitorování infrastruktury: Pokud jsou vaše modely nasazené do online koncových bodů, povolte Application Insightsmonitorovat online koncové body a nasazení.

Monitorujte trénovací infrastrukturu a ujistěte se, že splňujete základní požadavky.

Ujistěte se, že shromažďujete protokoly prostředků pro Machine Learning.
Monitorování koncových bodů poskytuje přehled o metrikách, jako je latence požadavků a požadavků za minutu. Výkon můžete porovnat s vaším standardním plánem a tyto informace použít k odpovídajícím změnám výpočetních prostředků. Monitorování metrik, jako jsou síťové bajty, vás může upozornit, pokud se blížíte k limitům kvót a bráníte omezování.

Stejně tak monitorování trénovacího prostředí poskytuje informace pro provádění změn v trénovacím prostředí. Pomocí této informace se můžete rozhodnout vertikálně navýšit nebo snížit kapacitu, vertikálně navýšit nebo snížit kapacitu s různými výkonnými skladovými jednotkami nebo zvolit mezi procesory nebo GPU.
Kurátorovat trénovací prostředí modelů: Pokud jsou k dispozici, používejte kurátorovaná prostředí optimalizovaná pro Machine Learning. Kurátorovaná prostředí jsou předem vytvořená prostředí poskytovaná službou Machine Learning, která urychlují dobu nasazení a snižují latenci nasazení a trénování. Použití kurátorovaných prostředí zlepšuje úspěšnost trénování a nasazení a vyhýbá se zbytečným sestavením imagí.

Kurátorovaná prostředí, jako je Azure Container for PyTorch, je také možné optimalizovat pro trénování velkých modelů ve službě Machine Learning.

Efektivita výkonu

Efektivita výkonu spočívá v zachování uživatelského prostředí, i když se zvýší zatížení díky správě kapacity. Strategie zahrnuje škálování prostředků, identifikaci a optimalizaci potenciálních kritických bodů a optimalizaci výkonu ve špičce.

Principy návrhu efektivity výkonu poskytují strategii návrhu vysoké úrovně pro dosažení těchto cílů kapacity oproti očekávanému využití.

Kontrolní seznam návrhu

Zahajte strategii návrhu na základě kontrolního seznamu pro kontrolu návrhu pro téma Efektivita výkonu pro definování směrného plánu založeného na klíčových ukazatelích výkonu pro úlohy Služby Machine Learning.

  • Cíle výkonu: Určete přijatelnou dobu trénování a frekvenci opětovného trénování pro váš model. Nastavení jasného cíle pro dobu trénování spolu s testováním vám pomůže určit výpočetní prostředky, procesor a GPU a skladové položky procesoru potřebné ke splnění cíle trénování.

  • Cíle výkonu: Definujte přijatelné cíle výkonu pro nasazené modely, včetně doby odezvy, požadavků za sekundu, chybovosti a doby provozu. Cíle výkonu fungují jako srovnávací test efektivity nasazeného modelu. Cíle vám můžou pomoct s určením procesoru a GPU, volbami skladové položky procesoru a požadavky na škálování.

  • Splnění požadavků na kapacitu: Zvolte správné výpočetní prostředky pro trénování modelu.

  • Splnění požadavků na kapacitu: Zvolte správné výpočetní prostředky pro nasazení modelu.

  • Splnění požadavků na kapacitu: Zvolte prostředí nasazení s funkcemi automatického škálování a přidejte a odeberte kapacitu při kolísání poptávky.

  • Dosažení a udržení výkonu: Nepřetržitě monitorujte výkon nasazených modelů, kontrolujte výsledky a proveďte odpovídající akce.

  • Dosažení a udržení výkonu: Nepřetržitě monitorujte výkon infrastruktury nasazených modelů, kontrolujte výsledky a proveďte odpovídající akce. Monitorujte infrastrukturu trénování, abyste měli jistotu, že splňujete požadavky na dobu trénování.

Doporučení
Doporučení Výhoda
Výběr vhodných výpočetních služeb pro trénování modelu: Pokud potřebujete automatické škálování, zvažte výpočetní clustery Služby Machine Learning nad výpočetními instancemi pro trénování modelu.

Optimalizujte výpočetní prostředky na základě požadavků na trénování. Nejprve si vyberte mezi procesory a GPU. Ve výchozím nastavení jsou procesory, ale zvažte gpu pro úlohy, jako je hluboké učení, zpracování obrázků nebo videa nebo velké objemy dat. Dále zvolte skladovou položku image, která nejlépe vyhovuje vaší úloze.

Pomocí testování zvolte výpočetní možnost, která při určování směrného plánu optimalizuje náklady oproti době trénování.
Výběr správného výpočetního prostředí je kritický, protože to přímo ovlivňuje dobu trénování. Volba správné skladové položky a procesoru a GPU zajistí, aby trénování modelu splňovalo vaše požadavky a výkonnostní cíle. Výběr skladové položky s nízkým výkonem, která je nadměrně užídaná, může vést k neúnosně dlouhému trénování a problémům s výkonem.

Výpočetní clustery umožňují zvýšit výkon horizontálním navýšením kapacity úloh, které podporují horizontální škálování. Tato metoda poskytuje flexibilitu pro zpracování úloh s různými požadavky a umožňuje přidávat nebo odebírat počítače podle potřeby.
Škálování prostředí nasazení modelu: Využijte možnosti automatického škálování prostředí nasazení. V prostředích nasazení AKS použijte automatické škálování clusteru ke škálování podle poptávky. U online koncových bodů můžete automaticky škálovat prostřednictvím integrace s funkcí automatického škálování služby Azure Monitor. Automatické škálování upraví počet instancí nasazeného modelu tak, aby odpovídal poptávce.
Monitorování výkonu modelu: Monitorujte výkon nasazených modelů. Sledování výkonu modelů v produkčním prostředí vás upozorní na potenciální problémy, jako je posun dat, posun predikce, kvalita dat a posun přiřazení funkcí.

Monitorování posunu dat pomáhá detekovat změny ve vstupních datech, které můžou vést k poklesu výkonu modelu. Správa posunu dat pomáhá zajistit, aby model poskytoval přesné výsledky v průběhu času.
Monitorování infrastruktury: Monitorování online koncových bodů a integrace se službou Monitor za účelem sledování a monitorování příslušných metrik a protokolů Povolte Application Insights při vytváření online nasazení.

Monitorujte trénovací infrastrukturu a zkontrolujte využití prostředků, jako je využití paměti a procesoru nebo GPU při trénování modelů, abyste měli jistotu, že splňujete požadavky na základní hodnoty.
Monitorování koncových bodů poskytuje přehled o metrikách, jako je latence požadavků a požadavků za minutu. Výkon můžete porovnat s vaším standardním plánem a tyto informace použít k odpovídajícím změnám výpočetních prostředků. Monitorování metrik, jako jsou síťové bajty, vás může upozornit, pokud se blížíte k limitům kvót a bráníte omezování.

Stejně tak monitorování trénovacího prostředí poskytuje informace pro provádění změn v trénovacím prostředí. Pomocí této informace se můžete rozhodnout vertikálně navýšit nebo snížit kapacitu, vertikálně navýšit nebo snížit kapacitu s různými výkonnými skladovými jednotkami nebo zvolit mezi procesory nebo GPU.

Zásady Azure

Azure poskytuje rozsáhlou sadu předdefinovaných zásad souvisejících se službou Machine Learning a jeho závislostmi. Některá z předchozích doporučení je možné auditovat prostřednictvím zásad Azure. Vezměte v úvahu následující zásady, které souvisejí se zabezpečením:

Zvažte následující zásady, které souvisejí s optimalizací nákladů:

Vezměte v úvahu následující zásady, které souvisejí s efektivitou provozu:

Pokud chcete zajistit komplexní zásady správného řízení, projděte si Azure Policy předdefinovaných definic pro Machine Learning.

Doporučení Advisoru

Advisor je přizpůsobený cloudový konzultant, který vám pomůže dodržovat osvědčené postupy pro optimalizaci nasazení Azure. Doporučení Advisoru vám můžou pomoct zlepšit spolehlivost, zabezpečení, nákladovou efektivitu, výkon a efektivitu provozu služby Machine Learning.

Zvažte následující doporučení Advisoru pro zabezpečení:

  • Pracovní prostory by měly být šifrované pomocí klíče spravovaného zákazníkem (CMK).
  • Pracovní prostory by měly používat privátní propojení.
  • Pracovní prostory by měly zakázat veřejný síťový přístup.
  • Výpočetní prostředky by měly být ve virtuální síti.
  • Výpočetní instance by se měly znovu vytvořit, aby získaly nejnovější aktualizace softwaru.

Pro dosažení efektivity provozu zvažte následující doporučení Advisoru :

  • Protokoly prostředků v pracovních prostorech Služby Machine Learning by měly být povolené.

Další kroky

Zvažte tyto články jako zdroje, které ukazují doporučení zvýrazněná v tomto článku.