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._AbstractRunConfigElementRunConfiguration
Oluşturucu
RunConfiguration(script=None, arguments=None, framework=None, communicator=None, conda_dependencies=None, _history_enabled=None, _path=None, _name=None, command=None)
Parametreler
- script
- str
Python betik dosyasının göreli yolu. Dosya yolu, öğesine geçirilen kaynak dizine submitgöredir.
Python betik dosyası için komut satırı bağımsız değişkenleri.
- framework
- str
Çalıştırmada kullanılan hedeflenen çerçeve. Desteklenen çerçeveler Python, PySpark, TensorFlow ve PyTorch'tır.
- 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.
- conda_dependencies
- CondaDependencies
Varsayılan False değerinde bırakıldığında, sistem içinde conda_dependencies
belirtilen paketleri içeren bir Python ortamı oluşturur.
True ayarlandığında, python_interpreter ayarıyla mevcut bir Python ortamı belirtilebilir.
Ç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']
- _history_enabled
- _path
- _name
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
- environment
- 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
- HistoryConfiguration
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
- SparkConfiguration
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
- HdiConfiguration
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
- DockerConfiguration
Docker yapılandırması bölümü, Docker ortamı için değişkenleri ayarlamak için kullanılır.
- tensorflow
- TensorflowConfiguration
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
- MpiConfiguration
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
- PyTorchConfiguration
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
- ParallelTaskConfiguration
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
- dict[str, DataReferenceConfiguration]
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.
- 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
- OutputData
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
- AmlComputeConfiguration
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
- KubernetesComputeConfiguration
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
- dict[str, ApplicationEndpointConfiguration]
İş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 Proje dizini olması gereken bir dizine işaret ederse |
save |
RunConfiguration'ı disk üzerindeki bir dosyaya kaydedin. A UserErrorException şu durumlarda oluşturulur:
dir_path geçerli bir dizin olduğu <dir_path/file_name biçimindeyse< Proje dizini olması gereken bir dizine işaret ederse 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
- 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 dizinden silinir.
Özel durumlar
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
- 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. 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.
Döndürülenler
Çalıştırma yapılandırma nesnesi.
Dönüş türü
Özel durumlar
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
- separate_environment_yaml
- bool
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.
- 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.
Dönüş türü
Özel durumlar
Ö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
Çalışma zamanı değişkenleri
Dönüş türü
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
Hedef adı
Dönüş türü
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin