Bagikan melalui


Experiment Kelas

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

Eksperimen adalah kontainer percobaan yang menunjukkan beberapa model eksekusi.

Konstruktor eksperimen.

Warisan
azureml._logging.chained_identity.ChainedIdentity
Experiment
azureml.core._portal.HasExperimentPortal
Experiment

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 kata kunci args.

workspace
Diperlukan

Objek ruang kerja yang berisi eksperimen.

name
Diperlukan
str

Nama eksperimen.

kwargs
Diperlukan

Kamus kata kunci args.

_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 menunjukkan kumpulan percobaan yang digunakan untuk memvalidasi hipotesis pengguna.

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

Untuk mendapatkan atau membuat eksperimen dari ruang kerja, Anda meminta eksperimen menggunakan nama eksperimen. Nama eksperimen harus terdiri dari 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 akan dibuat.

Ada dua cara untuk melakukan 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 tersebut membuat objek Run. Dalam skenario interaktif, gunakan metode pencatatan log seperti log untuk menambahkan pengukuran dan metrik ke catatan percobaan. Dalam skenario yang dikonfigurasi, gunakan metode status seperti get_status untuk mengambil informasi tentang proses tersebut.

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

Metode

archive

Arsipkan eksperimen.

delete

Hapus eksperimen di ruang kerja.

from_directory

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

get_docs_url

Url ke dokumentasi untuk kelas ini.

get_runs

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

list

Tampilkan daftar eksperimen di ruang kerja.

reactivate

Mengaktifkan kembali eksperimen yang diarsipkan.

refresh

Tampilkan versi eksperimen terbaru dari cloud.

remove_tags

Menghapus tag yang ditentukan dari eksperimen.

set_tags

Menambahkan atau mengubah set tag pada eksperimen. Tag yang tidak diteruskan dalam kamus tidak akan tersentuh.

start_logging

Memulai sesi pengelogan interaktif dan membuat proses interaktif dalam eksperimen yang ditentukan.

submit

Mengirim eksperimen dan menampilkan eksekusi aktif yang dibuat.

tag

Memberi tag 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 lainnya dengan nama yang sama.

delete

Hapus eksperimen di ruang kerja.

static delete(workspace, experiment_id)

Parameter

Nama Deskripsi
workspace
Diperlukan

Ruang kerja tempat eksperimen itu berada.

experiment_id
Diperlukan

Id eksperimen dari eksperimen yang akan dihapus.

from_directory

(Tidak digunakan lagi) Memuat 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 autentik. Jika Tidak Ada, kredensial Azure CLI default akan digunakan atau API akan meminta kredensial.

nilai default: None

Mengembalikan

Jenis Deskripsi

Tampilkan Eksperimen

get_docs_url

Url ke dokumentasi untuk kelas ini.

get_docs_url()

Mengembalikan

Jenis Deskripsi
str

url

get_runs

Tampilkan 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 dijalankan menurut "tag" atau {"tag": "value"}.

nilai default: None
properties
string atau dict

Filter dijalankan menurut "properti" atau {"properti": "nilai"}

nilai default: None
include_children

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

nilai default: False

Mengembalikan

Jenis Deskripsi

Daftar proses yang cocok dengan filter yang disediakan.

list

Tampilkan daftar eksperimen di ruang kerja.

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

Parameter

Nama Deskripsi
workspace
Diperlukan

Ruang kerja untuk mendaftar 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 nilai kunci tag untuk memfilter eksperimen.

nilai default: None

Mengembalikan

Jenis Deskripsi

Daftar objek percobaan.

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

Tampilkan versi eksperimen terbaru dari cloud.

refresh()

remove_tags

Menghapus tag yang ditentukan dari eksperimen.

remove_tags(tags)

Parameter

Nama Deskripsi
tags
Diperlukan
[str]

Kunci tag yang akan dihapus

set_tags

Menambahkan atau mengubah set tag pada eksperimen. Tag yang tidak diteruskan dalam kamus tidak akan tersentuh.

set_tags(tags)

Parameter

Nama Deskripsi
tags
Diperlukan

Tag yang disimpan di objek eksperimen

start_logging

Memulai sesi pengelogan interaktif dan membuat proses 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, teruskan False.

snapshot_directory
Diperlukan
str

Direktori opsional untuk mengambil snapshot. Pengaturan ke Tidak Ada tidak akan mengambil snapshot.

args
Diperlukan
kwargs
Diperlukan

Mengembalikan

Jenis Deskripsi
Run

Tampilkan eksekusi yang dimulai.

Keterangan

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


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

Catatan

run_id dibuat secara otomatis untuk setiap proses dan bersifat unik dalam eksperimen.

submit

Mengirim eksperimen dan menampilkan eksekusi aktif yang dibuat.

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

Parameter

Nama Deskripsi
config
Diperlukan

Konfigurasi yang akan dikirimkan.

tags

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

nilai default: None
kwargs
Diperlukan

Parameter tambahan yang digunakan dalam fungsi kirim untuk konfigurasi.

Mengembalikan

Jenis Deskripsi
Run

Eksekusi.

Keterangan

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

Untuk mengirimkan percobaan, Anda harus terlebih dahulu membuat objek konfigurasi yang menjelaskan bagaimana percobaan akan dijalankan. Konfigurasi tergantung pada jenis percobaan yang diperlukan.

Contoh cara mengirimkan eksperimen dari mesin 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

Catatan

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 cuplikan, 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 tersedia, file .amligore akan diutamakan.

Untuk informasi selengkapnya, lihat Snapshots.

tag

Memberi tag 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 ke 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

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

Mengembalikan

Jenis Deskripsi
str

Waktu eksperimen yang diarsipkan.

id

Tampilkan id eksperimen.

Mengembalikan

Jenis Deskripsi
str

ID eksperimen.

name

Tampilkan nama eksperimen.

Mengembalikan

Jenis Deskripsi
str

Nama Eksperimen.

tags

Tampilkan kumpulan tag yang dapat diubah pada eksperimen.

Mengembalikan

Jenis Deskripsi

Tag pada eksperimen.

workspace

Tampilkan ruang kerja yang berisi eksperimen.

Mengembalikan

Jenis Deskripsi

Tampilkan objek ruang kerja.

workspace_object

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

Menggunakan atribut workspace.

Mengembalikan

Jenis Deskripsi

Objek ruang kerja.