Menyiapkan laboratorium untuk mengajar data science menggunakan Python dan Jupyter Notebooks

Catatan

Artikel ini mereferensikan fitur yang tersedia sejak Pembaruan Agustus 2022, di mana rencana lab menggantikan akun lab. Untuk informasi selengkapnya, lihat Apa yang Baru dalam Pembaruan Agustus 2022.

Jupyter Notebooks adalah proyek sumber terbuka yang memungkinkan Anda dengan mudah menggabungkan teks kaya dan kode sumber Python yang dapat dieksekusi pada satu kanvas yang disebut catatan buku. Menjalankan catatan buku menghasilkan catatan linear input dan output. Output tersebut dapat mencakup teks, tabel informasi, plot sebar, dan lainnya.

Artikel ini menguraikan cara menyiapkan komputer virtual templat (VM) di Azure Lab Services dengan alat yang diperlukan untuk mengajar siswa menggunakan Jupyter Notebooks. Kami juga akan menunjukkan bagaimana siswa dapat terhubung ke notebook mereka di komputer virtual (VM) mereka.

Konfigurasi lab

Untuk menyiapkan lab ini, Anda memerlukan akses ke langganan Azure. Diskusikan dengan administrator organisasi Anda untuk melihat apakah Anda bisa mendapatkan akses ke langganan Azure yang sudah ada. Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.

Pengaturan paket lab

Setelah memiliki langganan Azure, Anda dapat membuat paket lab baru di Azure Lab Services. Untuk informasi selengkapnya tentang membuat paket lab baru, lihat Tutorial: Menyiapkan paket lab dengan Azure Lab Services. Anda juga dapat menggunakan paket lab yang ada.

Aktifkan pengaturan yang dijelaskan dalam tabel di bawah ini untuk paket lab. Untuk informasi selengkapnya tentang mengaktifkan gambar marketplace, lihat menentukan gambar Marketplace yang tersedia untuk kreator lab.

Pengaturan paket lab Petunjuk
Gambar Marketplace Di dalam akun lab Anda, aktifkan Data Science Virtual Machine – Windows Server 2019 atau Data Science Virtual Machine – Ubuntu 18.04 tergantung pada kebutuhan OS Anda.

Artikel ini menggunakan gambar komputer virtual Data Science yang tersedia di Marketplace Azure karena sudah dikonfigurasi dengan Jupyter Notebook. Gambar-gambar ini, bagaimanapun, juga mencakup banyak alat pengembangan dan pemodelan lainnya untuk data science. Jika Anda tidak menginginkan alat tambahan tersebut dan menginginkan penyiapan ringan hanya dengan notebook Jupyter, buat gambar VM kustom. Misalnya, Menginstal JupyterHub di Azure. Setelah gambar kustom dibuat, Anda dapat mengunggahnya ke galeri komputasi untuk menggunakan gambar di dalam Azure Lab Services. Pelajari selengkapnya tentang menggunakan galeri komputasi di Azure Lab Services.

Pengaturan lab

Untuk petunjuk tentang cara membuat lab, lihat Tutorial: Menyiapkan lab. Aktifkan pengaturan lab Anda seperti yang dijelaskan dalam tabel berikut ini. Untuk mengetahui informasi selengkapnya tentang cara mengaktifkan gambar Marketplace Azure, lihat Menentukan citra Marketplace Azure yang tersedia bagi pembuat lab.

Pengaturan lab Nilai
Ukuran komputer virtual Pilih Kecil atau Sedang untuk penyiapan dasar mengakses Jupyter Notebooks. Pilih GPU Kecil (Komputasi) untuk aplikasi intensif komputasi dan intensif jaringan yang digunakan dalam kelas Kecerdasan Buatan dan Pembelajaran Mendalam.
Gambar Komputer Virtual Pilih Data Science Virtual Machine – Windows Server 2019 atau Data Science Virtual Machine – Ubuntu tergantung pada kebutuhan OS Anda.
Pengaturan komputer virtual templat Pilih Gunakan komputer virtual tanpa kustomisasi..

Saat Anda membuat lab dengan ukuran GPU Kecil (Komputasi), Anda dapat menginstal driver GPU. Opsi ini menginstal driver NVIDIA terbaru dan toolkit Compute Unified Device Architecture (CUDA), yang diperlukan untuk mengaktifkan komputasi berkinerja tinggi dengan GPU. Untuk informasi selengkapnya, lihat artikel Menyiapkan lab dengan GPU komputer virtual.

Konfigurasi komputer templat

Setelah Anda membuat lab, template VM akan dibuat berdasarkan ukuran komputer virtual dan gambar yang Anda pilih. Anda mengonfigurasi template VM dengan semua yang ingin Anda berikan kepada siswa Anda untuk kelas ini. Untuk informasi selengkapnya, lihat Membuat dan mengelola templat di Azure Lab Services.

Gambar VM Data Science dilengkapi dengan banyak kerangka kerja dan alat ilmu data yang diperlukan untuk jenis kelas ini. Misalnya, gambar tersebut termasuk:

  • Jupyter Notebooks: Aplikasi web yang memungkinkan data scientist untuk mengambil data mentah, menjalankan komputasi, dan melihat hasilnya, semua di lingkungan yang sama. Hal ini akan berjalan secara lokal dalam template VM.
  • Visual Studio Code: Lingkungan pengembangan terpadu (IDE) yang memberikan pengalaman interaktif yang kaya saat menulis dan menguji buku catatan. Untuk informasi selengkapnya, lihat Bekerja dengan Jupyter Notebook di Visual Studio Code.

Gambar Data Science Virtual Machine – Ubuntu sudah disediakan dengan server X2GO dan untuk memungkinkan siswa menggunakan pengalaman desktop grafis. Tidak ada langkah lebih lanjut yang diperlukan saat menyiapkan template VM.

Mengaktifkan alat untuk menggunakan GPU

Jika Anda menggunakan ukuran GPU Kecil (Komputasi), kami sarankan Anda memverifikasi bahwa kerangka kerja dan pustaka Ilmu Data disiapkan dengan benar untuk menggunakan GPU. Anda mungkin perlu menginstal versi driver NVIDIA dan toolkit CUDA yang berbeda. Untuk mengonfigurasi GPU dengan benar, Anda harus berkonsultasi dengan dokumentasi kerangka kerja atau pustaka.

Misalnya, untuk memvalidasi bahwa GPU dikonfigurasi untuk TensorFlow, sambungkan ke templat VM dan jalankan kode Python-TensorFlow berikut di Jupyter Notebooks:

import tensorflow as tf
from tensorflow.python.client import device_lib

print(device_lib.list_local_devices())

Jika output dari kode di atas terlihat seperti berikut ini, GPU tidak dikonfigurasi untuk TensorFlow:

[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 15833696144144374634
]

Melanjutkan dengan contoh di atas, lihat Dukungan GPU TensorFlow untuk panduan. Panduan TensorFlow mencakup:

Setelah Anda mengikuti langkah-langkah TensorFlow untuk mengonfigurasi GPU, saat menjalankan ulang kode pengujian, Anda akan melihat output yang mirip dengan output berikut.

[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 15833696144144374634
, name: "/device:GPU:0"
device_type: "GPU"
memory_limit: 11154792128
locality {
  bus_id: 1
  links {
  }
}
incarnation: 2659412736190423786
physical_device_desc: "device: 0, name: NVIDIA Tesla K80, pci bus id: 0001:00:00.0, compute capability: 3.7"
]

Menyediakan catatan buku untuk kelas

Tugas berikutnya adalah menyediakan catatan buku yang Anda inginkan untuk digunakan oleh siswa. Notebook dapat disimpan secara lokal pada templat VM sehingga setiap siswa memiliki salinannya sendiri. Jika Anda ingin menggunakan contoh catatan buku dari Azure Machine Learning, lihat cara mengonfigurasi lingkungan dengan Jupyter Notebook.

Menerbitkan template komputer

Saat Anda menerbitkan templat, setiap siswa yang terdaftar di lab akan mendapatkan salinan templat VM dengan semua alat dan buku catatan lokal yang telah Anda siapkan di dalamnya.

Bagaimana siswa terhubung ke Jupyter Notebook?

Setelah Anda menerbitkan templat, setiap siswa akan memiliki akses ke VM yang dilengkapi dengan semua yang telah Anda konfigurasi untuk kelas, termasuk Jupyter Notebooks. Bagian berikut ini memperlihatkan berbagai cara bagi siswa untuk menyambungkan ke Buku Catatan Jupyter.

Untuk VM Windows

Jika Anda telah memberi siswa VM Windows, mereka perlu terhubung ke VM lab mereka untuk menggunakan Jupyter Notebooks. Untuk menyambungkan ke Windows VM, siswa dapat menggunakan koneksi desktop jarak jauh (RDP). Untuk informasi selengkapnya, lihat Menyambungkan ke VM lab Windows.

