RunConfiguration Kelas
Mewakili konfigurasi untuk eksekusi eksperimen yang menargetkan target komputasi yang berbeda dalam Azure Machine Learning.
Objek RunConfiguration merangkum informasi penting untuk mengirimkan eksekusi pelatihan dalam percobaan. Biasanya, Anda tidak akan membuat objek RunConfiguration secara langsung tetapi mendapatkannya dari metode yang menampilkannya, seperti metode submit dari kelas Experiment.
RunConfiguration adalah konfigurasi lingkungan dasar yang juga digunakan dalam jenis langkah konfigurasi lain yang bergantung pada jenis eksekusi yang Anda picu. Misalnya, saat menyiapkan PythonScriptStep, Anda dapat mengakses objek RunConfiguration dari langkah tersebut dan melakukan konfigurasi dependensi Conda atau mengakses properti lingkungan untuk eksekusi.
Untuk contoh konfigurasi eksekusi, lihat Memilih dan menggunakan target komputasi untuk melatih model Anda.
Menginisialisasi RunConfiguration dengan pengaturan default.
- Warisan
-
azureml._base_sdk_common.abstract_run_config_element._AbstractRunConfigElementRunConfiguration
Konstruktor
RunConfiguration(script=None, arguments=None, framework=None, communicator=None, conda_dependencies=None, _history_enabled=None, _path=None, _name=None, command=None)
Parameter
Nama | Deskripsi |
---|---|
script
|
Jalur relatif ke file skrip Python. Jalur file bersifat relatif ke direktori sumber yang diteruskan ke submit. Nilai default: None
|
arguments
|
Argumen baris perintah untuk file skrip Python. Nilai default: None
|
framework
|
Kerangka kerja yang ditargetkan digunakan dalam eksekusi. Kerangka kerja yang didukung adalah Python, PySpark, TensorFlow, dan PyTorch. Nilai default: None
|
communicator
|
Komunikator yang digunakan dalam eksekusi. Komunikator yang didukung adalah None, ParameterServer, OpenMpi, dan IntelMpi. Perlu diingat bahwa OpenMpi memerlukan gambar kustom dengan OpenMpi yang terpasang. Gunakan ParameterServer atau OpenMpi untuk kluster AmlCompute. Gunakan IntelMpi untuk pekerjaan pelatihan terdistribusi. Nilai default: None
|
conda_dependencies
|
Ketika dibiarkan pada nilai default False, sistem akan membuat lingkungan Python, yang mencakup paket yang ditentukan dalam Nilai default: None
|
auto_prepare_environment
Diperlukan
|
TIDAK DIGUNAKAN LAGI. Pengaturan ini tidak digunakan lagi. |
command
|
Perintah yang akan dikirimkan untuk eksekusi. Properti perintah juga dapat digunakan sebagai pengganti skrip/argumen. Properti perintah dan skrip/argumen tidak dapat digunakan bersama untuk mengirimkan eksekusi. Untuk mengirimkan file skrip menggunakan properti perintah - ['python', 'train.py', '–arg1', arg1_val] Untuk menjalankan perintah sebenarnya - ['ls'] Nilai default: None
|
_history_enabled
|
Nilai default: None
|
_path
|
Nilai default: None
|
_name
|
Nilai default: None
|
Keterangan
Biasanya kami membuat sistem pembelajaran mesin untuk memecahkan masalah tertentu. Misalnya, mungkin kami tertarik untuk menemukan model terbaik yang memberi peringkat halaman web yang mungkin berfungsi sebagai hasil pencarian sesuai kueri. Pencarian kami untuk model pembelajaran mesin terbaik mungkin mengharuskan kami mencoba algoritma yang berbeda, atau mempertimbangkan pengaturan parameter yang berbeda, dll.
Dalam SDK Azure Machine Learning, kami menggunakan konsep eksperimen untuk menangkap gagasan bahwa eksekusi pelatihan yang berbeda berkaitan dengan masalah yang ingin mereka selesaikan. Kemudian Experiment berfungsi sebagai kontainer logis untuk eksekusi pelatihan ini, sehingga lebih mudah untuk melacak kemajuan di seluruh eksekusi pelatihan, membandingkan dua eksekusi pelatihan secara langsung, dll.
RunConfiguration merangkum pengaturan lingkungan eksekusi yang diperlukan untuk mengirimkan eksekusi pelatihan dalam eksperimen. Ini menangkap struktur bersama eksekusi pelatihan yang dirancang untuk menyelesaikan masalah pembelajaran mesin yang sama, serta perbedaan dalam parameter konfigurasi (misalnya, tingkat pembelajaran, fungsi kehilangan, dll.) yang membedakan pelatihan yang berbeda berjalan satu sama lain.
Dalam skenario pelatihan yang khas, RunConfiguration digunakan dengan membuat objek ScriptRunConfig yang mengemas objek RunConfiguration dan skrip eksekusi untuk pelatihan.
Konfigurasi RunConfiguration meliputi:
Menggabungkan direktori sumber eksperimen termasuk skrip yang dikirimkan.
Mengatur argumen Baris perintah untuk skrip yang dikirimkan.
Mengonfigurasi jalur untuk interpreter Python.
Dapatkan konfigurasi Conda untuk mengelola dependensi aplikasi. Proses pengiriman pekerjaan bisa menggunakan konfigurasi untuk menyediakan lingkungan Conda sementara serta meluncurkan aplikasi di dalamnya. Lingkungan sementara ditembolokkan dan digunakan kembali dalam eksekusi berikutnya.
Penggunaan opsional Docker dan gambar dasar kustom.
Pilihan opsional untuk mengirimkan eksperimen ke beberapa jenis komputasi Azure.
Pilihan opsional untuk mengonfigurasi cara melaksanakan input dan mengunggah output.
Pengaturan runtime tingkat lanjut untuk runtime umum seperti spark dan tensorflow.
Contoh berikut menunjukkan cara mengirimkan skrip pelatihan di komputer lokal Anda.
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)
Contoh berikut menunjukkan cara mengirimkan skrip pelatihan di kluster Anda menggunakan properti perintah, bukan skrip dan argumen.
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)
Sampel berikut menunjukkan cara menjalankan perintah di kluster Anda.
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)
Variabel
Nama | Deskripsi |
---|---|
environment
|
Definisi lingkungan. Bidang ini mengonfigurasi lingkungan Python. Bisa dikonfigurasi untuk menggunakan lingkungan Python yang ada atau mengonfigurasi untuk menyiapkan lingkungan sementara untuk eksperimen. Definisi ini juga bertanggung jawab untuk mengatur dependensi aplikasi yang diperlukan. |
max_run_duration_seconds
|
Waktu maksimum yang diizinkan untuk eksekusi. Sistem akan mencoba membatalkan eksekusi secara otomatis jika memakan waktu lebih lama dari nilai ini. |
node_count
|
Jumlah node yang digunakan untuk pekerjaan. |
priority
|
Prioritas pekerjaan untuk kebijakan penjadwalan. |
history
|
Bagian konfigurasi yang digunakan untuk menonaktifkan dan mengaktifkan fitur pengelogan riwayat eksperimen. |
spark
|
Saat platform diatur ke PySpark, bagian konfigurasi Spark digunakan untuk mengatur SparkConf default pada pekerjaan yang dikirim. |
hdi
|
Bagian konfigurasi HDI berlaku hanya ketika target diatur ke komputasi HDI Azure. Konfigurasi HDI digunakan untuk mengatur mode penyebaran YARN. Mode penyebaran default adalah kluster. |
docker
|
Bagian konfigurasi Docker digunakan untuk mengatur variabel untuk lingkungan Docker. |
tensorflow
|
Bagian konfigurasi yang digunakan untuk mengonfigurasi parameter TensorFlow terdistribusi.
Parameter ini berlaku hanya ketika |
mpi
|
Bagian konfigurasi yang digunakan untuk mengonfigurasi parameter pekerjaan MPI terdistribusi.
Parameter ini hanya berlaku ketika |
pytorch
|
Bagian konfigurasi yang digunakan untuk mengonfigurasi parameter pekerjaan PyTorch terdistribusi.
Parameter ini berlaku hanya saat |
paralleltask
|
Bagian konfigurasi yang digunakan untuk mengonfigurasi parameter pekerjaan paralel terdistribusi.
Parameter ini hanya berlaku ketika |
data_references
|
Semua sumber data tersedia untuk dijalankan selama eksekusi berdasarkan setiap konfigurasi. Untuk setiap item kamus, kuncinya adalah nama yang diberikan ke sumber data dan nilainya adalah DataReferenceConfiguration. |
data
|
Semua data yang akan tersedia untuk dijalankan selama eksekusi. |
datacaches
|
<xref:buildin.list>[DatacacheConfiguration]
Semua data untuk membuat datacache tersedia untuk dijalankan selama eksekusi. |
output_data
|
Semua output yang harus diunggah dan dilacak untuk eksekusi ini. |
source_directory_data_store
|
Penyimpanan data pendukung untuk berbagi proyek. |
amlcompute
|
Detail target komputasi yang akan dibuat selama eksperimen. Konfigurasi hanya berlaku jika target komputasi adalah AmlCompute. |
kubernetescompute
|
Detail target komputasi yang akan digunakan selama eksperimen. Konfigurasi berlaku hanya saat target komputasi adalah KubernetesCompute. |
services
|
Titik akhir untuk interaktif dengan sumber daya komputasi. Titik akhir yang diizinkan adalah Jupyter, JupyterLab, Visual Studio Code, Tensorboard, SSH, dan port Kustom. |
Metode
delete |
Hapus file konfigurasi eksekusi. Mengajukan UserErrorException jika file konfigurasi tidak ditemukan. |
load |
Muat file konfigurasi eksekusi yang disimpan sebelumnya dari file di disk. Jika Jika |
save |
Simpan RunConfiguration ke file di disk. UserErrorException diajukan ketika:
Jika Jika Metode ini berguna saat mengedit konfigurasi secara manual atau saat berbagi konfigurasi dengan CLI. |
delete
Hapus file konfigurasi eksekusi.
Mengajukan UserErrorException jika file konfigurasi tidak ditemukan.
static delete(path, name)
Parameter
Nama | Deskripsi |
---|---|
path
Diperlukan
|
Direktori akar yang dipilih pengguna untuk konfigurasi eksekusi. Biasanya ini adalah Repositori Git atau direktori akar proyek Python. Konfigurasi dihapus dari sub direktori bernama .azureml. |
name
Diperlukan
|
Nama file konfigurasi. |
Pengecualian
Jenis | Deskripsi |
---|---|
UserErrorException
|
load
Muat file konfigurasi eksekusi yang disimpan sebelumnya dari file di disk.
Jika path
mengarah ke file, RunConfiguration dimuat dari file tersebut.
Jika path
mengarah ke direktori, yang seharusnya menjadi direktori proyek, RunConfiguration akan dimuat dari <jalur>/.azureml/<name> atau <jalur>/aml_config/<name>.
static load(path, name=None)
Parameter
Nama | Deskripsi |
---|---|
path
Diperlukan
|
Direktori akar yang dipilih pengguna untuk konfigurasi eksekusi. Biasanya ini adalah Repositori Git atau direktori akar proyek Python. Untuk kompatibilitas mundur, konfigurasi juga akan dimuat dari .azureml atau sub direktori aml_config. Jika file tidak ada di direktori tersebut, file dimuat dari jalur yang ditentukan. |
name
|
Nama file konfigurasi. Nilai default: None
|
Mengembalikan
Jenis | Deskripsi |
---|---|
Objek konfigurasi eksekusi. |
Pengecualian
Jenis | Deskripsi |
---|---|
UserErrorException
|
save
Simpan RunConfiguration ke file di disk.
UserErrorException diajukan ketika:
RunConfiguration tidak dapat disimpan dengan nama yang ditentukan.
Tidak ada parameter
name
yang ditentukan.Parameter
path
tidak valid.
Jika path
dari format <dir_path>/<file_name>, dengan <dir_path> adalah direktori yang valid, RunConfiguration akan disimpan pada <dir_path>/<file_name>.
Jika path
mengarah ke direktori, yang seharusnya menjadi direktori proyek, RunConfiguration akan disimpan di <jalur>/.azureml/<name> atau <jalur>/aml_config/<name>.
Metode ini berguna saat mengedit konfigurasi secara manual atau saat berbagi konfigurasi dengan CLI.
save(path=None, name=None, separate_environment_yaml=False)
Parameter
Nama | Deskripsi |
---|---|
separate_environment_yaml
|
Menunjukkan apakah akan menyimpan konfigurasi lingkungan Conda. Jika True, konfigurasi lingkungan Conda disimpan ke file YAML bernama 'environment.yml'. Nilai default: False
|
path
|
Direktori akar yang dipilih pengguna untuk konfigurasi eksekusi. Biasanya ini adalah Repositori Git atau direktori akar proyek Python. Konfigurasi disimpan ke sub direktori bernama .azureml. Nilai default: None
|
name
|
[Diperlukan] Nama file konfigurasi. Nilai default: None
|
Mengembalikan
Jenis | Deskripsi |
---|---|
Pengecualian
Jenis | Deskripsi |
---|---|
UserErrorException
|
Atribut
auto_prepare_environment
Dapatkan parameter auto_prepare_environment
. Ini adalah pengaturan yang sudah tidak digunakan lagi dan tidak digunakan.
environment_variables
target
Mendapatkan target komputasi tempat pekerjaan dijadwalkan untuk dieksekusi.
Target default bersifat "lokal" mengacu pada komputer lokal. Target komputasi cloud yang tersedia dapat ditemukan menggunakan fungsi compute_targets.
Mengembalikan
Jenis | Deskripsi |
---|---|
Nama target |