Modeli eğitmek için R işi çalıştırma
ŞUNUN IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)
Bu makalede, üretimde çalıştırılacak şekilde uyarladığınız R betiğinin nasıl alınıp Azure Machine Learning CLI V2 kullanılarak R işi olarak çalıştırılacak şekilde nasıl ayarlanacağı açıklanmaktadır.
Not
Bu makalenin başlığı bir modeli eğitmek anlamına gelse de, uyarlama makalesinde listelenen gereksinimleri karşılıyorsa herhangi bir R betiği çalıştırabilirsiniz.
Önkoşullar
- Azure Machine Learning çalışma alanı.
- Eğitim işinizin kullandığı kayıtlı bir veri varlığı .
- Azure CLI ve ml uzantısı yüklü. Alternatif olarak, CLI'nın önceden yüklenmiş olduğu çalışma alanınızda bir işlem örneği de kullanabilirsiniz.
- Eğitim işinizi çalıştırmak için bir işlem kümesi veya işlem örneği .
- İşlem kümesinin işi çalıştırmak için kullanması için bir R ortamı .
Bu yapıya sahip bir klasör oluşturun
Projeniz için şu klasör yapısını oluşturun:
📁 r-job-azureml
├─ src
│ ├─ azureml_utils.R
│ ├─ r-source.R
├─ job.yml
Önemli
Tüm kaynak kodu dizinine src
gider.
- R kaynağı. R dosyası, üretimde çalıştırmak için uyarladığınız R betiğidir. Modelinizi bu betikte kullanıma almak ve günlüğe kaydetmek için adımları izlediğinizden emin olun.
- azureml_utils . R dosyası gereklidir. Dosyanın içeriği için bu kaynak kodunu kullanın.
İşi HAZıRLAMA YAML
Azure Machine Learning CLI v2,farklı işlemler için farklı YAML şemalarına sahiptir. bu projenin bir parçası olan job.yml dosyasında iş göndermek için iş YAML şemasını kullanırsınız.
YAML'ye koymak için belirli bilgi parçalarını toplamanız gerekir:
- Veri girişi olarak kullandığınız kayıtlı veri varlığının adı (sürüm ile):
azureml:<REGISTERED-DATA-ASSET>:<VERSION>
- Oluşturduğunuz ortamın adı (sürümle):
azureml:<R-ENVIRONMENT-NAME>:<VERSION>
- İşlem kümesinin adı:
azureml:<COMPUTE-CLUSTER-NAME>
İpucu
Sürümler (veri varlıkları, ortamlar) gerektiren Azure Machine Learning yapıtları için, belirli bir sürümü ayarlamanız gerekmiyorsa bu yapıtın en son sürümünü almak için kısayol URI'sini azureml:<AZUREML-ASSET>@latest
kullanabilirsiniz.
İş göndermek için örnek YAML şeması
job.yml dosyanızı aşağıdakileri içerecek şekilde düzenleyin. Gösterilen <IN-BRACKETS-AND-CAPS>
değerleri değiştirip köşeli ayraçları kaldırdığınızdan emin olun.
$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>
İşi gönderme
Bu bölümdeki aşağıdaki komutlarda bilmeniz gerekebilir:
- Azure Machine Learning çalışma alanı adı
- Çalışma alanının bulunduğu kaynak grubu adı
- Çalışma alanının bulunduğu abonelik
Azure Machine Learning stüdyosu şu değerleri bulun:
- Oturum açın ve çalışma alanınızı açın.
- Sağ üst Azure Machine Learning stüdyosu araç çubuğunda çalışma alanı adınızı seçin.
- Görüntülenen bölümden değerleri kopyalayabilirsiniz.
İşi göndermek için terminal penceresinde aşağıdaki komutları çalıştırın:
Dizinleri olarak
r-job-azureml
değiştirin.cd r-job-azureml
Azure'da oturum açın. Bunu bir Azure Machine Learning işlem örneğinden yapıyorsanız şunu kullanın:
az login --identity
İşlem örneğinde değilseniz, kimlik doğrulaması için bir tarayıcı penceresi açmak için istemi atlayıp
--identity
izleyin.CLI'nın ve uzantının en son sürümlerine sahip olduğunuzdan
ml
emin olun:az upgrade
Birden çok Azure aboneliğiniz varsa, etkin aboneliği çalışma alanınız için kullandığınız abonelik olarak ayarlayın. (Yalnızca tek bir aboneliğe erişiminiz varsa bu adımı atlayabilirsiniz.) değerini abonelik adınız ile değiştirin
<SUBSCRIPTION-NAME>
. Ayrıca köşeli ayraçları<>
da kaldırın.az account set --subscription "<SUBSCRIPTION-NAME>"
Şimdi işi göndermek için CLI'yi kullanın. Bunu çalışma alanınızdaki bir işlem örneğinde yapıyorsanız, aşağıdaki kodda gösterildiği gibi çalışma alanı adı ve kaynak grubu için ortam değişkenlerini kullanabilirsiniz. İşlem örneğinde değilseniz, bu değerleri çalışma alanı adınız ve kaynak grubunuzla değiştirin.
az ml job create -f job.yml --workspace-name $CI_WORKSPACE --resource-group $CI_RESOURCE_GROUP
İşi gönderdikten sonra durumu ve sonuçları Studio'da de kontrol edebilirsiniz:
- Azure Machine Learning stüdyosu oturum açın.
- Henüz yüklenmemişse çalışma alanınızı seçin.
- Sol gezinti bölmesinde İşler'i seçin.
- Modelinizi eğitmek için kullandığınız Deneme adını seçin.
- ölçümler, görüntüler, alt işler, çıkışlar, günlükler ve işte kullanılan kod gibi işin ayrıntılarını ve yapıtlarını görüntülemek için işin Görünen adını seçin.
Modeli kaydetme
Son olarak, eğitim işi tamamlandıktan sonra modelinizi dağıtmak istiyorsanız kaydedin. İş ayrıntılarınızı gösteren sayfadan stüdyoda başlayın.
İşiniz tamamlandıktan sonra, işin çıkışlarını görüntülemek için Çıkışlar + günlükler'i seçin.
crate.bin ve MLmodel'in mevcut olduğunu doğrulamak için models klasörünü açın. Aksi takdirde, bir hata olup olmadığını görmek için günlükleri denetleyin.
Üstteki araç çubuğunda + Modeli kaydet'i seçin.
Algılanan MLflow model türünü kullanmayın. Model türünü varsayılan MLflow türünden Belirtilmeyen tür olarak değiştirin. MLflow olarak bırakmak hataya neden olur.
İş çıktısı için modeli içeren klasör olan modelleri seçin.
İleri'yi seçin.
Modeliniz için kullanmak istediğiniz adı belirtin. İstersenize Açıklama, Sürüm ve Etiketler ekleyin.
İleri'yi seçin.
Bilgileri gözden geçirin.
Kaydet'i seçin.
Sayfanın üst kısmında modelin kayıtlı olduğunu belirten bir onay görürsünüz. Onay şuna benzer:
Bu modele gitmek için buraya tıklayın'ı seçin . Kayıtlı model ayrıntılarını görüntülemek istiyorsanız.
Sonraki adımlar
Artık kayıtlı bir modeliniz olduğuna göre, R modelini çevrimiçi (gerçek zamanlı) bir uç noktaya dağıtmayı öğrenin.