Untuk VM Linux

Jika Anda telah memberi siswa VM Linux, siswa dapat Mengakses Jupyter Notebook secara lokal setelah menyambungkan ke VM. Untuk instruksi ke SSH atau menyambungkan menggunakan X2Go, lihat Menyambungkan ke VM lab Linux.

Terowongan SSH ke server Jupyter pada VM

Beberapa siswa mungkin ingin terhubung langsung dari komputer lokal mereka langsung ke server Jupyter di dalam VM lab mereka. Protokol SSH memungkinkan penerusan port antara komputer lokal dan server jarak jauh (dalam kasus kami, lab VM siswa), sehingga aplikasi yang berjalan pada port tertentu di server terowongan ke port pemetaan pada komputer lokal. Siswa harus mengikuti langkah-langkah ini ke terowongan SSH ke server Jupyter di VM laboratorium mereka:

  1. Di portal web Lab Services (https://labs.azure.com), pastikan VM Linux yang ingin Anda sambungkan dimulai.

  2. Setelah VM berjalan, dapatkan perintah koneksi SSH dengan memilih Sambungkan, yang akan menampilkan jendela yang menyediakan string perintah SSH, yang akan terlihat seperti string berikut:

    ssh -p 12345 student@ml-lab-00000000-0000-0000-0000-000000000000.eastus2.cloudapp.azure.com
    
  3. Di komputer lokal Anda, luncurkan terminal atau prompt perintah, dan salin string koneksi SSH ke sana. Kemudian, -L 8888:localhost:8888 tambahkan ke string perintah, yang membuat terowongan di antara port. String akhir akan terlihat seperti:

    ssh –L 8888:localhost:8888 -p 12345 student@ml-lab-00000000-0000-0000-0000-000000000000.eastus.cloudapp.azure.com
    
  4. Tekan ENTER untuk menjalankan perintah.

  5. Ketika diminta, berikan kata sandi untuk terhubung ke lab VM.

  6. Setelah Anda tersambung ke VM, mulai server Jupyter menggunakan perintah ini:

    jupyter notebook
    
  7. Menjalankan perintah akan memberi Anda URL di terminal. Hasilnya akan terlihat seperti ini:

    http://localhost:8888/?token=8c09ecfc93e6a8cbedf9c66dffdae19670a64acc1d37
    
  8. Tempelkan URL ini ke browser di komputer lokal Anda untuk menyambungkan dan mengerjakan Buku Catatan Jupyter Anda.

    Catatan

    Visual Studio Code juga memungkinkan pengalaman pengeditan Jupyter Notebook yang hebat. Anda dapat mengikuti instruksi tentang cara terhubung ke server Jupyter jarak jauh dan menggunakan URL yang sama dari langkah sebelumnya untuk terhubung dari VS Code alih-alih dari browser.

Perkiraan biaya

Mari membahas kemungkinan perkiraan biaya untuk kelas ini. Kami akan menggunakan kelas berisi 25 siswa. Ada 20 jam waktu kelas yang dijadwalkan. Selain itu, setiap siswa mendapatkan kuota 10 jam untuk pekerjaan rumah atau penugasan di luar waktu kelas yang dijadwalkan. Ukuran VM yang kami pilih adalah GPU kecil (komputasi), yaitu 139 unit lab. Jika Anda ingin menggunakan ukuran Kecil (20 unit lab) atau Sedang (42 unit lab), Anda dapat mengganti bagian unit lab dalam persamaan di bawah ini dengan nomor yang benar.

Berikut adalah contoh perkiraan biaya yang mungkin untuk kelas ini: 25 siswa * (20 jam terjadwal + 10 jam kuota) * 139 unit lab * 0,01 USD per jam = 1042,5 USD

Penting

Perkiraan biaya ini hanya sebagai contoh. Untuk detail harga saat ini, lihat Harga Azure Lab Services.

Kesimpulan

Dalam artikel ini, kami berjalan melalui langkah-langkah untuk membuat laboratorium untuk kelas Jupyter Notebooks. Anda dapat menggunakan pengaturan serupa untuk kelas pembelajaran mesin lainnya.

Langkah berikutnya

Gambar templat sekarang dapat diterbitkan ke lab. Untuk informasi selengkapnya, lihat Menerbitkan templat VM.

Saat Anda menyiapkan lab, lihat artikel berikut ini: