All Products
Search
Document Center

Platform For AI:Mulai cepat: Pemodelan interaktif dengan DSW

Last Updated:Aug 29, 2026

Gunakan Notebook atau VSCode bawaan di DSW (Data Science Workshop) untuk mengembangkan, melatih, dan menerapkan model pembelajaran mendalam di cloud. Topik ini menggunakan pengenalan digit tulisan tangan MNIST sebagai contoh untuk menunjukkan alur kerja lengkap.

Catatan

Pengenalan digit tulisan tangan MNIST adalah tugas pengantar klasik dalam pembelajaran mendalam. Tujuannya adalah melatih model untuk mengenali 10 digit tulisan tangan (0–9).

Prasyarat

Akun Alibaba Cloud harus telah mengaktifkan PAI dan membuat ruang kerja. Jika belum mengaktifkan PAI, kunjungi PAI console, pilih wilayah target di pojok kiri atas halaman, lalu selesaikan otorisasi satu klik dan aktivasi produk.

Penagihan

Topik ini menggunakan kelompok sumber daya publik untuk membuat instans DSW dan layanan model EAS, yang dikenai biaya berdasarkan skema bayar sesuai penggunaan. Untuk detail penagihan, lihat Penagihan DSW dan Penagihan EAS.

Buat instans DSW

  1. Buka halaman DSW.

    1. Kunjungi PAI console.

    2. Pilih wilayah target di pojok kiri atas halaman.

    3. Di panel navigasi kiri, klik Workspaces untuk membuka ruang kerja target.

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

  2. Di halaman wizard Configure Instance, konfigurasikan parameter berikut dan pertahankan pengaturan default untuk parameter lainnya.

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

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

      Jika tipe instans ini habis stoknya, Anda dapat memilih instans GPU lain.

    • Image config: Pilih Alibaba Cloud Image dan cari image modelscope:1.26.0-pytorch2.6.0-gpu-py311-cu124-ubuntu22.04.

      Kami menyarankan Anda menggunakan image yang sama untuk menghindari masalah kompatibilitas lingkungan.
    • Mount storage: Pertahankan file pengembangan model secara persisten. Topik ini menggunakan Object Storage Service (OSS). Klik OSS, klik ikon image, pilih Bucket, lalu buat direktori (misalnya, pai_test).

      Jika tidak tersedia bucket di wilayah saat ini, ikuti langkah-langkah berikut untuk membuatnya:

      (Opsional) Buat bucket OSS

      1. OSS telah diaktifkan.

      2. Kunjungi OSS console, klik Create Bucket, masukkan Bucket Name, atur Region ke wilayah yang sama dengan PAI, pertahankan pengaturan default untuk parameter lainnya, lalu klik Create.

        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 Buat instans DSW untuk troubleshooting.

Kembangkan model di DSW

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

  2. Tulis kode model. Kode pelatihan MNIST disediakan: unduh mnist.ipynb, lalu klik ikon image di pojok kiri atas Notebook untuk mengunggah file tersebut.

    image

  3. Lakukan pelatihan model. Buka mnist.ipynb, temukan sel kode pelatihan, lalu klik ikon image untuk menjalankannya. Kode tersebut 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

    Proses pelatihan menghasilkan akurasi pada set validasi, yang mencerminkan kemampuan generalisasi. Pada contoh ini, akurasi set validasi adalah 98%. Anda dapat melanjutkan ke langkah berikutnya.

  4. Lihat kurva pelatihan. Jalankan sel berikut dan klik URL TensorBoard http://localhost:6006/.

    image

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

    image

    Setelah melihat kurva, klik ikon image di sel tersebut untuk menghentikan TensorBoard. Jika TensorBoard tidak dihentikan, sel berikutnya tidak dapat dieksekusi.

    (Opsional) Sesuaikan hiperparameter berdasarkan kurva loss

    Efektivitas pelatihan berdasarkan tren nilai loss:

    • train_loss dan validation_loss masih menurun sebelum pelatihan berakhir (underfitting)

      Tingkatkan num_epochs (jumlah epoch pelatihan) atau tingkatkan learning_rate untuk meningkatkan kemampuan fitting model.

    • train_loss terus menurun tetapi validation_loss meningkat sebelum pelatihan berakhir (overfitting)

      Kurangi num_epochs atau kurangi learning_rate untuk menghindari overfitting.

    • train_loss dan validation_loss stabil sebelum pelatihan berakhir (fit yang baik)

      Model telah mencapai kondisi ideal. Anda dapat melanjutkan ke langkah berikutnya.

  5. Uji model. Jalankan sel berikut untuk menampilkan 20 gambar uji beserta label asli dan prediksi model.

    image

    Contoh output:

    image

  6. Pertahankan file model. Topik ini menggunakan kelompok sumber daya publik untuk membuat instans DSW, dan file disimpan di disk cloud gratis. Jika instans dihentikan lebih dari 15 hari, konten disk cloud akan dihapus secara otomatis. Salin file model ke OSS untuk digunakan selanjutnya dalam penerapan PAI-EAS.

    image

    Kunjungi OSS console untuk melihat file yang telah disalin:

    image

Setelah pengembangan model selesai, Anda dapat menerapkan model sebagai layanan online. Lihat Terapkan layanan model dengan EAS.

Penting

Topik ini menggunakan sumber daya publik untuk membuat instans DSW, yang dikenai biaya berdasarkan skema bayar sesuai penggunaan. Saat Anda tidak menggunakan instans tersebut, hentikan atau hapus instans dari halaman daftar instans untuk menghindari biaya berkelanjutan.

Terapkan 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 sumber daya 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 lebih rendah.

  1. Tulis kode layanan web model dan salin ke OSS. Kode layanan web dan perintah salin disediakan. Jalankan sel berikut.

    image

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

    image

    Uji layanan tersebut. Di halaman launcher, klik VSCode untuk membuka lingkungan pengembangan. Klik request_web.py di panel kiri, lalu klik kanan dan pilih Run Python > Run Python File in Terminal untuk mengeksekusi kode. Hasil berikut dikembalikan:

    {"prediction": 7}
    Catatan

    Untuk mengakses layanan web di DSW melalui Internet, Anda harus mengonfigurasi VPC, NAT Gateway, dan EIP. Untuk detailnya, lihat Akses layanan di 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 pengaturan default untuk parameter lainnya:

    • Deployment Method: Image-based Deployment

    • Image Configuration: Pilih Image Address dan tempel alamat image yang digunakan oleh DSW.

      DSW telah memverifikasi bahwa image ini dapat menjalankan kode model dengan baik. Menggunakan image yang sama untuk penerapan menghindari masalah lingkungan.

      image

    • Mount storage: File model dan kode layanan web telah disalin ke OSS. Klik OSS dan pilih path yang sesuai.

      • Uri: oss://*****/pai_test/

      • Mount Path: /mnt/data/

    • Command to Run: web.py telah dimount ke /mnt/data/. Sesuaikan path-nya. Perintah run-nya adalah: python /mnt/data/web.py

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

    • Third-party Library Settings: Image yang dipilih tidak menyertakan library bottle. Tambahkan bottle di sini.

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

    • Configure a system disk: Atur menjadi 20 GB.

      Image-nya besar. Ruang disk sistem yang tidak mencukupi menyebabkan kegagalan startup instans. Kami menyarankan Anda mengaturnya menjadi 20 GB atau lebih.

    Klik Deploy untuk membuat layanan. Pembuatan layanan memerlukan waktu sekitar 5 menit. Layanan dianggap diterapkan ketika status berubah menjadi Running.

  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 aktual, 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'
    
    # Unduh gambar sebagai data biner
    img_response = requests.get(image_url, timeout=10)
    # Secara otomatis periksa apakah permintaan berhasil berdasarkan kode status
    img_response.raise_for_status()
    img_bytes = img_response.content
    
    # Ganti <EAS_TOKEN> di header dengan token aktual
    # Di lingkungan produksi, kami menyarankan Anda menyetel token sebagai variabel lingkungan untuk mencegah kebocoran informasi sensitif.
    # Untuk informasi lebih lanjut 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('Call URL/predict_image', data=img_bytes, headers=headers)
    print(resp.json())

    Hasil:

    {"prediction": 7}
Penting

Topik ini menggunakan sumber daya publik untuk membuat layanan EAS, yang dikenai biaya berdasarkan skema bayar sesuai penggunaan. Saat Anda tidak menggunakan layanan tersebut, hentikan atau hapus layanan dari halaman daftar layanan untuk menghindari biaya berkelanjutan.

Referensi