Kurz: Použití návrháře k nasazení modelu strojového učení

V první části tohoto kurzu jste vytrénovali model lineární regrese, který predikuje ceny aut. V této druhé části nasadíte model pomocí návrháře služby Azure Machine Learning, aby ho mohli používat i ostatní.

Poznámka:

Návrhář podporuje dva typy komponent: klasické předem připravené komponenty (v1) a vlastní komponenty (v2). Tyto dva typy součástí nejsou kompatibilní.

Klasické předem připravené komponenty poskytují předem připravené komponenty hlavně pro zpracování dat a tradiční úlohy strojového učení, jako je regrese a klasifikace. Tento typ komponenty bude nadále podporován, ale nebudou přidány žádné nové součásti.

Vlastní komponenty umožňují zabalit vlastní kód jako součást. Podporují sdílení komponent mezi pracovními prostory a bezproblémové vytváření v rozhraních Machine Learning Studio, CLI v2 a SDK v2.

U nových projektů doporučujeme používat vlastní komponenty, které jsou kompatibilní se službou Azure Machine Learning verze 2 a budou dostávat nové aktualizace.

Tento článek se týká klasických předem připravených komponent a není kompatibilní s rozhraním příkazového řádku v2 a sadou SDK v2.

V tomto kurzu se naučíte:

  • Vytvořte kanál odvozování v reálném čase.
  • Vytvořte cluster pro odvozování.
  • Nasaďte koncový bod v reálném čase.
  • Otestujte koncový bod v reálném čase.

Požadavky

V jednom z částí kurzu se dozvíte, jak v návrháři trénovat a ohodnocovat model strojového učení.

Důležité

Pokud v tomto dokumentu nevidíte grafické prvky, jako jsou tlačítka v studiu nebo návrháři, možná nemáte správnou úroveň oprávnění k pracovnímu prostoru. Obraťte se na správce předplatného Azure a ověřte, že máte udělenou správnou úroveň přístupu. Další informace najdete v tématu Správa uživatelů a rolí.

Vytvoření kanálu odvozování v reálném čase

Pokud chcete nasadit kanál, musíte nejprve převést trénovací kanál na kanál pro odvozování v reálném čase. Při tomto procesu budou odebrány trénovací komponenty a přidány vstupy a výstupy webové služby pro zpracování žádostí.

Poznámka:

Funkce kanálu pro odvozování podporuje trénovací kanály, které obsahují jenom předdefinované komponenty návrháře a které mají komponentu, jako je trénování modelu , který vypíše natrénovaný model.

Vytvoření kanálu odvozování v reálném čase

  1. Na bočním navigačním panelu vyberte Kanály a otevřete úlohu kanálu, kterou jste vytvořili. Na stránce podrobností nad plátnem kanálu vyberte tři tečky ... a pak zvolte Vytvořit kanál> odvozování v reálném čase.

    Snímek obrazovky s kanálem pro odvozování na stránce podrobností úlohy kanálu

    Váš nový kanál teď vypadá takto:

    Snímek obrazovky znázorňující očekávanou konfiguraci kanálu po přípravě na nasazení

    Když vyberete Vytvořit kanál odvozování, stane se několik věcí:

    • Vytrénovaný model je uložen jako komponenta Dataset v paletě komponent. Najdete ho v části Moje datové sady.
    • Trénovací komponenty, jako je trénování modelu a rozdělení dat , se odeberou.
    • Uložený natrénovaný model se přidá zpět do kanálu.
    • Přidají se vstupní komponenty webové služby a výstup webové služby. Tyto komponenty ukazují, kde uživatelská data zadávají kanál a kde se vrací data.

    Poznámka:

    Vstup webové služby ve výchozím nastavení očekává stejné schéma dat jako výstupní data komponenty, která se připojují ke stejnému podřízeného portu. V této ukázce se vstupní data webových služeb a data cen automobilů (Raw) připojují ke stejné podřízené komponentě, takže vstup webové služby očekává stejné datové schéma jako automobile price data (Raw) a cílový sloupec price proměnných je součástí schématu. Při vyhodnocování dat ale nebudete znát hodnoty cílových proměnných. V takovém případě můžete odebrat cílový sloupec proměnné v kanálu odvozování pomocí komponenty Vybrat sloupce v datové sadě . Ujistěte se, že výstup výběru sloupců v datové sadě , který odebírá cílový sloupec proměnné, je připojený ke stejnému portu jako výstup komponenty Vstup webové služby.

  2. Vyberte Konfigurovat a odeslat a použijte stejný cílový výpočetní objekt a experiment, který jste použili v první části.

    Pokud se jedná o první úlohu, může trvat až 20 minut, než se kanál dokončí. Výchozí nastavení výpočetních prostředků má minimální velikost uzlu 0, což znamená, že návrhář musí po nečinnosti přidělit prostředky. Opakované úlohy kanálu zabírají méně času, protože výpočetní prostředky jsou už přidělené. Kromě toho návrhář používá výsledky uložené v mezipaměti pro každou komponentu k dalšímu zlepšení efektivity.

  3. Výběrem podrobností úlohy úlohy odvozování v reálném čase v levém podokně přejděte na podrobnosti kanálu pro odvozování v reálném čase.

  4. Na stránce podrobností úlohy vyberte Nasadit .

    Snímek obrazovky znázorňující nasazení na stránce podrobností úlohy

