All Products
Search
Document Center

Platform For AI:Panduan cepat Data Science Workshop (DSW)

Last Updated:Mar 31, 2026

Data Science Workshop (DSW) menyediakan IDE berbasis cloud untuk pengembangan AI yang dilengkapi berbagai lingkungan bawaan. Jika Anda sudah terbiasa dengan Notebook atau VS Code, Anda dapat langsung mulai mengembangkan model. Topik ini menjelaskan cara mengembangkan model di DSW menggunakan tugas pengenalan digit tulisan tangan MNIST.

Catatan

Tugas pengenalan digit tulisan tangan MNIST merupakan salah satu tugas pengantar paling klasik dalam pembelajaran mendalam. Tujuannya adalah membangun model pembelajaran mesin untuk mengenali 10 digit tulisan tangan (0 hingga 9).

image

Prasyarat

Aktifkan PAI dengan Akun Alibaba Cloud Anda dan buat ruang kerja. Masuk ke Konsol PAI, pilih Wilayah di pojok kiri atas, lalu ikuti petunjuk untuk memberikan izin dan mengaktifkan layanan.

Penagihan

Contoh ini membuat instans DSW dan layanan model Elastic Algorithm Service (EAS) menggunakan sumber daya publik dengan metode bayar sesuai penggunaan. Untuk aturan penagihan lengkap, lihat Penagihan DSW dan Penagihan EAS.

Buat instans DSW

  1. Buka halaman DSW.

    1. Masuk ke Konsol PAI.

    2. Di pojok kiri atas halaman, pilih Wilayah yang dituju.

    3. Di panel navigasi kiri, klik Workspaces, lalu klik nama ruang kerja yang ingin Anda gunakan.

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

      image

  2. Pada halaman Configure Instance, konfigurasikan parameter berikut dan gunakan nilai default untuk sisanya.

    • Resource Type: Pilih Public Resources, yaitu opsi bayar sesuai penggunaan.

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

      Jika tipe instans ini habis stoknya, Anda dapat memilih tipe instans GPU-accelerated lainnya.
    • Image config: Pilih Alibaba Cloud Image, lalu cari dan pilih image berikut: modelscope:1.26.0-pytorch2.6.0-gpu-py311-cu124-ubuntu22.04.

      Untuk menghindari masalah lingkungan, gunakan image yang sama seperti yang ditentukan dalam topik ini.
    • Mount storage: Untuk menyimpan file pengembangan model secara persisten, tutorial ini menggunakan Object Storage Service (OSS). Klik OSS, klik ikon image, pilih Bucket, lalu buat direktori seperti pai_test.

      Jika Anda belum mengaktifkan OSS atau tidak memiliki bucket di Wilayah saat ini, ikuti langkah-langkah berikut untuk membuatnya:

      (Opsional) Aktifkan OSS dan buat bucket

      1. Aktifkan layanan OSS.

      2. Masuk ke Konsol OSS, klik Create Bucket, masukkan Bucket Name, pilih Region yang sama dengan workspace PAI Anda, gunakan nilai 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 DSW.

    Jika instans gagal dimulai, lihat Buat instans DSW.

Kembangkan model di DSW

  1. Pada halaman daftar instans, klik Open untuk masuk ke lingkungan pengembangan instans baru. Lalu, pada halaman Launcher, klik Create Notebook.

    image

  2. Topik ini menyediakan kode pelatihan MNIST. Anda dapat mengklik mnist.ipynb untuk mengunduh kode tersebut, lalu klik ikon image di pojok kiri atas antarmuka DSW untuk mengunggah file kode tersebut.

    image

  3. Jalankan kode pelatihan model. Buka file mnist.ipynb, temukan sel yang berisi kode pelatihan, lalu klik tombol image untuk menjalankan kode tersebut. Kode ini secara otomatis mengunduh set data MNIST ke direktori dataSet dan menyimpan checkpoint terbaik setelah pelatihan ke direktori output. Proses pelatihan membutuhkan waktu sekitar 10 menit.

    image

    image

    Akurasi 98% pada set validasi menunjukkan bahwa model berkinerja baik, sehingga Anda dapat melanjutkan.

  4. Lihat kurva loss di TensorBoard untuk memantau progres pelatihan. Jalankan sel berikut dan klik URL TensorBoard http://localhost:6006/.

    image

    Di TensorBoard, Anda dapat melihat kurva train_loss, yang mencerminkan loss pada set pelatihan, dan kurva validation_loss, yang mencerminkan loss pada set validasi.

    image

    Setelah melihat grafik, klik ikon image di sel tersebut untuk menghentikan TensorBoard sebelum menjalankan sel berikutnya.

    (Opsional) Sesuaikan hiperparameter berdasarkan kurva loss untuk meningkatkan kinerja model

    Anda dapat mengevaluasi kinerja pelatihan berdasarkan tren nilai loss:

    • Underfitting: Nilai train_loss dan validation_loss masih menurun saat pelatihan berakhir.

      Anda dapat menambah num_epochs (jumlah epoch pelatihan, yang berkorelasi positif dengan kedalaman pelatihan) atau menaikkan learning_rate sebelum melatih ulang model. Hal ini membantu model lebih cocok dengan data pelatihan.

    • Overfitting: Nilai train_loss terus menurun, tetapi nilai validation_loss mulai meningkat sebelum pelatihan berakhir.

      Anda dapat mengurangi num_epochs atau menurunkan learning_rate sebelum melatih ulang model. Hal ini mencegah model mengalami overtraining.

    • Good fit: Nilai train_loss dan validation_loss stabil sebelum pelatihan berakhir.

      Jika model berada dalam kondisi ini, Anda dapat melanjutkan ke langkah berikutnya.

  5. Panggil model yang telah dilatih untuk menguji kinerjanya. Jalankan sel yang ditunjukkan pada gambar berikut. Ini akan menampilkan 20 gambar uji serta output label aslinya dan prediksi dari model.

    image

    Contoh output:

    image

  6. Salin file model ke Object Storage Service (OSS) untuk penyimpanan persisten. Instans DSW dalam tutorial ini dibuat menggunakan sumber daya publik, dan file-nya disimpan di Cloud Disk sementara. Konten di Cloud Disk akan dihapus jika instans tetap berhenti lebih dari 15 hari. Oleh karena itu, Anda harus menyalin file model ke OSS untuk penyimpanan persisten. Hal ini juga mempermudah penerapan model menggunakan Elastic Algorithm Service (EAS).

    image

    Masuk ke Konsol OSS untuk melihat file yang telah disalin:

    image

Anda telah menyelesaikan pengembangan model. Untuk memanggil model ini dari aplikasi lain di lingkungan produksi, lihat Terapkan model sebagai layanan online menggunakan EAS.

Penting

Instans DSW dalam tutorial ini dibuat menggunakan sumber daya publik dan ditagih berdasarkan metode bayar sesuai penggunaan. Untuk menghindari biaya tambahan, hentikan atau hapus instans jika Anda tidak lagi membutuhkannya.image

Terapkan model dengan EAS

Elastic Algorithm Service (EAS) memungkinkan Anda menerapkan model yang telah dilatih sebagai layanan inferensi online atau aplikasi web AI dengan cepat. EAS mendukung sumber daya heterogen dan mengintegrasikan skalabilitas otomatis, uji stres satu klik, rilis canary, serta pemantauan waktu nyata untuk memastikan stabilitas layanan dalam skenario konkurensi tinggi dengan biaya lebih rendah.

  1. Tutorial ini menyediakan kode API web untuk layanan model dan perintah untuk menyalinnya ke OSS. Anda hanya perlu menjalankan sel berikut.

    image

  2. (Opsional) Di DSW, verifikasi bahwa API web dapat dijalankan. Jalankan sel berikut untuk menginstal paket pihak ketiga yang belum tersedia dan memulai layanan.

    image

    Jalankan kode uji untuk API layanan. Di bagian atas halaman, klik WebIDE. Di panel kiri, klik file kode request_web.py, lalu klik tombol image untuk menjalankan kode dan mengirim permintaan ke API layanan.

    image

    Hasil berikut dikembalikan:

    {"prediction": 7}
    Catatan

    Untuk mengakses layanan web yang berjalan di DSW langsung dari Internet publik, Anda juga harus mengonfigurasi Virtual Private Cloud (VPC), Gateway NAT, dan Elastic IP Address (EIP) untuk instans DSW. Untuk informasi selengkapnya, lihat Akses layanan di instans melalui internet.

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

    image

    Konfigurasikan parameter utama berikut dan gunakan pengaturan default untuk sisanya:

    • Deployment Method: Image-based Deployment

    • Image Configuration: Pilih Image Address, lalu salin dan tempel alamat image yang digunakan untuk instans DSW.

      Anda telah memverifikasi di DSW bahwa lingkungan image ini dapat menjalankan kode layanan model dalam topik ini. Oleh karena itu, kami menyarankan Anda menggunakan image yang sama untuk penerapan guna menghindari masalah waktu proses yang tidak diketahui.

      image

    • Mount storage: File model dan kode API layanan telah disalin ke OSS. Oleh karena itu, klik OSS dan pilih path OSS yang sesuai.

      image

    • Command to Run: Perintah run sama dengan perintah startup layanan di DSW. Namun, karena web.py kini dipasang di /mnt/data/, Anda perlu menyesuaikan path web.py. Perintah run akhirnya adalah python /mnt/data/web.py.

    • Port Number: Atur port yang digunakan di web.py menjadi 9000.

    • Third-party Library Settings: Pengujian di DSW menunjukkan bahwa image yang dipilih tidak memiliki library bottle. Oleh karena itu, Anda perlu menambahkan library ini dalam konfigurasi library pihak ketiga.

      image

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

    • Configure a system disk: Atur ukuran menjadi 20 GB.

      Diperlukan sistem disk yang lebih besar untuk mencegah kegagalan startup akibat ukuran image yang besar.

    Klik Deploy untuk membuat layanan. Proses pembuatan membutuhkan waktu sekitar 5 menit. Ketika status berubah menjadi Running, penerapan berhasil.

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

    image

  5. Panggil layanan. Jalankan kode permintaan layanan berikut. Ganti placeholder Internet Endpoint dan Token dalam kode dengan nilai dari langkah sebelumnya.

    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 9
    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 dan mendapatkan data biner.
    img_response = requests.get(image_url, timeout=10)
    # Secara otomatis memeriksa apakah permintaan berhasil berdasarkan kode status.
    img_response.raise_for_status()
    img_bytes = img_response.content
    
    # Informasi header. Ganti <your_token> dengan token aktual Anda.
    # Di lingkungan produksi, kami menyarankan agar Anda mengatur token sebagai variabel lingkungan untuk mencegah kebocoran informasi sensitif.
    # Untuk informasi lebih lanjut tentang cara mengonfigurasi variabel lingkungan, lihat https://www.alibabacloud.com/help/en/sdk/developer-reference/configure-the-alibaba-cloud-accesskey-environment-variable-on-linux-macos-and-windows-systems.
    headers = {"Authorization": "<your_token>"}
    # Kirim data biner sebagai isi permintaan POST ke layanan model.
    resp = requests.post('<your_public_endpoint>/predict_image', data=img_bytes, headers=headers)
    print(resp.json())

    Hasil berikut dikembalikan:

    {"prediction": 7}
Penting

Layanan EAS dalam tutorial ini dibuat menggunakan sumber daya publik dan ditagih berdasarkan metode bayar sesuai penggunaan. Untuk menghindari biaya tambahan, hentikan atau hapus layanan jika Anda tidak lagi membutuhkannya.

image

Dokumen terkait