Experiment Kelas

Mewakili titik masuk utama untuk membuat dan bekerja dengan eksperimen di Azure Machine Learning.

Eksperimen adalah kontainer uji coba yang mewakili beberapa eksekusi model.

Konstruktor eksperimen.

Konstruktor

Experiment(workspace, name, _skip_name_validation=False, _id=None, _archived_time=None, _create_in_cloud=True, _experiment_dto=None, **kwargs)

Parameter

Nama Deskripsi
workspace
Diperlukan

Objek ruang kerja yang berisi eksperimen.

name
Diperlukan
str

Nama eksperimen.

kwargs
Diperlukan

Kamus args kata kunci.

workspace
Diperlukan

Objek ruang kerja yang berisi eksperimen.

name
Diperlukan
str

Nama eksperimen.

kwargs
Diperlukan

Kamus args kata kunci.

_skip_name_validation
Nilai default: False
_id
Nilai default: None
_archived_time
Nilai default: None
_create_in_cloud
Nilai default: True
_experiment_dto
Nilai default: None

Keterangan

Eksperimen Azure Machine Learning mewakili kumpulan uji coba yang digunakan untuk memvalidasi hipotesis pengguna.

Dalam Azure Machine Learning, eksperimen diwakili oleh Experiment kelas dan uji coba diwakili oleh Run kelas .

Untuk mendapatkan atau membuat eksperimen dari ruang kerja, Anda meminta eksperimen menggunakan nama eksperimen. Nama eksperimen harus 3-36 karakter, dimulai dengan huruf atau angka, dan hanya boleh berisi huruf, angka, garis bawah, dan tanda hubung.


   experiment = Experiment(workspace, "MyExperiment")

Jika eksperimen tidak ditemukan di ruang kerja, eksperimen baru dibuat.

Ada dua cara untuk menjalankan percobaan eksperimen. Jika Anda bereksperimen secara interaktif di Jupyter Notebook, gunakan start_logging Jika Anda mengirimkan eksperimen dari kode sumber atau jenis percobaan lain yang dikonfigurasi, gunakan submit

Kedua mekanisme membuat Run objek. Dalam skenario interaktif, gunakan metode pengelogan seperti log untuk menambahkan pengukuran dan metrik ke rekaman uji coba. Dalam skenario yang dikonfigurasi, gunakan metode status seperti get_status untuk mengambil informasi tentang eksekusi.

Dalam kedua kasus, Anda dapat menggunakan metode kueri seperti get_metrics untuk mengambil nilai saat ini, jika ada, dari pengukuran dan metrik uji coba apa pun.

Metode

archive

Arsipkan eksperimen.

delete

Menghapus eksperimen di ruang kerja.

from_directory

(Tidak digunakan lagi) Muat eksperimen dari jalur yang ditentukan.

get_docs_url

Url ke dokumentasi untuk kelas ini.

get_runs

Mengembalikan generator eksekusi untuk eksperimen ini, dalam urutan kronologis terbalik.

list

Mengembalikan daftar eksperimen di ruang kerja.

reactivate

Mengaktifkan kembali eksperimen yang diarsipkan.

refresh

Mengembalikan versi terbaru eksperimen dari cloud.

remove_tags

Hapus tag yang ditentukan dari eksperimen.

set_tags

Tambahkan atau ubah sekumpulan tag pada eksperimen. Tag yang tidak diteruskan dalam kamus dibiarkan tidak tersentuh.

start_logging

Mulai sesi pengelogan interaktif dan buat eksekusi interaktif dalam eksperimen yang ditentukan.

submit

Kirim eksperimen dan kembalikan eksekusi aktif yang dibuat.

tag

Tandai eksperimen dengan kunci string dan nilai string opsional.

archive

Arsipkan eksperimen.

archive()

Keterangan

Setelah pengarsipan, eksperimen tidak akan dicantumkan secara default. Mencoba menulis ke eksperimen yang diarsipkan akan membuat eksperimen aktif baru dengan nama yang sama. Eksperimen yang diarsipkan dapat dipulihkan dengan memanggil reactivate selama tidak ada eksperimen aktif lain dengan nama yang sama.

delete

Menghapus eksperimen di ruang kerja.

static delete(workspace, experiment_id)

Parameter

Nama Deskripsi
workspace
Diperlukan

Ruang kerja tempat eksperimen berada.

experiment_id
Diperlukan

Id eksperimen eksperimen yang akan dihapus.

from_directory

(Tidak digunakan lagi) Muat eksperimen dari jalur yang ditentukan.

static from_directory(path, auth=None)

Parameter

Nama Deskripsi
path
Diperlukan
str

Direktori yang berisi file konfigurasi eksperimen.

auth

Objek autentikasi. Jika Tidak ada kredensial Azure CLI default yang akan digunakan atau API akan meminta kredensial.

Nilai default: None

Mengembalikan

Jenis Deskripsi

Mengembalikan Eksperimen

get_docs_url

Url ke dokumentasi untuk kelas ini.

get_docs_url()

Mengembalikan

Jenis Deskripsi
str

URL

get_runs

Mengembalikan generator eksekusi untuk eksperimen ini, dalam urutan kronologis terbalik.

get_runs(type=None, tags=None, properties=None, include_children=False)

Parameter

Nama Deskripsi
type

Filter generator eksekusi yang dikembalikan berdasarkan jenis yang disediakan. Lihat add_type_provider untuk membuat jenis eksekusi.

Nilai default: None
tags
string atau dict

Filter berjalan menurut "tag" atau {"tag": "value"}.

Nilai default: None
properties
string atau dict

Filter berjalan menurut "properti" atau {"properti": "value"}

Nilai default: None
include_children

Secara default, ambil hanya eksekusi tingkat atas. Atur ke true untuk mencantumkan semua eksekusi.

Nilai default: False

Mengembalikan

Jenis Deskripsi

Daftar eksekusi yang cocok dengan filter yang disediakan.

list

Mengembalikan daftar eksperimen di ruang kerja.

static list(workspace, experiment_name=None, view_type='ActiveOnly', tags=None)

Parameter

Nama Deskripsi
workspace
Diperlukan

Ruang kerja tempat untuk mencantumkan eksperimen.

experiment_name
str

Nama opsional untuk memfilter eksperimen.

Nilai default: None
view_type

Nilai enum opsional untuk memfilter atau menyertakan eksperimen yang diarsipkan.

Nilai default: ActiveOnly
tags

Kunci tag opsional atau kamus pasangan kunci-nilai tag untuk memfilter eksperimen.

Nilai default: None

Mengembalikan

Jenis Deskripsi

Daftar objek eksperimen.

reactivate

Mengaktifkan kembali eksperimen yang diarsipkan.

reactivate(new_name=None)

Parameter

Nama Deskripsi
new_name
Diperlukan
str

Tidak didukung lagi

Keterangan

Eksperimen yang diarsipkan hanya dapat diaktifkan kembali jika tidak ada eksperimen aktif lain dengan nama yang sama.

refresh

Mengembalikan versi terbaru eksperimen dari cloud.

refresh()

remove_tags

Hapus tag yang ditentukan dari eksperimen.

remove_tags(tags)

Parameter

Nama Deskripsi
tags
Diperlukan
[str]

Kunci tag yang akan dihapus

set_tags

Tambahkan atau ubah sekumpulan tag pada eksperimen. Tag yang tidak diteruskan dalam kamus dibiarkan tidak tersentuh.

set_tags(tags)

Parameter

Nama Deskripsi
tags
Diperlukan

Tag yang disimpan dalam objek eksperimen

start_logging

Mulai sesi pengelogan interaktif dan buat eksekusi interaktif dalam eksperimen yang ditentukan.

start_logging(*args, **kwargs)

Parameter

Nama Deskripsi
experiment
Diperlukan

Eksperimen.

outputs
Diperlukan
str

Direktori output opsional untuk dilacak. Untuk tidak ada output, berikan False.

snapshot_directory
Diperlukan
str

Direktori opsional untuk mengambil rekam jepret. Pengaturan ke Tidak Ada tidak akan mengambil rekam jepret.

args
Diperlukan
kwargs
Diperlukan

Mengembalikan

Jenis Deskripsi
Run

Mengembalikan eksekusi yang dimulai.

Keterangan

start_logging membuat eksekusi interaktif untuk digunakan dalam skenario seperti Jupyter Notebooks. Metrik apa pun yang dicatat selama sesi ditambahkan ke rekaman eksekusi dalam eksperimen. Jika direktori output ditentukan, konten direktori tersebut diunggah sebagai artefak eksekusi setelah selesai dijalankan.


   experiment = Experiment(workspace, "My Experiment")
   run = experiment.start_logging(outputs=None, snapshot_directory=".", display_name="My Run")
   ...
   run.log_metric("Accuracy", accuracy)
   run.complete()

Nota

run_id dibuat secara otomatis untuk setiap eksekusi dan unik dalam eksperimen.

submit

Kirim eksperimen dan kembalikan eksekusi aktif yang dibuat.

submit(config, tags=None, **kwargs)

Parameter

Nama Deskripsi
config
Diperlukan

Konfigurasi yang akan dikirimkan.

tags

Tag yang akan ditambahkan ke eksekusi yang dikirimkan, {"tag": "value"}.

Nilai default: None
kwargs
Diperlukan

Parameter tambahan yang digunakan dalam fungsi pengiriman untuk konfigurasi.

Mengembalikan

Jenis Deskripsi
Run

Sebuah eksekusi.

Keterangan

Kirim adalah panggilan asinkron ke platform Azure Machine Learning untuk menjalankan uji coba pada perangkat keras lokal atau jarak jauh. Bergantung pada konfigurasi, kirim akan secara otomatis menyiapkan lingkungan eksekusi Anda, menjalankan kode Anda, dan mengambil kode sumber Anda dan hasil ke dalam riwayat eksekusi eksperimen.

Untuk mengirimkan eksperimen, Pertama-tama Anda perlu membuat objek konfigurasi yang menjelaskan bagaimana eksperimen akan dijalankan. Konfigurasi tergantung pada jenis uji coba yang diperlukan.

Contoh cara mengirimkan eksperimen dari komputer lokal Anda adalah sebagai berikut:


   from azureml.core import ScriptRunConfig

   # 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)

   # get the url to view the progress of the experiment and then wait
   # until the trial is complete
   print(run.get_portal_url())
   run.wait_for_completion()

Untuk detail tentang cara mengonfigurasi eksekusi, lihat detail jenis konfigurasi.

  • ScriptRunConfig

  • azureml.train.automl.automlconfig.AutoMLConfig

  • azureml.pipeline.core.Pipeline

  • azureml.pipeline.core.PublishedPipeline

  • azureml.pipeline.core.PipelineEndpoint

Nota

Saat Anda mengirimkan eksekusi pelatihan, rekam jepret direktori yang berisi skrip pelatihan Anda dibuat dan dikirim ke target komputasi. Ini juga disimpan sebagai bagian dari eksperimen di ruang kerja Anda. Jika Anda mengubah file dan mengirimkan eksekusi lagi, hanya file yang diubah yang akan diunggah.

Untuk mencegah file disertakan dalam rekam jepret, buat file .gitignore atau .amlignore di direktori dan tambahkan file ke dalamnya. File .amlignore menggunakan sintaks dan pola yang sama dengan file .gitignore. Jika kedua file ada, file .amlignore lebih diutamakan.

Untuk informasi selengkapnya, lihat Snapshots.

tag

Tandai eksperimen dengan kunci string dan nilai string opsional.

tag(key, value=None)

Parameter

Nama Deskripsi
key
Diperlukan
str

Kunci tag

value
Diperlukan
str

Nilai opsional untuk tag

Keterangan

Tag pada eksperimen disimpan dalam kamus dengan kunci string dan nilai string. Tag dapat diatur, diperbarui, dan dihapus. Tag menghadap pengguna dan umumnya berisi informasi yang berarti bagi konsumen eksperimen.


   experiment.tag('')
   experiment.tag('DeploymentCandidate')
   experiment.tag('modifiedBy', 'Master CI')
   experiment.tag('modifiedBy', 'release pipeline') # Careful, tags are mutable

Atribut

archived_time

Mengembalikan waktu yang diarsipkan untuk eksperimen. Nilai harus Tidak Ada untuk eksperimen aktif.

Mengembalikan

Jenis Deskripsi
str

Waktu eksperimen yang diarsipkan.

id

Mengembalikan id eksperimen.

Mengembalikan

Jenis Deskripsi
str

Id eksperimen.

name

Mengembalikan nama eksperimen.

Mengembalikan

Jenis Deskripsi
str

Nama eksperimen.

tags

Mengembalikan kumpulan tag yang dapat diubah pada eksperimen.

Mengembalikan

Jenis Deskripsi

Tag pada eksperimen.

workspace

Mengembalikan ruang kerja yang berisi eksperimen.

Mengembalikan

Jenis Deskripsi

Mengembalikan objek ruang kerja.

workspace_object

(Tidak digunakan lagi) Mengembalikan ruang kerja yang berisi eksperimen.

workspace Gunakan atribut .

Mengembalikan

Jenis Deskripsi

Objek ruang kerja.