Vytvoření clusteru pro odvozování

V zobrazeném dialogovém okně můžete vybrat z libovolného existujícího clusteru Azure Kubernetes Service (AKS) pro nasazení modelu. Pokud cluster AKS nemáte, vytvořte ho pomocí následujícího postupu.

  1. Výběrem možnosti Compute v dialogovém okně přejděte na stránku Výpočetní prostředky.

  2. Na navigačním pásu karet vyberte Clustery Kubernetes>+ Nové.

    Snímek obrazovky znázorňující, jak se dostat do nového podokna clusteru pro odvození

  3. V podokně odvození clusteru nakonfigurujte novou službu Kubernetes Service.

  4. Zadejte aks-compute pro název výpočetních prostředků.

  5. Vyberte nejbližší oblast, která je dostupná pro oblast.

  6. Vyberte Vytvořit.

    Poznámka:

    Vytvoření nové služby AKS trvá přibližně 15 minut. Stav zřizování můžete zkontrolovat na stránce Odvozování clusterů .

Nasazení koncového bodu v reálném čase

Po dokončení zřizování služby AKS se vraťte do kanálu odvozování v reálném čase a dokončete nasazení.

  1. Vyberte Nasadit nad plátnem.

  2. Vyberte Nasadit nový koncový bod v reálném čase.

  3. Vyberte cluster AKS, který jste vytvořili.

    Snímek obrazovky znázorňující, jak nastavit nový koncový bod v reálném čase

    Můžete také změnit nastavení Upřesnit pro koncový bod v reálném čase.

    Upřesňující nastavení Popis
    Povolení diagnostiky a shromažďování dat Application Insights Umožňuje Aplikace Azure lication Insights shromažďovat data z nasazených koncových bodů.
    Ve výchozím nastavení: false.
    Časový limit bodování Časový limit v milisekundách, který se má vynutit pro vyhodnocování volání webové služby.
    Ve výchozím nastavení: 60000.
    Povolené automatické škálování Umožňuje automatické škálování webové služby.
    Ve výchozím nastavení platí.
    Minimální repliky Minimální počet kontejnerů, které se mají použít při automatickém škálování této webové služby.
    Ve výchozím nastavení: 1.
    Maximální počet replik Maximální počet kontejnerů, které se mají použít při automatickém škálování této webové služby.
    Ve výchozím nastavení: 10.
    Cílové využití Cílové využití (v procentech), které by se automatické škálování mělo pokusit zachovat pro tuto webovou službu.
    Ve výchozím nastavení: 70.
    Období aktualizace Jak často (v sekundách) se automatické škálování pokusí tuto webovou službu škálovat.
    Ve výchozím nastavení: 1.
    Kapacita rezervy procesoru Počet jader procesoru, která se mají přidělit pro tuto webovou službu.
    Ve výchozím nastavení: 0.1.
    Kapacita rezervy paměti Velikost paměti (v GB) pro přidělení této webové služby.
    Ve výchozím nastavení: 0,5.
  4. Vyberte Nasadit.

    Po dokončení nasazení se zobrazí oznámení o úspěchu z centra oznámení. Může to trvat několik minut.

    Snímek obrazovky s oznámením o nasazení

Tip

Pokud v poli nastavení koncového bodu v reálném čase vyberete službu Azure Container Instance for Compute, můžete ji také nasadit do služby Azure Container Instance. Azure Container Instance se používá k testování nebo vývoji. Azure Container Instance můžete použít pro úlohy založené na procesoru s nízkou škálou, které vyžadují méně než 48 GB paměti RAM.

Testování koncového bodu v reálném čase

Po dokončení nasazení můžete koncový bod v reálném čase zobrazit tak, že přejdete na stránku Koncové body .

  1. Na stránce Koncové body vyberte koncový bod, který jste nasadili.

    Na kartě Podrobnosti můžete zobrazit další informace, jako je identifikátor REST URI, definice Swaggeru, stav a značky.

    Na kartě Využití najdete vzorový kód spotřeby, klíče zabezpečení a nastavit metody ověřování.

    Na kartě Protokoly nasazení najdete podrobné protokoly nasazení koncového bodu v reálném čase.

  2. Pokud chcete koncový bod otestovat, přejděte na kartu Test . Tady můžete zadat testovací data a vybrat Test ověřit výstup koncového bodu.

Aktualizace koncového bodu v reálném čase

Online koncový bod můžete aktualizovat pomocí nového modelu natrénovaného v návrháři. Na stránce podrobností o online koncovém bodu vyhledejte předchozí úlohu trénovacího kanálu a úlohu kanálu odvozování.

  1. Koncept trénovacího kanálu najdete a upravíte na domovské stránce návrháře.

    Nebo můžete otevřít odkaz na úlohu trénovacího kanálu a pak ji naklonovat do nového konceptu kanálu, abyste mohli pokračovat v úpravách.

    Snímek obrazovky zobrazující odkaz na trénovací úlohu na stránce podrobností koncového bodu

  2. Po odeslání upraveného trénovacího kanálu přejděte na stránku podrobností úlohy.

  3. Po dokončení úlohy klikněte pravým tlačítkem na Trénovat model a vyberte Registrovat data.

    Snímek obrazovky znázorňující zaregistrovaný natrénovaný model jako datovou sadu

    Zadejte název a vyberte Typ souboru .

    Snímek obrazovky s vybranou možností zaregistrovat jako datový prostředek s novým datovým assetem

  4. Po úspěšné registraci datové sady otevřete koncept kanálu odvozování nebo naklonujte předchozí úlohu kanálu odvozování do nového konceptu. V konceptu kanálu odvozování nahraďte předchozí natrénovaný model zobrazený jako uzel MD-XXXX připojený k komponentě Určení skóre modelu nově zaregistrovanou datovou sadou.

    Snímek obrazovky znázorňující, jak upravit kanál odvozování

  5. Pokud potřebujete aktualizovat část předběžného zpracování dat v trénovacím kanálu a chcete ji aktualizovat do kanálu odvozování, zpracování je podobné jako výše uvedené kroky.

    Stačí zaregistrovat výstup transformace komponenty transformace jako datovou sadu.

    Potom ručně nahraďte komponentu TD v kanálu odvozování zaregistrovanou datovou sadou.

    Snímek obrazovky znázorňující, jak nahradit součást transformace

  6. Po úpravě kanálu odvozování pomocí nově natrénovaného modelu nebo transformace ho odešlete. Po dokončení úlohy ji nasaďte do existujícího online koncového bodu nasazeného dříve.

    Snímek obrazovky znázorňující, jak nahradit existující koncový bod v reálném čase

Omezení

  • Kvůli omezení přístupu k úložišti dat se při nasazení do koncového bodu v reálném čase automaticky odeberou, pokud váš kanál odvozování obsahuje součásti importu dat nebo exportu dat .

  • Pokud máte datové sady v kanálu pro odvozování v reálném čase a chcete je nasadit do koncového bodu v reálném čase, tento tok v současné době podporuje jenom datové sady zaregistrované v úložišti dat objektů blob . Pokud chcete použít datové sady z jiných úložišť dat typu, můžete se pomocí funkce Select Column spojit s počáteční datovou sadou s nastavením výběru všech sloupců, zaregistrovat výstupy select Column jako datovou sadu souboru a potom nahradit počáteční datovou sadu v kanálu pro odvozování v reálném čase touto nově registrovanou datovou sadou.

  • Pokud graf odvozování obsahuje komponentu Zadat data ručně , která není připojená ke stejnému portu jako součást Vstup webové služby, komponenta Zadat data ručně se během zpracování volání HTTP nespustí. Alternativním řešením je registrovat výstupy této komponenty Zadat data ručně jako datovou sadu a potom v konceptu kanálu odvozování nahradit komponentu Zadat data ručně registrovanou datovou sadou.

    Snímek obrazovky znázorňující, jak upravit kanál odvozování obsahující komponentu pro zadávání dat ručně

Vyčištění prostředků

Důležité

Prostředky, které jste vytvořili, můžete použít jako předpoklady pro další kurzy a články s postupy služby Azure Machine Learning.

Odstranit vše

Pokud nemáte v úmyslu používat nic, co jste vytvořili, odstraňte celou skupinu prostředků, takže vám nebudou účtovány žádné poplatky.

  1. Na webu Azure Portal vyberte skupiny prostředků na levé straně okna.

    Odstranění skupiny prostředků na webu Azure Portal

  2. V seznamu vyberte skupinu prostředků, kterou jste vytvořili.

  3. Vyberte Odstranit skupinu prostředků.

Odstraněním skupiny prostředků se odstraní také všechny prostředky, které jste vytvořili v návrháři.

Odstranění jednotlivých prostředků

V návrháři, ve kterém jste experiment vytvořili, odstraňte jednotlivé prostředky tak, že je vyberete a pak vyberete tlačítko Odstranit .

Cílový výpočetní objekt, který jste zde vytvořili, automaticky škáluje na nula uzlů, když se nepoužívá. Tato akce se provede, aby se minimalizovaly poplatky. Pokud chcete odstranit cílový výpočetní objekt, postupujte takto:

Odstranění prostředků

Datové sady z pracovního prostoru můžete zrušit tak, že vyberete každou datovou sadu a vyberete Zrušit registraci.

Zrušení registrace datové sady

Pokud chcete datovou sadu odstranit, přejděte na účet úložiště pomocí webu Azure Portal nebo Průzkumník služby Azure Storage a odstraňte tyto prostředky ručně.

V tomto kurzu jste zjistili, jak v návrháři vytvořit, nasadit a využívat model strojového učení. Další informace o používání návrháře najdete v následujících článcích: