Aracılığıyla paylaş


RunConfiguration Sınıf

Azure Machine Learning'de farklı işlem hedeflerini hedefleyen deneme çalıştırmaları için yapılandırmayı temsil eder.

RunConfiguration nesnesi, bir denemede eğitim çalıştırması göndermek için gereken bilgileri kapsüller. Genellikle, doğrudan bir RunConfiguration nesnesi oluşturmaz, ancak sınıfın yöntemi gibi submit onu döndüren bir yöntemden bir nesne Experiment alırsınız.

RunConfiguration, tetiklediğiniz çalıştırma türüne bağlı olarak diğer yapılandırma adımı türlerinde de kullanılan bir temel ortam yapılandırmasıdır. Örneğin, bir PythonScriptStepayarlarken adımın RunConfiguration nesnesine erişebilir ve Conda bağımlılıklarını yapılandırabilir veya çalıştırmanın ortam özelliklerine erişebilirsiniz.

Çalıştırma yapılandırmaları örnekleri için bkz. Modelinizi eğitmek için işlem hedefi seçme ve kullanma.

Varsayılan ayarlarla bir RunConfiguration başlatın.

Devralma
azureml._base_sdk_common.abstract_run_config_element._AbstractRunConfigElement
RunConfiguration

Oluşturucu

RunConfiguration(script=None, arguments=None, framework=None, communicator=None, conda_dependencies=None, _history_enabled=None, _path=None, _name=None, command=None)

Parametreler

Name Description
script
str

Python betik dosyasının göreli yolu. Dosya yolu, öğesine geçirilen kaynak dizine submitgöredir.

Default value: None
arguments

Python betik dosyası için komut satırı bağımsız değişkenleri.

Default value: None
framework
str

Çalıştırmada kullanılan hedeflenen çerçeve. Desteklenen çerçeveler Python, PySpark, TensorFlow ve PyTorch'tır.

Default value: None
communicator
str

Çalıştırmada kullanılan communicator. Desteklenen iletişimciler None, ParameterServer, OpenMpi ve IntelMpi'dir. OpenMpi'nin OpenMpi'nin yüklü olduğu özel bir görüntü gerektirdiğini unutmayın. AmlCompute kümeleri için ParameterServer veya OpenMpi kullanın. Dağıtılmış eğitim işleri için IntelMpi kullanın.

Default value: None
conda_dependencies

Varsayılan False değerinde bırakıldığında, sistem içinde conda_dependenciesbelirtilen paketleri içeren bir Python ortamı oluşturur. True ayarlandığında, python_interpreter ayarıyla mevcut bir Python ortamı belirtilebilir.

Default value: None
auto_prepare_environment
Gerekli

KALDIRIL -MIŞ. Bu ayar artık kullanılmaz.

command
list[str] veya str

Çalıştırma için gönderilecek komut. Komut özelliği betik/bağımsız değişkenler yerine de kullanılabilir. Çalıştırma göndermek için hem komut hem de betik/bağımsız değişken özellikleri birlikte kullanılamaz. ['python', 'train.py', '–arg1', arg1_val] komut özelliğini kullanarak bir betik dosyası göndermek için - ['ls']

Default value: None
_history_enabled
Default value: None
_path
Default value: None
_name
Default value: None

Açıklamalar

Makine öğrenmesi sistemlerini genellikle belirli bir sorunu çözmek için oluştururuz. Örneğin, bir sorguya karşılık gelen arama sonuçları olarak sunulan web sayfalarını dereceleyen en iyi modeli bulmak isteyebiliriz. En iyi makine öğrenmesi modeli aramamız için farklı algoritmaları denememiz veya farklı parametre ayarlarını göz önünde bulundurmamız gerekebilir.

Azure Machine Learning SDK'sında, farklı eğitim çalıştırmalarının çözmeye çalıştıkları sorunla ilgili olduğu kavramını yakalamak için deneme kavramını kullanırız. Ardından, Experiment bu eğitim çalıştırmaları için mantıksal kapsayıcı görevi görerek eğitim çalıştırmaları arasında ilerleme durumunu izlemeyi, doğrudan iki eğitim çalıştırmasını karşılaştırmayı vb. kolaylaştırır.

RunConfiguration, bir denemede eğitim çalıştırması göndermek için gereken yürütme ortamı ayarlarını kapsüller. Aynı makine öğrenmesi sorununu çözmek için tasarlanmış eğitim çalıştırmalarının hem paylaşılan yapısını hem de farklı eğitim çalıştırmalarını birbirinden ayıran yapılandırma parametrelerindeki (ör. öğrenme oranı, kayıp işlevi vb.) farkları yakalar.

Tipik eğitim senaryolarında RunConfiguration, bir RunConfiguration nesnesini ve eğitim için bir yürütme betiğini birlikte paketleyen bir nesne oluşturularak ScriptRunConfig kullanılır.

RunConfiguration yapılandırması şunları içerir:

  • Gönderilen betik de dahil olmak üzere deneme kaynak dizinini paketleme.

  • Gönderilen betik için Komut satırı bağımsız değişkenlerini ayarlama.

  • Python yorumlayıcısı için yolu yapılandırma.

  • Uygulama bağımlılıklarını yönetmek için için conda yapılandırmasını alın. İş gönderme işlemi, geçici bir Conda ortamı sağlamak ve uygulamayı içinde başlatmak için yapılandırmayı kullanabilir. Geçici ortamlar önbelleğe alınır ve sonraki çalıştırmalarda yeniden kullanılır.

  • Docker ve özel temel görüntülerin isteğe bağlı kullanımı.

  • Denemeyi birden çok Azure işlem türüne göndermeye ilişkin isteğe bağlı seçim.

  • Girişleri gerçekleştirmeyi ve çıkışları karşıya yüklemeyi yapılandırmaya yönelik isteğe bağlı seçim.

  • Spark ve tensorflow gibi yaygın çalışma zamanları için gelişmiş çalışma zamanı ayarları.

Aşağıdaki örnekte, yerel makinenize eğitim betiği gönderme işlemi gösterilmektedir.


   from azureml.core import ScriptRunConfig, RunConfiguration, Experiment

   # create or load an experiment
   experiment = Experiment(workspace, "MyExperiment")
   # run a trial from the train.py code in your current directory
   config = ScriptRunConfig(source_directory='.', script='train.py',
       run_config=RunConfiguration())
   run = experiment.submit(config)

Aşağıdaki örnekte, betik ve bağımsız değişkenler yerine komut özelliğini kullanarak kümenize eğitim betiği gönderme işlemi gösterilmektedir.


   from azureml.core import ScriptRunConfig, Experiment
   # create or load an experiment
   experiment = Experiment(workspace, 'MyExperiment')
   # create or retrieve a compute target
   cluster = workspace.compute_targets['MyCluster']
   # create or retrieve an environment
   env = Environment.get(ws, name='MyEnvironment')
   # configure and submit your training run
   config = ScriptRunConfig(source_directory='.',
                            command=['python', 'train.py', '--arg1', arg1_val],
                            compute_target=cluster,
                            environment=env)
   script_run = experiment.submit(config)

Aşağıdaki örnekte kümenizde bir komutun nasıl çalıştırılacakları gösterilmektedir.


   from azureml.core import ScriptRunConfig, Experiment
   # create or load an experiment
   experiment = Experiment(workspace, 'MyExperiment')
   # create or retrieve a compute target
   cluster = workspace.compute_targets['MyCluster']
   # create or retrieve an environment
   env = Environment.get(ws, name='MyEnvironment')
   # configure and submit your training run
   config = ScriptRunConfig(source_directory='.',
                            command=['ls', '-l'],
                            compute_target=cluster,
                            environment=env)
   script_run = experiment.submit(config)

Değişkenler

Name Description
environment

Ortam tanımı. Bu alan Python ortamını yapılandırıyor. Mevcut bir Python ortamını kullanacak şekilde yapılandırılabilir veya deneme için geçici bir ortam ayarlamak üzere yapılandırılabilir. Tanım, gerekli uygulama bağımlılıklarını ayarlamakla da sorumludur.

max_run_duration_seconds
int

Çalıştırma için izin verilen en uzun süre. Sistem, bu değerden daha uzun sürerse çalıştırmayı otomatik olarak iptal etmeye çalışır.

node_count
int

İş için kullanılacak düğüm sayısı.

priority
int

zamanlama ilkesi için işin önceliği.

history

Deneme geçmişi günlüğe kaydetme özelliklerini devre dışı bırakmak ve etkinleştirmek için kullanılan yapılandırma bölümü.

spark

Platform PySpark olarak ayarlandığında Spark yapılandırma bölümü, gönderilen iş için varsayılan SparkConf'u ayarlamak için kullanılır.

hdi

HDI yapılandırma bölümü yalnızca hedef bir Azure HDI işlemine ayarlandığında geçerlilik kazanır. HDI Yapılandırması, YARN dağıtım modunu ayarlamak için kullanılır. Varsayılan dağıtım modu kümedir.

docker

Docker yapılandırması bölümü, Docker ortamı için değişkenleri ayarlamak için kullanılır.

tensorflow

Dağıtılmış TensorFlow parametrelerini yapılandırmak için kullanılan yapılandırma bölümü. Bu parametre yalnızca framework TensorFlow ve communicator ParameterServer olarak ayarlandığında geçerlilik kazanır. AmlCompute bu yapılandırma için desteklenen tek işlemdir.

mpi

Dağıtılmış MPI iş parametrelerini yapılandırmak için kullanılan yapılandırma bölümü. Bu parametre yalnızca framework python ve communicator OpenMpi veya IntelMpi olarak ayarlandığında geçerlilik kazanır. AmlCompute bu yapılandırma için desteklenen tek işlem türüdür.

pytorch

Dağıtılmış PyTorch iş parametrelerini yapılandırmak için kullanılan yapılandırma bölümü. Bu parametre yalnızca framework , PyTorch ve communicator Nccl veya Gloo olarak ayarlandığında geçerlilik kazanır. AmlCompute bu yapılandırma için desteklenen tek işlem türüdür.

paralleltask

Dağıtılmış paralleltask işi parametrelerini yapılandırmak için kullanılan yapılandırma bölümü. Bu parametre yalnızca framework , Python ve communicator ParallelTask olarak ayarlandığında geçerlilik kazanır. AmlCompute bu yapılandırma için desteklenen tek işlem türüdür.

data_references

Tüm veri kaynakları, her yapılandırmaya göre yürütme sırasında çalıştırılır. Sözlüğün her öğesi için anahtar, veri kaynağına verilen bir addır ve değer dataReferenceConfiguration değeridir.

data

Yürütme sırasında çalıştırmanın kullanımına sunulacak tüm veriler.

datacaches
<xref:buildin.list>[DatacacheConfiguration]

Yürütme sırasında datacache'i çalıştırma için kullanılabilir hale getirmek için tüm veriler.

output_data

Bu çalıştırma için karşıya yüklenmesi ve izlenmesi gereken tüm çıkışlar.

source_directory_data_store
str

Proje paylaşımı için yedekleme veri deposu.

amlcompute

Deneme sırasında oluşturulacak işlem hedefinin ayrıntıları. Yapılandırma yalnızca işlem hedefi AmlCompute olduğunda geçerlilik kazanır.

kubernetescompute

Deneme sırasında kullanılacak işlem hedefinin ayrıntıları. Yapılandırma yalnızca işlem hedefi KubernetesCompute olduğunda geçerlilik kazanır.

services

İşlem kaynağıyla etkileşimli uç noktalar. İzin verilen uç noktalar Jupyter, JupyterLab, VS Code, Tensorboard, SSH ve Özel bağlantı noktalarıdır.

Yöntemler

delete

Çalıştırma yapılandırma dosyasını silin.

Yapılandırma dosyası bulunamazsa bir UserErrorException oluşturur.

load

Daha önce kaydedilmiş bir çalıştırma yapılandırma dosyasını disk üzerindeki bir dosyadan yükleyin.

Bir dosyaya işaret ederse path RunConfiguration bu dosyadan yüklenir.

Proje dizini olması gereken bir dizine işaret edersepath, RunConfiguration path>/.azureml/<name> veya <path>/aml_config/<name> yolundan <yüklenir.

save

RunConfiguration'ı disk üzerindeki bir dosyaya kaydedin.

A UserErrorException şu durumlarda oluşturulur:

  • RunConfiguration belirtilen adla kaydedilemez.

  • Parametre name belirtilmedi.

  • path Parametre geçersiz.

dir_path geçerli bir dizin olduğu <dir_path/file_name biçimindeyse<path, RunConfiguration dir_path>/<file_name'a <>kaydedilir.><>>

Proje dizini olması gereken bir dizine işaret ederse path RunConfiguration path>/.azureml/<name> veya <path>/aml_config/<name dizinine> kaydedilir<.

Bu yöntem, yapılandırmayı el ile düzenlerken veya yapılandırmayı CLI ile paylaşırken kullanışlıdır.

delete

Çalıştırma yapılandırma dosyasını silin.

Yapılandırma dosyası bulunamazsa bir UserErrorException oluşturur.

static delete(path, name)

Parametreler

Name Description
path
Gerekli
str

Kullanıcı, çalıştırma yapılandırmaları için kök dizini seçti. Bu genellikle Git Deposu veya Python projesi kök dizinidir. Yapılandırma .azureml adlı bir alt dizinden silinir.

name
Gerekli
str

Yapılandırma dosyası adı.

Özel durumlar

Tür Description
UserErrorException

load

Daha önce kaydedilmiş bir çalıştırma yapılandırma dosyasını disk üzerindeki bir dosyadan yükleyin.

Bir dosyaya işaret ederse path RunConfiguration bu dosyadan yüklenir.

Proje dizini olması gereken bir dizine işaret edersepath, RunConfiguration path>/.azureml/<name> veya <path>/aml_config/<name> yolundan <yüklenir.

static load(path, name=None)

Parametreler

Name Description
path
Gerekli
str

Kullanıcı, çalıştırma yapılandırmaları için kök dizini seçti. Bu genellikle Git Deposu veya Python projesi kök dizinidir. Geriye dönük uyumluluk için yapılandırma .azureml veya aml_config alt dizininden de yüklenir. Dosya bu dizinlerde değilse, dosya belirtilen yoldan yüklenir.

name
str

Yapılandırma dosyası adı.

Default value: None

Döndürülenler

Tür Description

Çalıştırma yapılandırma nesnesi.

Özel durumlar

Tür Description
UserErrorException

save

RunConfiguration'ı disk üzerindeki bir dosyaya kaydedin.

A UserErrorException şu durumlarda oluşturulur:

  • RunConfiguration belirtilen adla kaydedilemez.

  • Parametre name belirtilmedi.

  • path Parametre geçersiz.

dir_path geçerli bir dizin olduğu <dir_path/file_name biçimindeyse<path, RunConfiguration dir_path>/<file_name'a <>kaydedilir.><>>

Proje dizini olması gereken bir dizine işaret ederse path RunConfiguration path>/.azureml/<name> veya <path>/aml_config/<name dizinine> kaydedilir<.

Bu yöntem, yapılandırmayı el ile düzenlerken veya yapılandırmayı CLI ile paylaşırken kullanışlıdır.

save(path=None, name=None, separate_environment_yaml=False)

Parametreler

Name Description
separate_environment_yaml

Conda ortam yapılandırmasının kaydedilip kaydedilmeyeceğini gösterir. True ise, Conda ortam yapılandırması 'environment.yml' adlı bir YAML dosyasına kaydedilir.

Default value: False
path
str

Kullanıcı, çalıştırma yapılandırmaları için kök dizini seçti. Bu genellikle Git Deposu veya Python projesi kök dizinidir. Yapılandırma .azureml adlı bir alt dizine kaydedilir.

Default value: None
name
str

[Gerekli] Yapılandırma dosyası adı.

Default value: None

Döndürülenler

Tür Description

Özel durumlar

Tür Description
UserErrorException

Öznitelikler

auto_prepare_environment

parametresini auto_prepare_environment alın. Bu, kullanım dışı ve kullanılmayan bir ayardır.

environment_variables

Çalışma zamanı ortam değişkenleri.

Döndürülenler

Tür Description

Çalışma zamanı değişkenleri

target

İşin yürütülmeye zamanlandığı işlem hedefini alma.

Varsayılan hedef, yerel makineye başvuran "yerel" hedeftir. kullanılabilir bulut işlem hedefleri işlevi compute_targetskullanılarak bulunabilir.

Döndürülenler

Tür Description
str

Hedef adı