全部产品
Search
文档中心

Platform For AI:Praktik terbaik untuk menjalankan pelatihan DLC MNIST

更新时间:Jul 02, 2025

Dokumen ini menjelaskan cara mengirim eksperimen AutoML pada sumber daya komputasi Deep Learning Containers (DLC) untuk melakukan penyetelan hiperparameter. Solusi ini menggunakan framework PyTorch dan secara otomatis mengunduh serta memuat dataset MNIST berupa digit tulisan tangan melalui modul torchvision.datasets.MNIST. Dataset tersebut digunakan untuk melatih model guna mendapatkan kombinasi hiperparameter optimal. Anda dapat memilih mode pelatihan mandiri, terdistribusi, atau parameter bersarang sesuai kebutuhan.

Prasyarat

Langkah 1: Buat dataset

  1. Unggah file skrip mnist.py ke Bucket OSS yang telah dibuat. Untuk informasi lebih lanjut, lihat Mulai Menggunakan Konsol OSS.

  2. Buat dataset OSS untuk menyimpan file data yang dihasilkan selama eksperimen penyetelan hiperparameter. Untuk informasi lebih lanjut, lihat bagian "Buat Dataset Berdasarkan Data yang Disimpan dalam Layanan Penyimpanan Alibaba Cloud" di Buat dan Kelola Dataset.

    Konfigurasikan parameter kunci berikut sesuai kebutuhan, dan biarkan nilai default untuk parameter lainnya:

    • Name: Masukkan nama dataset.

    • Select data store: Pilih jalur OSS tempat file skrip disimpan.

    • Property: Pilih folder.

Langkah 2: Buat eksperimen

