PipelineData Kelas
Mewakili data perantara dalam alur Azure Machine Learning.
Data yang digunakan dalam alur dapat dihasilkan dengan satu langkah dan dikonsumsi dalam langkah lain dengan menyediakan objek PipelineData sebagai output dari satu langkah dan input dari satu atau lebih langkah selanjutnya.
Catatan jika Anda menggunakan data alur, pastikan direktori yang digunakan tersedia.
Contoh python untuk memastikan direktori tersedia, misalnya Anda memiliki port output bernama output_folder dalam satu langkah alur, Anda ingin menulis beberapa data ke jalur relatif di folder ini.
import os
os.makedirs(args.output_folder, exist_ok=True)
f = open(args.output_folder + '/relative_path/file_name', 'w+')
PipelineData menggunakan DataReference yang mendasarinya yang bukan lagi merupakan pendekatan yang disarankan untuk akses dan pengiriman data, silakan gunakan OutputFileDatasetConfig sebagai gantinya, Anda dapat menemukan sampel di sini: Alur menggunakan OutputFileDatasetConfig.
Menginisialisasi PipelineData.
- Warisan
-
builtins.objectPipelineData
Konstruktor
PipelineData(name, datastore=None, output_name=None, output_mode='mount', output_path_on_compute=None, output_overwrite=None, data_type=None, is_directory=None, pipeline_output_name=None, training_output=None)
Parameter
Nama | Deskripsi |
---|---|
name
Diperlukan
|
Nama objek PipelineData, yang hanya dapat berisi huruf, digit, dan garis bawah. Nama PipelineData digunakan untuk mengidentifikasi output suatu langkah. Setelah alur selesai dijalankan, Anda dapat menggunakan nama langkah dengan nama output untuk mengakses output tertentu. Nama harus unik pada satu langkah dalam alur. |
datastore
|
Penyimpanan data tempat PipelineData akan disimpan. Jika tidak ditentukan, penyimpanan data default digunakan. nilai default: None
|
output_name
|
Nama output, jika nama None digunakan. Hanya dapat berisi huruf, angka, dan garis bawah. nilai default: None
|
output_mode
|
Menentukan apakah langkah yang menghasilkan akan menggunakan metode "upload" atau "mount" untuk mengakses data. nilai default: mount
|
output_path_on_compute
|
Untuk nilai default: None
|
output_overwrite
|
Untuk nilai default: None
|
data_type
|
Opsional. Jenis data dapat digunakan untuk menentukan jenis output yang diharapkan dan untuk merinci bagaimana langkah-langkah penyerapan harus menggunakan data. Ini bisa menjadi untai yang ditentukan pengguna. nilai default: None
|
is_directory
|
Menentukan apakah data merupakan direktori atau file tunggal. Ini hanya digunakan untuk menentukan jenis data yang digunakan oleh ujung belakang Azure ML saat parameter nilai default: None
|
pipeline_output_name
|
Jika disediakan output ini akan tersedia dengan menggunakan nilai default: None
|
training_output
|
Mendefinisikan output untuk hasil pelatihan. Ini hanya diperlukan untuk pelatihan tertentu yang menghasilkan jenis output yang berbeda seperti Metrik dan Model. Misalnya, AutoMLStep menghasilkan metrik dan model. Anda juga dapat menentukan perulangan atau metrik pelatihan tertentu yang digunakan untuk mendapatkan model terbaik. Untuk HyperDriveStep, Anda juga dapat menentukan file model tertentu yang akan disertakan dalam output. nilai default: None
|
name
Diperlukan
|
Nama objek PipelineData, yang hanya dapat berisi huruf, digit, dan garis bawah. Nama PipelineData digunakan untuk mengidentifikasi output suatu langkah. Setelah alur selesai dijalankan, Anda dapat menggunakan nama langkah dengan nama output untuk mengakses output tertentu. Nama harus unik pada satu langkah dalam alur. |
datastore
Diperlukan
|
Penyimpanan data tempat PipelineData akan disimpan. Jika tidak ditentukan, penyimpanan data default digunakan. |
output_name
Diperlukan
|
Nama output, jika nama None digunakan. yang hanya dapat berisi huruf, digit, dan garis bawah. |
output_mode
Diperlukan
|
Menentukan apakah langkah yang menghasilkan akan menggunakan metode "upload" atau "mount" untuk mengakses data. |
output_path_on_compute
Diperlukan
|
Untuk |
output_overwrite
Diperlukan
|
Untuk |
data_type
Diperlukan
|
Opsional. Jenis data dapat digunakan untuk menentukan jenis output yang diharapkan dan untuk merinci bagaimana langkah-langkah penyerapan harus menggunakan data. Ini bisa menjadi untai yang ditentukan pengguna. |
is_directory
Diperlukan
|
Menentukan apakah data merupakan direktori atau file tunggal. Ini hanya digunakan untuk menentukan jenis data yang digunakan oleh ujung belakang Azure ML saat parameter |
pipeline_output_name
Diperlukan
|
Jika disediakan output ini akan tersedia dengan menggunakan |
training_output
Diperlukan
|
Mendefinisikan output untuk hasil pelatihan. Ini hanya diperlukan untuk pelatihan tertentu yang menghasilkan jenis output yang berbeda seperti Metrik dan Model. Misalnya, AutoMLStep menghasilkan metrik dan model. Anda juga dapat menentukan perulangan atau metrik pelatihan tertentu yang digunakan untuk mendapatkan model terbaik. Untuk HyperDriveStep, Anda juga dapat menentukan file model tertentu yang akan disertakan dalam output. |
Keterangan
PipelineData mewakili output data yang akan dihasilkan oleh suatu langkah saat dijalankan. Gunakan PipelineData saat membuat langkah-langkah untuk menjelaskan file atau direktori yang akan dihasilkan oleh langkah tersebut. Output data ini akan ditambahkan ke Penyimpanan data yang ditentukan dan dapat diambil dan ditampilkan nanti.
Misalnya, langkah alur berikut menghasilkan satu output, bernama "model":
from azureml.pipeline.core import PipelineData
from azureml.pipeline.steps import PythonScriptStep
datastore = ws.get_default_datastore()
step_output = PipelineData("model", datastore=datastore)
step = PythonScriptStep(script_name="train.py",
arguments=["--model", step_output],
outputs=[step_output],
compute_target=aml_compute,
source_directory=source_directory)
Dalam hal ini, skrip train.py akan menulis model yang dihasilkannya ke lokasi yang disediakan untuk skrip melalui argumen –model.
Objek PipelineData juga digunakan saat membuat Alur untuk menjelaskan dependensi langkah. Untuk menentukan bahwa langkah memerlukan output langkah lain sebagai input, gunakan objek PipelineData di konstruktor kedua langkah tersebut.
Misalnya, langkah pelatihan alur bergantung pada output process_step_output dari langkah proses alur:
from azureml.pipeline.core import Pipeline, PipelineData
from azureml.pipeline.steps import PythonScriptStep
datastore = ws.get_default_datastore()
process_step_output = PipelineData("processed_data", datastore=datastore)
process_step = PythonScriptStep(script_name="process.py",
arguments=["--data_for_train", process_step_output],
outputs=[process_step_output],
compute_target=aml_compute,
source_directory=process_directory)
train_step = PythonScriptStep(script_name="train.py",
arguments=["--data_for_train", process_step_output],
inputs=[process_step_output],
compute_target=aml_compute,
source_directory=train_directory)
pipeline = Pipeline(workspace=ws, steps=[process_step, train_step])
Ini akan membuat Alur dengan dua langkah. Langkah proses akan dijalankan terlebih dahulu, kemudian setelah selesai, langkah melatih akan dijalankan. Azure ML akan memberikan output yang dihasilkan oleh langkah proses ke langkah pelatihan.
Lihat halaman ini untuk contoh lebih lanjut menggunakan PipelineData untuk membuat Alur: https://aka.ms/pl-data-dep
Untuk jenis komputasi yang didukung, PipelineData juga dapat digunakan untuk menentukan bagaimana data akan diproduksi dan digunakan oleh eksekusi. Ada dua metode yang didukung:
Mount (default): Data input atau output dipasang ke penyimpanan lokal pada node komputasi, dan variabel lingkungan diatur yang menunjuk ke jalur data ini ($AZUREML_DATAREFERENCE_name). Untuk kenyamanan, Anda dapat meneruskan objek PipelineData sebagai salah satu argumen ke skrip Anda, misalnya menggunakan parameter
arguments
dari PythonScriptStep, dan objek akan menyelesaikan ke jalur ke data. Untuk output, skrip komputasi Anda harus membuat file atau direktori di jalur output ini. Untuk melihat nilai variabel lingkungan yang digunakan saat Anda meneruskan objek Alur sebagai argumen, gunakan metode get_env_variable_name.Unggah: Tentukan
output_path_on_compute
yang sesuai dengan nama file atau direktori yang akan dihasilkan skrip Anda. (Variabel lingkungan tidak digunakan dalam kasus ini.)
Metode
as_dataset |
Promosikan output perantara ke dalam Himpunan Data. Himpunan data ini akan ada setelah langkah tersebut dijalankan. Harap dicatat bahwa output harus dipromosikan menjadi himpunan data agar input berikutnya dapat digunakan sebagai himpunan data. Jika as_dataset tidak dipanggil pada output tetapi hanya dipanggil pada input, maka hal tersebut akan menjadi noop dan input tidak akan digunakan sebagai himpunan data. Contoh kode di bawah ini menunjukkan penggunaan as_dataset yang benar:
|
as_download |
Gunakan PipelineData sebagai unduhan. |
as_input |
Buat InputPortBinding dan tentukan nama input (tetapi gunakan mode default). |
as_mount |
Gunakan PipelineData sebagai mount. |
create_input_binding |
Buat pengikatan input. |
get_env_variable_name |
Kembalikan nama variabel lingkungan untuk PipelineData ini. |
as_dataset
Promosikan output perantara ke dalam Himpunan Data.
Himpunan data ini akan ada setelah langkah tersebut dijalankan. Harap dicatat bahwa output harus dipromosikan menjadi himpunan data agar input berikutnya dapat digunakan sebagai himpunan data. Jika as_dataset tidak dipanggil pada output tetapi hanya dipanggil pada input, maka hal tersebut akan menjadi noop dan input tidak akan digunakan sebagai himpunan data. Contoh kode di bawah ini menunjukkan penggunaan as_dataset yang benar:
# as_dataset is called here and is passed to both the output and input of the next step.
pipeline_data = PipelineData('output').as_dataset()
step1 = PythonScriptStep(..., outputs=[pipeline_data])
step2 = PythonScriptStep(..., inputs=[pipeline_data])
as_dataset()
Mengembalikan
Jenis | Deskripsi |
---|---|
Output perantara sebagai Himpunan data. |
as_download
Gunakan PipelineData sebagai unduhan.
as_download(input_name=None, path_on_compute=None, overwrite=None)
Parameter
Nama | Deskripsi |
---|---|
input_name
|
Gunakan untuk menentukan nama untuk input ini. nilai default: None
|
path_on_compute
|
Jalur pada komputasi untuk pengunduhan. nilai default: None
|
overwrite
|
Gunakan untuk menunjukkan apakah akan menimpa data yang ada. nilai default: None
|
Mengembalikan
Jenis | Deskripsi |
---|---|
InputPortBinding dengan PipelineData ini sebagai sumbernya. |
as_input
Buat InputPortBinding dan tentukan nama input (tetapi gunakan mode default).
as_input(input_name)
Parameter
Nama | Deskripsi |
---|---|
input_name
Diperlukan
|
Gunakan untuk menentukan nama untuk input ini. |
Mengembalikan
Jenis | Deskripsi |
---|---|
InputPortBinding dengan PipelineData ini sebagai sumbernya. |
as_mount
Gunakan PipelineData sebagai mount.
as_mount(input_name=None)
Parameter
Nama | Deskripsi |
---|---|
input_name
|
Gunakan untuk menentukan nama untuk input ini. nilai default: None
|
Mengembalikan
Jenis | Deskripsi |
---|---|
InputPortBinding dengan PipelineData ini sebagai sumbernya. |
create_input_binding
Buat pengikatan input.
create_input_binding(input_name=None, mode=None, path_on_compute=None, overwrite=None)
Parameter
Nama | Deskripsi |
---|---|
input_name
|
Nama input. nilai default: None
|
mode
|
Mode untuk mengakses PipelineData ("mount" atau "download"). nilai default: None
|
path_on_compute
|
Untuk mode "unduh", jalur pada komputasi data akan berada. nilai default: None
|
overwrite
|
Untuk mode "unduh", apakah akan menimpa data yang ada. nilai default: None
|
Mengembalikan
Jenis | Deskripsi |
---|---|
InputPortBinding dengan PipelineData ini sebagai sumbernya. |
get_env_variable_name
Kembalikan nama variabel lingkungan untuk PipelineData ini.
get_env_variable_name()
Mengembalikan
Jenis | Deskripsi |
---|---|
Nama variabel lingkungan. |
Atribut
data_type
datastore
Datastore tempat PipelineData akan berada.
Mengembalikan
Jenis | Deskripsi |
---|---|
Objek Datastore. |
name
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk