Tutorial: Mulai menggunakan skrip Python di Azure Machine Learning (SDK v1, bagian 1 dari 3)

BERLAKU UNTUK:SDK Python azureml v1

Dalam tutorial ini, Anda menjalankan skrip Python pertama Anda di cloud dengan Azure Machine Learning. Tutorial ini adalah bagian 1 dari seri tutorial dua bagian.

Tutorial ini menghindari kompleksitas pelatihan model pembelajaran mesin. Anda akan menjalankan skrip Python "Halo Dunia" di cloud. Anda akan mempelajari bagaimana skrip kontrol digunakan untuk mengonfigurasi dan membuat eksekusi di Azure Pembelajaran Mesin.

Dalam tutorial ini, Anda akan:

  • Membuat dan menjalankan skrip Python "Hello world!".
  • Membuat skrip kontrol Pyhton untuk mengirimkan "Hello world!" ke Azure Machine Learning.
  • Pahami konsep Azure Machine Learning dalam skrip kontrol.
  • Mengirim dan menjalankan skrip "Hello world!".
  • Melihat output kode Anda di cloud.

Prasyarat

Membuat dan menjalankan skrip Python

Tutorial ini menggunakan instans komputasi sebagai komputer pengembangan Anda. Pertama-tama, buat beberapa folder dan skrip:

  1. Masuk ke studio Azure Machine Learning dan pilih ruang kerja Anda jika diminta.
  2. Di sebelah kiri, pilih Notebooks.
  3. Di toolbar File, pilih +, lalu pilih Buat folder baru. Cuplikan layar yang menunjukkan buat alat folder baru di toolbar.
  4. Beri nama folder get-started.
  5. Di sebelah kanan nama folder, gunakan ... untuk membuat folder lain di bawah get-started. Cuplikan layar menunjukkan menu subfolder.
  6. Beri nama folder src baru. Gunakan tautan Edit lokasi jika lokasi file tidak benar.
  7. Di sebelah kanan folder src, gunakan ... untuk membuat file baru di folder src.
  8. Beri nama file hello.py. Alihkan Jenis file ke Python (.py)*.

Salin kode ini ke dalam file Anda:

# src/hello.py
print("Hello world!")

Struktur folder proyek Anda sekarang akan terlihat seperti:

Struktur folder menampilkan hello.py dalam subfolder src.

Menguji skrip Anda

Anda dapat menjalankan kode secara lokal, yang dalam hal ini berarti pada instans komputasi. Menjalankan kode secara lokal memiliki keuntungan penelusuran kesalahan kode interaktif.

Jika sebelumnya Anda telah menghentikan instans komputasi, mulai sekarang dengan alat Mulai komputasi di sebelah kanan dropdown komputasi. Tunggu sekitar satu menit agar status berubah menjadi Berjalan.

Cuplikan layar yang menunjukkan memulai instans komputasi jika berhenti

Pilih Simpan dan jalankan skrip di terminal untuk menjalankan skrip.

Cuplikan layar yang menunjukkan menyimpan dan menjalankan skrip di alat terminal di toolbar

Anda melihat output skrip di jendela terminal yang terbuka. Tutup tab dan pilih Hentikan untuk menutup sesi.

Membuat skrip kontrol

Skrip kontrol memungkinkan Anda menjalankan skrip hello.py pada sumber daya komputasi yang berbeda. Anda menggunakan skrip kontrol untuk mengontrol bagaimana dan di mana kode pembelajaran mesin Anda dijalankan.

Pilih ... di akhir folder get-started untuk membuat file baru. Buat file Python yang disebut run-hello.py dan salin/tempel kode berikut ke dalam file tersebut:

# get-started/run-hello.py
from azureml.core import Workspace, Experiment, Environment, ScriptRunConfig

ws = Workspace.from_config()
experiment = Experiment(workspace=ws, name='day1-experiment-hello')

config = ScriptRunConfig(source_directory='./src', script='hello.py', compute_target='cpu-cluster')

run = experiment.submit(config)
aml_url = run.get_portal_url()
print(aml_url)

Tip

Jika Anda menggunakan nama yang berbeda saat membuat kluster komputasi, pastikan untuk menyesuaikan nama dalam kode compute_target='cpu-cluster' juga.

Memahami kode

Berikut adalah deskripsi tentang cara kerja skrip kontrol:

ws = Workspace.from_config()

Ruang kerja tersambung ke ruang kerja Azure Machine Learning Anda, sehingga Anda dapat berkomunikasi dengan sumber daya Azure Machine Learning Anda.

experiment = Experiment( ... )

Eksperimen menyediakan cara simpel untuk mengelola beberapa pekerjaan dengan satu nama. Nantinya, Anda dapat mengetahui cara eksperimen membandingkan metrik di antara puluhan pekerjaan secara mudah.

config = ScriptRunConfig( ... )

ScriptRunConfig membungkus kode hello.py Anda dan meneruskannya ke ruang kerja Anda. Seperti namanya, Anda dapat menggunakan kelas ini untuk mengonfigurasi cara Anda ingin skripberjalan di Azure Machine Learning. Ini juga menentukan target komputasi apa yang dijalankan skrip. Dalam kode ini, target adalah kluster komputasi yang Anda buat dalam tutorial pengaturan.

run = experiment.submit(config)

Mengirimkan skrip Anda. Pengiriman ini disebut eksekusi. Di v2, pengiriman ini telah diganti namanya menjadi pekerjaan. Eksekusi/pekerjaan merangkum satu eksekusi kode Anda. Gunakan pekerjaan untuk memantau kemajuan skrip, mencatat output, menganalisis hasil, memvisualisasikan metrik, dan masih banyak lainnya.

aml_url = run.get_portal_url()

Objek run menyediakan handel pada eksekusi kode Anda. Pantau kemajuannya dari studio Azure Pembelajaran Mesin dengan URL yang mencetak dari skrip Python.

Kirim dan jalankan kode Anda di cloud

  1. Pilih Simpan dan jalankan skrip di terminal untuk menjalankan skrip kontrol Anda, yang pada gilirannya menjalankan hello.py pada kluster komputasi yang Anda buat dalam tutorial penyiapan.

  2. Di terminal, Anda mungkin diminta untuk masuk untuk mengautentikasi. Salin kode dan ikuti tautan untuk menyelesaikan langkah ini.

  3. Setelah diautentikasi, Anda akan melihat tautan di terminal. Pilih tautan untuk melihat pekerjaan.

Memantau kode Anda di cloud di studio

Output dari skrip Anda berisi tautan ke studio yang terlihat seperti ini: https://ml.azure.com/experiments/hello-world/runs/<run-id>?wsid=/subscriptions/<subscription-id>/resourcegroups/<resource-group>/workspaces/<workspace-name>.

Ikuti tautan. Pada awalnya, Anda melihat status Antrean atau Persiapan. Proses pertama membutuhkan waktu 5-10 menit untuk diselesaikan. Ini karena hal berikut terjadi:

  • Gambar docker dibuat di cloud
  • Kluster komputasi diubah ukurannya dari 0 menjadi 1 simpul
  • Gambar docker diunduh ke komputasi.

Pekerjaan berikutnya lebih cepat (~15 detik) karena gambar docker di-cache pada komputasi. Anda dapat mengujinya dengan mengirimkan ulang kode di bawah setelah pekerjaan pertama selesai.

Tunggu sekitar 10 menit. Anda melihat pesan bahwa pekerjaan telah selesai. Lalu gunakan Refresh untuk melihat perubahan status menjadi Selesai. Setelah pekerjaan selesai, buka tab Output + log . Di sana Anda dapat melihat std_log.txt file di user_logs folder . Output skrip Anda ada dalam file ini.

Folder azureml-logs dan system-logs berisi file yang dapat berguna saat Anda men-debug pekerjaan jarak jauh di cloud.

Langkah selanjutnya

Dalam tutorial ini, Anda mengambil skrip "Hello world!" sederhana dan menjalankannya di Azure. Anda melihat cara menyambungkan ke ruang kerja Azure Machine Learning, membuat eksperimen, dan mengirimkan kode hello.py Anda ke cloud.

Dalam tutorial berikutnya, Anda membuat pembelajaran ini dengan menjalankan sesuatu yang lebih menarik daripada print("Hello world!").

Catatan

Jika Anda ingin menyelesaikan seri tutorial sampai di sini dan tidak maju ke langkah berikutnya, ingatlah untuk membersihkan sumber daya Anda.