Buka halaman Create Experiment, lalu konfigurasikan parameter utama berikut. Untuk detail tentang pengaturan parameter tambahan, lihat Buat Eksperimen. Setelah selesai mengonfigurasi, klik Submit.

  1. Konfigurasikan parameter di bagian Konfigurasi Eksekusi.

    Solusi ini mendukung mode pelatihan mandiri, terdistribusi, dan parameter bersarang. Pilih salah satu mode untuk melatih model.

    Pengaturan parameter yang digunakan untuk mode pelatihan mandiriimage

    Parameter

    Deskripsi

    Job Type

    Pilih DLC.

    Resource Group

    Pilih Public Resource Group.

    Framework

    Pilih PyTorch.

    Datasets

    Pilih dataset yang Anda buat di Langkah 2.

    Node Image

    Pilih PAI Image. Lalu, pilih pytorch-training:1.12PAI-gpu-py38-cu113-ubuntu20.04 dari daftar drop-down.

    Instance Type

    Pilih CPU. Lalu, pilih 16vCPU+64GB Mem ecs.g6.4xlarge dari daftar drop-down.

    Nodes

    Atur parameter ini menjadi 1.

    Node Startup Command

    Masukkan python3 /mnt/data/mnist.py --save_model=/mnt/data/examples/search/model/model_${exp_id}_${trial_id} --batch_size=${batch_size} --lr=${lr}.

    Hyperparameter

    • batch_size

      • Constraint Type: Pilih choice.

      • Search Space: Klik image.png untuk menambahkan tiga nilai enumerasi: 16, 32, dan 64.

    • lr

      • Constraint Type: Pilih choice.

      • Search Space: Klik image.png untuk menambahkan tiga nilai enumerasi: 0.0001, 0.001, dan 0.01.

    Eksperimen dapat menghasilkan sembilan kombinasi hiperparameter berdasarkan konfigurasi sebelumnya dan membuat percobaan untuk setiap kombinasi hiperparameter. Di setiap percobaan, kombinasi hiperparameter digunakan untuk menjalankan skrip.

    Pengaturan parameter yang digunakan untuk mode pelatihan terdistribusiimage

    Parameter

    Deskripsi

    Job Type

    Pilih DLC.

    Resource Group

    Pilih Public Resource Group.

    Framework

    Pilih PyTorch.

    Datasets

    Pilih dataset yang Anda buat di Langkah 2.

    Node Image

    Pilih PAI Image. Lalu, pilih pytorch-training:1.12PAI-gpu-py38-cu113-ubuntu20.04 dari daftar drop-down.

    Instance Type

    Pilih CPU. Lalu, pilih 16vCPU+64GB Mem ecs.g6.4xlarge dari daftar drop-down.

    Nodes

    Atur parameter ini menjadi 3.

    Node Startup Command

    Masukkan python -m torch.distributed.launch --master_addr=$MASTER_ADDR --master_port=$MASTER_PORT --nproc_per_node=1 --nnodes=$WORLD_SIZE --node_rank=$RANK /mnt/data/mnist.py --data_dir=/mnt/data/examples/search/data --save_model=/mnt/data/examples/search/pai/model/model_${exp_id}_${trial_id} --batch_size=${batch_size} --lr=${lr}.

    Hyperparameter

    • batch_size

      • Tipe Batasan: Pilih choice.

      • Ruang Pencarian: Klik image.png untuk menambahkan tiga nilai enumerasi: 16, 32, dan 64.

    • lr

      • Tipe Batasan: Pilih choice.

      • Ruang Pencarian: Klik image.png untuk menambahkan tiga nilai enumerasi: 0.0001, 0.001, dan 0.01.

    Eksperimen dapat menghasilkan sembilan kombinasi hiperparameter berdasarkan konfigurasi sebelumnya dan membuat percobaan untuk setiap kombinasi hiperparameter. Di setiap percobaan, kombinasi hiperparameter digunakan untuk menjalankan skrip.

    Pengaturan parameter yang digunakan untuk mode pelatihan parameter bersarangimage

    Parameter

    Deskripsi

    Job Type

    Pilih DLC.

    Resource Group

    Pilih Public Resource Group.

    Framework

    Pilih PyTorch.

    Datasets

    Pilih dataset yang Anda buat di Langkah 2.

    Node Image

    Pilih PAI Image. Lalu, pilih pytorch-training:1.12PAI-gpu-py38-cu113-ubuntu20.04 dari daftar drop-down.

    Instance Type

    Pilih CPU. Lalu, pilih 16vCPU+64GB Mem ecs.g6.4xlarge dari daftar drop-down.

    Nodes

    Atur parameter ini menjadi 1.

    Node Startup Command

    Masukkan python3 /mnt/data/mnist.py --save_model=/mnt/data/examples/search/pai/model/model_${exp_id}_${trial_id} --batch_size=${nested_params}.{batch_size} --lr=${nested_params}.{lr} --gamma=${gamma}.

    Hyperparameter

    • nested_params

      • Tipe Batasan: Pilih choice.

      • Ruang Pencarian: Klik image.png untuk menambahkan dua nilai enumerasi: {"_name":"large","{lr}":{"_type":"choice","_value":[0.02,0.2]},"{batch_size}":{"_type":"choice","_value":[256,128]}} dan {"_name":"small","{lr}":{"_type":"choice","_value":[0.01,0.1]},"{batch_size}":{"_type":"choice","_value":[64,32]}}.

    • gamma

      • Tipe Batasan: Pilih choice.

      • Ruang Pencarian: Klik image.png untuk menambahkan tiga nilai enumerasi: 0.8, 0.7, dan 0.9.

    Eksperimen dapat menghasilkan sembilan kombinasi hiperparameter berdasarkan konfigurasi sebelumnya dan membuat percobaan untuk setiap kombinasi hiperparameter. Di setiap percobaan, kombinasi hiperparameter digunakan untuk menjalankan skrip.

  2. Konfigurasikan parameter di bagian Konfigurasi Percobaan.

    Parameter

    Deskripsi

    Metric Optimization

    Metric Type

    Pilih stdout. Pengaturan ini menunjukkan bahwa nilai metrik akhir diekstraksi dari stdout selama proses berjalan.

    Method

    Pilih best.

    Metric Weight

    Gunakan pengaturan berikut:

    • key: validation: accuracy=([0-9\\.]+)

    • Value: 1

    Metric Source

    Konfigurasikan cmd1 sebagai kata kunci perintah.

    Optimization

    Pilih Maximize.

    Model Storage Path

    Masukkan jalur OSS tempat model disimpan. Dalam contoh ini, jalurnya adalah oss://examplebucket/examples/model/model_${exp_id}_${trial_id}.

  3. Konfigurasikan parameter di bagian Konfigurasi Pencarian.

    Parameter

    Deskripsi

    Search Algorithm

    Pilih TPE. Untuk informasi lebih lanjut tentang algoritma pencarian, lihat bagian "Algoritma pencarian yang didukung" di Batasan dan catatan penggunaan AutoML.

    Maximum Trials

    Atur parameter ini menjadi 3. Nilai ini menunjukkan bahwa hingga tiga percobaan dapat berjalan dalam eksperimen.

    Maximum Concurrent Trials

    Atur parameter ini menjadi 2. Nilai ini menunjukkan bahwa hingga dua percobaan dapat berjalan secara paralel dalam eksperimen.

    Enable EarlyStop

    Menentukan apakah akan mengaktifkan fitur penghentian dini. Fitur ini memungkinkan sistem untuk menghentikan proses evaluasi suatu percobaan lebih awal jika kombinasi hiperparameter terkait jelas kurang performa.

    Start step

    Atur parameter ini menjadi 5. Nilai ini menunjukkan bahwa sistem dapat memutuskan apakah akan menghentikan percobaan lebih awal setelah lima evaluasi pada percobaan selesai.

Langkah 3: Lihat detail eksperimen dan hasil eksekusi

  1. Pada daftar eksperimen, klik nama eksperimen yang diinginkan untuk membuka halaman Experiment Details.

    Di halaman Detail Eksperimen, Anda dapat melihat kemajuan eksekusi dan statistik status percobaan. Eksperimen secara otomatis membuat tiga percobaan berdasarkan pengaturan parameter Algoritma Pencarian dan Maksimum Percobaan.

  2. Klik tab Percobaan untuk melihat semua percobaan yang dihasilkan oleh eksperimen, termasuk status eksekusi, nilai metrik akhir, dan kombinasi hiperparameter dari setiap percobaan.

    Dalam contoh ini, Optimisasi disetel ke Maksimalkan. Pada gambar di atas, kombinasi hiperparameter (batch_size: 16 dan lr: 0.01) yang sesuai dengan nilai metrik akhir 96.52 adalah kombinasi hiperparameter optimal.

Referensi