Sdílet prostřednictvím


Spuštění úlohy R pro trénování modelu

PLATÍ PRO: Rozšíření Azure CLI ml v2 (aktuální)

Tento článek vysvětluje, jak použít skript jazyka R, který jste přizpůsobili spouštění v produkčním prostředí , a nastavit ho tak, aby běžel jako úloha jazyka R pomocí azure Machine Learning CLI V2.

Poznámka:

I když název tohoto článku odkazuje na trénování modelu, můžete ve skutečnosti spustit jakýkoli druh skriptu jazyka R, pokud splňuje požadavky uvedené v článku o přizpůsobení.

Požadavky

Vytvoření složky s touto strukturou

Vytvořte pro svůj projekt tuto strukturu složek:

📁 r-job-azureml
├─ src
│  ├─ azureml_utils.R
│  ├─ r-source.R
├─ job.yml

Důležité

Veškerý zdrojový kód je v adresáři src .

  • Zdroj r. Soubor R je skript jazyka R , který jste přizpůsobili spouštění v produkčním prostředí. Ujistěte se, že postupujete podle kroků pro uložení a protokolování modelu v tomto skriptu.
  • Azureml_utils . Soubor R je nutný. Tento zdrojový kód použijte pro obsah souboru.

Příprava úlohy YAML

Azure Machine Learning CLI v2 má různá schémata YAML pro různé operace. Pomocí schématu YAML úlohy odešlete úlohu v souboru job.yml, který je součástí tohoto projektu.

Potřebujete shromáždit konkrétní informace, které se mají vložit do YAML:

  • Název registrovaného datového prostředku, který použijete jako vstup dat (s verzí): azureml:<REGISTERED-DATA-ASSET>:<VERSION>
  • Název prostředí, které jste vytvořili (s verzí): azureml:<R-ENVIRONMENT-NAME>:<VERSION>
  • Název výpočetního clusteru: azureml:<COMPUTE-CLUSTER-NAME>

Tip

U artefaktů služby Azure Machine Learning, které vyžadují verze (datové prostředky, prostředí), můžete pomocí identifikátoru URI azureml:<AZUREML-ASSET>@latest zástupce získat nejnovější verzi tohoto artefaktu, pokud nepotřebujete nastavit konkrétní verzi.

Ukázkové schéma YAML pro odeslání úlohy

Upravte soubor job.yml tak, aby obsahoval následující položky. Nezapomeňte nahradit zobrazené <IN-BRACKETS-AND-CAPS> hodnoty a odebrat hranaté závorky.

$schema: https://azuremlschemas.azureedge.net/latest/commandJob.schema.json
# the Rscript command goes in the command key below. Here you also specify 
# which parameters are passed into the R script and can reference the input
# keys and values further below
# Modify any value shown below <IN-BRACKETS-AND-CAPS> (remove the brackets)
command: >
Rscript <NAME-OF-R-SCRIPT>.R
--data_file ${{inputs.datafile}}  
--other_input_parameter ${{inputs.other}}
code: src   # this is the code directory
inputs:
  datafile: # this is a registered data asset
    type: uri_file
    path: azureml:<REGISTERED-DATA-ASSET>@latest
  other: 1  # this is a sample parameter, which is the number 1 (as text)
environment: azureml:<R-ENVIRONMENT-NAME>@latest
compute: azureml:<COMPUTE-CLUSTER-OR-INSTANCE-NAME>
experiment_name: <NAME-OF-EXPERIMENT>
description: <DESCRIPTION>

Odeslání úlohy

V následujícíchpříkazch

  • Název pracovního prostoru Azure Machine Learning
  • Název skupiny prostředků, ve které je pracovní prostor
  • Předplatné, ve kterém je pracovní prostor

Najděte tyto hodnoty z studio Azure Machine Learning:

  1. Přihlaste se a otevřete pracovní prostor.
  2. V pravém horním studio Azure Machine Learning panelu nástrojů vyberte název pracovního prostoru.
  3. Hodnoty můžete zkopírovat ze zobrazeného oddílu.

Snímek obrazovky: Najděte hodnoty, které se mají použít v příkazu rozhraní příkazového řádku.

Pokud chcete úlohu odeslat, spusťte v okně terminálu následující příkazy:

  1. Změňte adresáře na r-job-azureml.

    cd r-job-azureml
    
  2. Přihlaste se do Azure. Pokud to děláte z výpočetní instance služby Azure Machine Learning, použijte:

    az login --identity
    

    Pokud nejste ve výpočetní instanci, vymiďte --identity ji a postupujte podle pokynů a otevřete okno prohlížeče, které se má ověřit.

  3. Ujistěte se, že máte nejnovější verze rozhraní příkazového řádku a ml rozšíření:

    az upgrade
    
  4. Pokud máte více předplatných Azure, nastavte aktivní předplatné na předplatné, které používáte pro svůj pracovní prostor. (Tento krok můžete přeskočit, pokud máte přístup jenom k jednomu předplatnému.) Nahraďte <SUBSCRIPTION-NAME> názvem předplatného. Odeberte také hranaté závorky <>.

    az account set --subscription "<SUBSCRIPTION-NAME>"
    
  5. Teď pomocí rozhraní příkazového řádku odešlete úlohu. Pokud to provádíte u výpočetní instance ve svém pracovním prostoru, můžete pro název pracovního prostoru a skupinu prostředků použít proměnné prostředí, jak je znázorněno v následujícím kódu. Pokud nejste ve výpočetní instanci, nahraďte tyto hodnoty názvem pracovního prostoru a skupinou prostředků.

    az ml job create -f job.yml  --workspace-name $CI_WORKSPACE --resource-group $CI_RESOURCE_GROUP
    

Po odeslání úlohy můžete zkontrolovat stav a výsledky v studiu:

  1. Přihlaste se k studio Azure Machine Learning.
  2. Vyberte pracovní prostor, pokud ještě není načtený.
  3. V levém navigačním panelu vyberte Úlohy.
  4. Vyberte název experimentu, který jste použili k trénování modelu.
  5. Výběrem zobrazovaného názvu úlohy zobrazíte podrobnosti a artefakty úlohy, včetně metrik, obrázků, podřízených úloh, výstupů, protokolů a kódu použitého v úloze.

Registrace modelu

Po dokončení trénovací úlohy zaregistrujte model, pokud ho chcete nasadit. Začněte v studiu ze stránky zobrazující podrobnosti o vaší úloze.

  1. Po dokončení úlohy vyberte Výstupy a protokoly a zobrazte výstupy úlohy.

  2. Otevřete složku modelů a ověřte, že jsou k dispozici crate.bin a MLmodel. Pokud ne, zkontrolujte protokoly a zkontrolujte, jestli nedošlo k chybě.

  3. Na panelu nástrojů nahoře vyberte + Zaregistrovat model.

    Snímek obrazovky znázorňující část Úloha studia s otevřeným oddílem Výstupy

  4. Nepoužívejte typ modelu MLflow , i když je zjištěn. Změňte typ modelu z výchozího MLflow na Nezadaný typ. Když ho necháte jako MLflow , dojde k chybě.

  5. Pro výstup úlohy vyberte modely, složku, která obsahuje model.

  6. Vyberte Další.

  7. Zadejte název, který chcete použít pro svůj model. Pokud chcete, přidejte popis, verzi a značky .

  8. Vyberte Další.

  9. Zkontrolujte informace.

  10. Vyberte Zaregistrovat.

V horní části stránky se zobrazí potvrzení, že je model zaregistrovaný. Potvrzení vypadá nějak takto:

Snímek obrazovky ukazuje příklad úspěšné registrace.

Kliknutím sem přejdete na tento model. Pokud chcete zobrazit podrobnosti registrovaného modelu.

Další kroky

Teď, když máte zaregistrovaný model, se dozvíte , jak nasadit model R do online koncového bodu (v reálném čase).