Správa a optimalizace nákladů na azure Machine Učení

Zjistěte, jak spravovat a optimalizovat náklady při trénování a nasazování modelů strojového učení do služby Azure Machine Učení.

Následující tipy vám pomůžou spravovat a optimalizovat náklady na výpočetní prostředky.

  • Konfigurace trénovacích clusterů pro automatické škálování
  • Konfigurace spravovaných online koncových bodů pro automatické škálování
  • Nastavení kvót pro vaše předplatné a pracovní prostory
  • Nastavení zásad ukončení v úloze trénování
  • Použití virtuálních počítačů s nízkou prioritou
  • Naplánování automatického vypnutí a spuštění výpočetních instancí
  • Použití rezervované instance virtuálního počítače Azure
  • Místní trénování
  • Paralelizace trénování
  • Nastavení zásad uchovávání a odstraňování dat
  • Nasazení prostředků do stejné oblasti
  • Odstranění neúspěšných nasazení, pokud se pro ně vytvoří výpočty

Informace o plánování a monitorování nákladů najdete v plánu správy nákladů na službu Azure Machine Učení guide.

Důležité

Položky označené (Preview) v tomto článku jsou aktuálně ve verzi Public Preview. Verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučuje se pro produkční úlohy. Některé funkce se nemusí podporovat nebo mohou mít omezené možnosti. Další informace najdete v dodatečných podmínkách použití pro verze Preview v Microsoft Azure.

Použití výpočetního clusteru Azure Machine Učení (AmlCompute)

S neustále se měnícími daty potřebujete rychlé a zjednodušené trénování modelu a opětovné trénování, abyste zachovali přesné modely. Průběžné trénování je ale nákladné, zejména pro modely hlubokého učení na grafických procesorech.

Azure Machine Učení uživatelé můžou používat spravovaný výpočetní cluster Azure machine Učení označovaný také jako AmlCompute. AmlCompute podporuje různé možnosti GPU a procesoru. AmlCompute je interně hostovaný jménem vašeho předplatného službou Azure Machine Učení. Poskytuje stejné zabezpečení, dodržování předpisů a zásad správného řízení na podnikové úrovni v cloudovém měřítku Azure IaaS.

Vzhledem k tomu, že tyto výpočetní fondy jsou v infrastruktuře IaaS Azure, můžete nasadit, škálovat a spravovat trénování se stejnými požadavky na zabezpečení a dodržování předpisů jako zbytek infrastruktury. K těmto nasazením dochází ve vašem předplatném a dodržuje pravidla zásad správného řízení. Přečtěte si další informace o výpočetních Učení Azure Machine.

Konfigurace trénovacích clusterů pro automatické škálování

Automatické škálování clusterů na základě požadavků vaší úlohy pomáhá snížit náklady, abyste mohli používat jenom to, co potřebujete.

Clustery AmlCompute jsou navržené tak, aby se dynamicky škálují na základě vaší úlohy. Cluster je možné vertikálně navýšit na maximální počet uzlů, které nakonfigurujete. Po dokončení každé úlohy cluster uvolní uzly a škáluje se na nakonfigurovaný minimální počet uzlů.

Důležité

Pokud se chcete vyhnout poplatkům, pokud nejsou spuštěné žádné úlohy, nastavte minimální počet uzlů na 0. Toto nastavení umožňuje službě Azure Machine Učení zrušit přidělení uzlů, když se nepoužívají. Jakákoli hodnota větší než 0 zachová tento počet uzlů spuštěných, i když se nepoužívají.

Můžete také nakonfigurovat dobu nečinnosti uzlu před vertikálním snížením kapacity. Ve výchozím nastavení je doba nečinnosti před snížením kapacity nastavená na 120 sekund.

  • Pokud provádíte méně iterativní experimentování, zkraťte tuto dobu, abyste ušetřili náklady.
  • Pokud provádíte vysoce iterativní experimentování s vývojem a testováním, možná budete muset prodloužit čas, abyste po každé změně trénovacího skriptu nebo prostředí neplatili za konstantní vertikální navýšení a snížení kapacity.

Clustery AmlCompute je možné nakonfigurovat pro měnící se požadavky úloh na webu Azure Portal pomocí třídy AmlCompute SDK, rozhraní příkazového řádku AmlCompute s rozhraním REST API.

Konfigurace spravovaných online koncových bodů pro automatické škálování

Automatické škálování automaticky spustí správné množství prostředků ke zvládnutí zatížení u vaší aplikace. Spravované online koncové body podporují automatické škálování prostřednictvím integrace s funkcí automatického škálování služby Azure Monitor.

Automatické škálování služby Azure Monitor podporuje bohatou sadu pravidel. Můžete nakonfigurovat škálování na základě metrik (například využití >procesoru 70 %), škálování na základě plánu (například pravidla škálování pro špičku pracovní doby) nebo kombinaci. Další informace najdete v tématu Automatické škálování online koncových bodů.

Nastavení kvót pro prostředky

AmlCompute se dodává s konfigurací kvóty (nebo limitu). Tato kvóta je podle rodiny virtuálních počítačů (například řady Dv2, řady NCv3) a pro každé předplatné se liší podle oblasti. Předplatná začínají malými výchozími nastaveními, abyste se mohli pustit do provozu, ale toto nastavení použijte k řízení množství prostředků Amlcompute, které je možné v předplatném rozjet.

Nakonfigurujte také kvótu na úrovni pracovního prostoru podle řady virtuálních počítačů pro každý pracovní prostor v rámci předplatného. Díky tomu můžete mít podrobnější kontrolu nad náklady, které může každý pracovní prostor potenciálně nastat a omezit určité rodiny virtuálních počítačů.

Pokud chcete nastavit kvóty na úrovni pracovního prostoru, začněte na webu Azure Portal. Vyberte libovolný pracovní prostor ve vašem předplatném a v levém podokně vyberte Využití a kvóty . Pak vyberte kartu Konfigurovat kvóty a zobrazte kvóty. K nastavení kvóty potřebujete oprávnění v oboru předplatného, protože se jedná o nastavení, které ovlivňuje více pracovních prostorů.

Nastavení zásad automatického dokončování úloh

V některých případech byste měli nakonfigurovat trénovací spuštění tak, aby omezila jejich dobu trvání nebo je ukončila včas. Pokud například používáte integrované ladění hyperparametrů nebo automatizované strojové učení služby Azure Machine Učení.

Tady je několik možností, které máte:

  • Definujte parametr volaný max_run_duration_seconds ve vaší runConfiguration, který určuje maximální dobu trvání spuštění, na kterou můžete použít výpočetní prostředky, které zvolíte (místní nebo vzdálené cloudové výpočetní prostředky).
  • Pro ladění hyperparametrů definujte zásadu předčasného ukončení ze zásad Banditu, zásadu zastavení mediánu nebo zásadu výběru zkrácení. K dalšímu řízení úklidů hyperparametrů použijte parametry, jako max_total_runs jsou nebo max_duration_minutes.
  • U automatizovaného strojového učení nastavte podobné zásady ukončení pomocí příznaku enable_early_stopping . Použijte také vlastnosti, jako iteration_timeout_minutes je a experiment_timeout_minutes k řízení maximální doby trvání úlohy nebo pro celý experiment.

Použití virtuálních počítačů s nízkou prioritou

Azure umožňuje používat nadbytečnou nevyužitou kapacitu jako virtuální počítače s nízkou prioritou napříč škálovacími sadami virtuálních počítačů, službou Batch a službou Machine Učení. Tato přidělení jsou předprázdná, ale v porovnání s vyhrazenými virtuálními počítači mají nižší cenu. Obecně doporučujeme pro úlohy Batch používat virtuální počítače s nízkou prioritou. Měli byste je použít také v případě, že přerušení je možné obnovit buď prostřednictvím opětovného odeslání (pro odvozování služby Batch), nebo restartováním (pro trénování hlubokého učení s kontrolním bodem).

Virtuální počítače s nízkou prioritou mají jednu kvótu oddělenou od hodnoty vyhrazené kvóty, což je řada virtuálních počítačů. Přečtěte si další informace o kvótách AmlCompute.

Virtuální počítače s nízkou prioritou nefungují u výpočetních instancí, protože potřebují podporovat interaktivní prostředí poznámkových bloků.

Plánování výpočetních instancí

Když vytvoříte výpočetní instanci, zůstane virtuální počítač zapnutý, aby byl dostupný pro vaši práci.

Použití rezervovaných instancí

Dalším způsobem, jak ušetřit peníze na výpočetních prostředcích, je rezervovaná instance virtuálního počítače Azure. S touto nabídkou se zavazujete k ročním nebo tříletým termínům. Tyto slevy se účtují až do 72 % cen průběžných plateb a použijí se přímo na měsíční fakturu za Azure.

Azure Machine Učení Compute podporuje rezervované instance ze své podstaty. Pokud si koupíte rezervovanou instanci na jeden nebo tři roky, automaticky uplatníme slevu na váš počítač Azure Učení spravovaných výpočetních prostředků.

Paralelizace trénování

Jednou z klíčových metod optimalizace nákladů a výkonu je paralelizace úlohy pomocí paralelní komponenty ve službě Azure Machine Učení. Paralelní komponenta umožňuje paralelně spouštět úlohu pomocí mnoha menších uzlů, takže umožňuje horizontální škálování. Existuje režijní náklady na paralelizaci. V závislosti na úloze a stupni paralelismu, kterého lze dosáhnout, to může nebo nemusí být možností. Další podrobnosti najdete na tomto odkazu v dokumentaci ParallelComponent .

Nastavení zásad uchovávání a odstraňování dat

Při každém spuštění kanálu se vygenerují zprostředkující datové sady v každém kroku. Tyto přechodné datové sady v průběhu času zabírají místo v účtu úložiště. Zvažte nastavení zásad pro správu dat v průběhu jejich životního cyklu za účelem archivace a odstranění datových sad. Další informace najdete v tématu Optimalizace nákladů automatizací úrovní přístupu služby Azure Blob Storage.

Nasazení prostředků do stejné oblasti

Výpočetní prostředky umístěné v různých oblastech můžou zaznamenat latenci sítě a zvýšit náklady na přenos dat. Náklady na síť Azure se účtují z odchozí šířky pásma z datových center Azure. Pokud chcete snížit náklady na síť, nasaďte všechny prostředky v dané oblasti. Zřízení pracovního prostoru azure machine Učení a závislých prostředků ve stejné oblasti jako data může pomoct snížit náklady a zvýšit výkon.

V případě hybridních cloudových scénářů, jako jsou scénáře využívající ExpressRoute, může být někdy cenově výhodnější přesunout všechny prostředky do Azure, aby se optimalizovaly náklady na síť a latence.

Odstranění neúspěšných nasazení, pokud se pro ně vytvoří výpočty

Spravovaný online koncový bod používá virtuální počítače pro nasazení. Pokud jste odeslali žádost o vytvoření online nasazení a nasazení selhalo, mohlo dojít k předání fáze při vytvoření výpočetních prostředků. V takovém případě se za neúspěšné nasazení účtují poplatky. Pokud jste dokončili ladění nebo šetření selhání, můžete odstranit neúspěšná nasazení a ušetřit tak náklady.

Další kroky