All Products
Search
Document Center

Platform For AI:Panduan cepat: Pemodelan interaktif dengan DSW

Last Updated:Oct 22, 2026

Kembangkan, latih, dan terapkan model deep learning di cloud menggunakan Notebook bawaan atau VSCode di Data Science Workshop (DSW). Topik ini menggunakan contoh pengenalan angka tulisan tangan MNIST untuk mendemonstrasikan alur kerja secara lengkap.

Catatan

Pengenalan angka tulisan tangan MNIST adalah tugas pengantar klasik dalam deep learning yang bertujuan melatih model untuk mengenali 10 angka tulisan tangan dari 0 hingga 9.

Prasyarat

PAI telah diaktifkan dan ruang kerja telah dibuat di Akun Alibaba Cloud Anda. Jika PAI belum diaktifkan, buka Konsol PAI, pilih Wilayah target di pojok kiri atas halaman, lalu selesaikan otorisasi dan aktivasi satu klik.

Penagihan

Instans DSW dan layanan model EAS dalam topik ini dibuat dalam kelompok sumber daya publik dan ditagih berdasarkan metode pay-as-you-go. Untuk detail penagihan, lihat Penagihan DSW dan Penagihan EAS.

Membuat instans DSW

  1. Buka halaman DSW.

    1. Buka Konsol PAI.

    2. Pilih Wilayah target di pojok kiri atas halaman.

    3. Klik Workspaces di panel navigasi kiri untuk membuka ruang kerja target.

    4. Di panel navigasi kiri, pilih Model Training > Interactive Modeling (DSW) > Create an instance..

  2. Dalam wizard Configure Instance, konfigurasikan parameter berikut dan pertahankan nilai default untuk parameter lainnya:

    • Resource Type: Pilih Public Resources (pay-as-you-go).

    • Instance Type: Pilih ecs.gn7i-c8g1.2xlarge.

      Jika Tipe instans ini tidak tersedia, pilih Tipe instans GPU lain.
    • Image config: Pilih Alibaba Cloud Image, cari dan pilih image modelscope:1.26.0-pytorch2.6.0-gpu-py311-cu124-ubuntu22.04.

      Gunakan image yang sama untuk menghindari masalah kompatibilitas lingkungan.
    • Mount storage: Digunakan untuk menyimpan file pengembangan model. Topik ini menggunakan OSS. Klik OSS, klik ikon image, pilih Bucket, dan buat direktori (misalnya, pai_test).

      Jika tidak ada bucket yang tersedia di Wilayah saat ini, ikuti langkah-langkah berikut untuk membuatnya:

      (Opsional) Membuat bucket OSS

      1. OSS telah diaktifkan.

      2. Buka Konsol OSS dan klik Create Bucket. Masukkan Bucket Name, pilih Wilayah yang sama dengan PAI untuk Region, pertahankan nilai default untuk parameter lainnya, lalu klik Complete Creation.

        image

      • Uri: oss://**********oss-cn-hangzhou-internal.aliyuncs.com/pai_test/

      • Mount Path: /mnt/data/

  3. Klik OK untuk membuat instans.

    Jika instans gagal dimulai, lihat Membuat instans DSW untuk pemecahan masalah.

Mengembangkan model di DSW

  1. Klik Open pada daftar instans untuk membuka lingkungan pengembangan DSW. Di launcher, klik JupyterLab untuk membuat lingkungan pengembangan Notebook.

  2. Tulis kode model. Topik ini menyediakan kode Pelatihan MNIST: unduh mnist.ipynb, lalu klik ikon image di pojok kiri atas Notebook untuk mengunggah file tersebut.

    image

  3. Latih model. Buka mnist.ipynb, temukan Sel yang berisi kode Pelatihan, lalu klik ikon image untuk menjalankan Sel tersebut. Kode akan secara otomatis mengunduh set data MNIST ke direktori dataSet dan menyimpan model yang telah dilatih ke direktori output. Proses Pelatihan memakan waktu sekitar 10 menit.

    image

    image

    Output Pelatihan menampilkan akurasi model pada set validasi, yang mencerminkan kemampuan generalisasinya. Dalam contoh ini, akurasi set validasi adalah 98%. Lanjutkan ke langkah berikutnya.

  4. Lihat kurva Pelatihan. Jalankan Sel berikut dan buka URL TensorBoard http://localhost:6006/.

    image

    TensorBoard menampilkan kurva train_loss (loss set pelatihan) dan validation_loss (loss set validasi).

    image

    Setelah melihat kurva, klik ikon image di dalam Sel untuk menghentikan TensorBoard. Jika TensorBoard tidak dihentikan, Sel berikutnya tidak dapat dijalankan.

    (Opsional) Menyetel hiperparameter berdasarkan kurva loss

    Evaluasi hasil Pelatihan berdasarkan perubahan nilai loss:

    • Baik train_loss maupun validation_loss terus menurun sebelum Pelatihan berakhir (underfitting).

      Tingkatkan num_epochs (epoch Pelatihan) atau naikkan learning_rate (tingkat pembelajaran) untuk mengurangi underfitting.

    • train_loss terus menurun tetapi validation_loss naik sebelum Pelatihan berakhir (Overfitting).

      Kurangi num_epochs atau turunkan learning_rate untuk mencegah Overfitting.

    • Baik train_loss maupun validation_loss mendatar sebelum Pelatihan berakhir (sesuai dengan baik).

      Model telah mencapai kondisi yang diinginkan. Lanjutkan ke langkah berikutnya.

  5. Uji model. Jalankan Sel berikut untuk menampilkan 20 gambar uji beserta Label aslinya dan prediksi model.

    image

    Contoh output:

    image

  6. Cadangkan file model. Instans DSW dalam topik ini dibuat dalam kelompok sumber daya publik, dan file disimpan di disk cloud gratis. Jika instans dimatikan selama lebih dari 15 hari, konten pada disk cloud akan dihapus secara otomatis. Salin file model ke OSS untuk Penerapan selanjutnya dengan EAS.

    image

    Buka Konsol OSS untuk melihat file yang telah disalin:

    image

Setelah model dikembangkan, Anda dapat menerapkannya sebagai layanan online. Untuk informasi selengkapnya, lihat Menerapkan layanan model dengan EAS.

Penting

Instans DSW dalam topik ini dibuat dalam kelompok sumber daya publik dan ditagih berdasarkan metode pay-as-you-go. Saat instans tidak lagi diperlukan, hentikan atau hapus instans di sisi kanan halaman daftar instans untuk menghindari tagihan berkelanjutan.

Menerapkan layanan model dengan EAS

EAS (Elastic Algorithm Service) memungkinkan Anda menerapkan model yang telah dilatih sebagai layanan inferensi online atau aplikasi web AI. EAS mendukung resource heterogen dan menggabungkan fitur seperti auto scaling, uji stres satu klik, rilis canary, dan Pemantauan waktu nyata untuk memastikan stabilitas layanan dalam skenario konkurensi tinggi dengan biaya yang lebih rendah.

  1. Tulis antarmuka web untuk model dan salin ke OSS. Topik ini menyediakan kode antarmuka web dan perintah penyalinan. Jalankan Sel berikut untuk menyelesaikan langkah ini.

    image

  2. (Opsional) Verifikasi antarmuka web di DSW. Jalankan Sel berikut untuk menginstal dependensi dan memulai layanan.

    image

    Uji antarmuka. Di halaman launcher, klik Terminal untuk membuka terminal dan jalankan python request_web.py. Hasil berikut akan dikembalikan:

    {"prediction": 7}
    Catatan

    Mengakses layanan web di DSW melalui Internet memerlukan VPC, NAT gateway, dan Elastic IP (EIP). Untuk informasi selengkapnya, lihat Mengakses layanan dalam instans melalui jaringan publik.

  3. Buat layanan EAS. Di panel navigasi kiri Konsol PAI, klik Elastic Algorithm Service (EAS) > Deploy Service > Custom Deployment.

    Konfigurasikan parameter berikut dan pertahankan nilai default untuk parameter lainnya:

    • Resource Type: Pilih Public Resources. Untuk Instance Type, pilih ecs.gn7i-c8g1.2xlarge.

      Jika Tipe instans ini tidak tersedia, pilih Tipe instans GPU lain.
    • Deployment Method: Image-based Deployment

    • Image Configuration: Pilih Official Image, cari dan pilih torcheasyrec:1.2.0-pytorch2.11.0-gpu-py311-cu126-ubuntu22.04.

      Dalam lingkungan produksi, biasanya Anda mengembangkan dan menguji kode di DSW terlebih dahulu, kemudian mengemas lingkungan Kontainer dan mendorongnya ke Container Registry (ACR) untuk digunakan oleh EAS selama Penerapan model. Untuk informasi selengkapnya, lihat Membuat image instans DSW.
    • Mount storage: File model dan kode antarmuka web telah disalin ke OSS. Klik OSS dan pilih jalur yang sesuai.

      • Uri: oss://*/pai_test/

      • Mount Path: /mnt/data/

    • Command to Run: web.py dipasang ke /mnt/data/. Perintah jalannya adalah python /mnt/data/web.py

    • Port Number: Masukkan Port 9000, yang digunakan oleh web.py.

    • Third-party Library Settings: Masukkan bottle torchvision.

      Image resmi yang dipilih tidak menyertakan library bottle atau torchvision (seperti yang diverifikasi melalui pengujian). Oleh karena itu, masukkan bottle torchvision dalam konfigurasi library pihak ketiga.

    Klik Deploy untuk membuat layanan. Diperlukan waktu sekitar 5 menit untuk membuat layanan. Ketika status berubah menjadi Running, layanan telah diterapkan.

  4. Dapatkan informasi pemanggilan. Di halaman detail layanan, klik View Endpoint Information untuk mendapatkan Internet Endpoint dan Token.

  5. Panggil layanan. Ganti Internet Endpoint dan Token dalam kode berikut dengan nilai yang sebenarnya, lalu jalankan kode tersebut.

    import requests
    
    """
    URL gambar uji:
    label adalah 7
    http://aliyun-document-review.oss-cn-beijing.aliyuncs.com/dsw_files/mnist_label_7_No_0.jpg
    label adalah 2
    http://aliyun-document-review.oss-cn-beijing.aliyuncs.com/dsw_files/mnist_label_2_No_1.jpg
    label adalah 1
    http://aliyun-document-review.oss-cn-beijing.aliyuncs.com/dsw_files/mnist_label_1_No_2.jpg
    label adalah 0
    http://aliyun-document-review.oss-cn-beijing.aliyuncs.com/dsw_files/mnist_label_0_No_3.jpg
    label adalah 4
    http://aliyun-document-review.oss-cn-beijing.aliyuncs.com/dsw_files/mnist_label_4_No_4.jpg
    label adalah 5
    http://aliyun-document-review.oss-cn-beijing.aliyuncs.com/dsw_files/mnist_label_9_No_5.jpg
    """
    
    image_url = 'http://aliyun-document-review.oss-cn-beijing.aliyuncs.com/dsw_files/mnist_label_7_No_0.jpg'
    
    # Klien mengunduh gambar untuk mendapatkan data biner
    img_response = requests.get(image_url, timeout=10)
    # Periksa apakah permintaan berhasil berdasarkan kode status
    img_response.raise_for_status()
    img_bytes = img_response.content
    
    # Di header, ganti <EAS_TOKEN> dengan token yang sebenarnya
    # Dalam produksi, sebaiknya atur token sebagai Variabel lingkungan untuk mencegah kebocoran informasi sensitif
    # Untuk informasi tentang cara mengonfigurasi Variabel lingkungan, lihat https://www.alibabacloud.com/help/zh/sdk/developer-reference/configure-the-alibaba-cloud-accesskey-environment-variable-on-linux-macos-and-windows-systems
    headers = {"Authorization": "Token"}
    # Kirim data biner sebagai body permintaan POST ke layanan model
    resp = requests.post('public endpoint/predict_image', data=img_bytes, headers=headers)
    print(resp.json())

    Hasil berikut akan dikembalikan:

    {"prediction": 7}
Penting

Layanan EAS dalam topik ini dibuat dalam kelompok sumber daya publik dan ditagih berdasarkan metode pay-as-you-go. Saat layanan tidak lagi diperlukan, hentikan atau hapus layanan di sisi kanan halaman daftar layanan untuk menghindari tagihan berkelanjutan.

Referensi