AutoML adalah layanan pembelajaran mesin tingkat lanjut dari PAI yang mengintegrasikan berbagai algoritma dan sumber daya komputasi terdistribusi. Anda dapat membuat eksperimen untuk menyetel hiperparameter model tanpa menulis kode, sehingga meningkatkan efisiensi dan performa pembelajaran mesin. Topik ini menjelaskan cara membuat eksperimen.
Informasi latar belakang
Cara kerja AutoML:
Suatu eksperimen secara otomatis menghasilkan kombinasi hiperparameter berdasarkan konfigurasi algoritma. Untuk setiap kombinasi tersebut, eksperimen membuat satu Trial. Setiap Trial dapat berkorespondensi dengan satu pekerjaan Deep Learning Containers (DLC) atau satu atau beberapa pekerjaan MaxCompute, tergantung pada konfigurasi eksekusi. Pekerjaan yang dikonfigurasi kemudian menjalankan Trial tersebut. Eksperimen menjadwalkan beberapa Trial dan membandingkan hasilnya untuk menemukan kombinasi hiperparameter terbaik. Untuk informasi selengkapnya, lihat Cara kerja AutoML.
Prasyarat
Sebelum menggunakan AutoML untuk pertama kalinya, Anda harus memberikan izin yang diperlukan untuk AutoML.
Anda telah membuat ruang kerja.
Jika Anda membuat pekerjaan DLC, selesaikan persiapan berikut:
Jika Anda membuat pekerjaan MaxCompute, Anda harus menyiapkan sumber daya MaxCompute dan mengaitkannya dengan ruang kerja Anda.
Prosedur
Buka halaman AutoML.
-
Login ke Konsol PAI.
-
Di panel navigasi sebelah kiri, klik Workspaces. Di halaman Workspaces, klik nama ruang kerja yang ingin Anda kelola.
-
Di panel navigasi sebelah kiri, pilih .
-
Di halaman Experiments, klik New.
Di halaman New Experiment, konfigurasikan parameter berikut.
Basic Information
Parameter
Description
Name
Masukkan nama eksperimen sesuai petunjuk.
Description
Masukkan deskripsi singkat eksperimen untuk membedakannya dari eksperimen lain.
Visibility
Visibilitas eksperimen. Nilai yang didukung sebagai berikut:
Only to Me: Eksperimen hanya terlihat oleh Anda dan administrator di ruang kerja.
Visible to the Current Workspace: Eksperimen terlihat oleh semua orang di ruang kerja.
Execution Configuration
Task type menentukan lingkungan eksekusi untuk suatu Trial. Lingkungan yang didukung adalah DLC dan MaxCompute.
DLC: Pilih opsi ini untuk menjalankan pekerjaan DLC guna penyetelan hiperparameter. Untuk informasi selengkapnya tentang pekerjaan DLC, lihat Buat tugas pelatihan.
MaxCompute: Pilih opsi ini untuk menjalankan perintah SQL atau perintah PAI untuk komponen Designer pada sumber daya komputasi MaxCompute guna penyetelan hiperparameter. Untuk informasi selengkapnya tentang komponen Designer dan perintah PAI yang didukung oleh setiap komponen, lihat Ikhtisar komponen Designer.
DLC
Jika Anda memilih DLC sebagai tipe tugas, konfigurasikan parameter seperti dijelaskan dalam tabel berikut:
Parameter
Description
Resource Group
Pilih kelompok sumber daya publik atau kelompok sumber daya khusus yang telah dibeli. Untuk informasi tentang cara menyiapkan kelompok sumber daya, lihat Buat kelompok sumber daya dan beli sumber daya komputasi umum dan Buat kuota sumber daya.
Framework
Tipe framework berikut didukung:
TensorFlow
PyTorch
Datasets
Pilih dataset yang telah disiapkan.
Code
Tentukan lokasi penyimpanan file kode pekerjaan (informasi repositori kode). Pilih konfigurasi kode yang telah disiapkan.
CatatanKarena DLC mengunduh kode ke path kerja tertentu, Anda harus memiliki izin akses ke repositori kode tersebut.
Node Image
Image untuk node pekerja. Anda dapat memilih salah satu tipe image berikut:
Alibaba Cloud Image: PAI menyediakan berbagai image resmi yang mendukung berbagai tipe sumber daya, versi Python, serta framework pembelajaran mendalam TensorFlow dan PyTorch. Untuk daftar image, lihat (Opsional) Siapkan image.
Custom Image: Pilih custom image yang telah Anda tambahkan ke PAI. Sebelum memilih opsi ini, Anda harus menambahkan custom image ke PAI.
Image Address: Tentukan URL custom image, community image, atau image platform PAI. URL Docker Registry Image harus dapat diakses melalui jaringan publik.
Instace Type
Pilih tipe instans yang diperlukan untuk menjalankan pekerjaan. Tipe instans yang berbeda memiliki harga berbeda. Untuk informasi selengkapnya tentang penagihan, lihat Penagihan Deep Learning Containers (DLC).
Nodes
Jumlah node komputasi yang digunakan dalam pekerjaan DLC.
PentingJika Anda mengonfigurasi beberapa node, setiap node ditagih secara terpisah. Mereka tidak berbagi tipe instans yang sama. Oleh karena itu, saat memilih node, Anda harus memahami biaya setiap node dan menyeimbangkan antara biaya dan performa.
vCPUs
Saat Anda memilih kelompok sumber daya khusus yang telah dibeli untuk Resource Group, Anda dapat mengonfigurasi parameter ini berdasarkan spesifikasinya.
Memory (GiB)
Shared Memory (GiB)
GPUs
Advanced Settings
Gunakan konfigurasi lanjutan untuk meningkatkan fleksibilitas pelatihan atau memenuhi kebutuhan skenario pelatihan tertentu. Jika Anda memilih PyTorch sebagai framework, Anda dapat mengonfigurasi parameter lanjutan.
Startup Command
Perintah mulai untuk setiap node. Anda harus mengonfigurasi variabel hiperparameter dalam perintah tersebut, seperti
${custom_hyperparameter_variable}. Contohnya:python /mnt/data/examples/search/dlc_mnist/mnist.py --data_dir=/mnt/data/examples/search/data --save_model=/mnt/data/exmaples/search/model/model_${exp_id}_${trial_id} --batch_size=${batch_size} --lr=${lr} --metric_filepath=/mnt/data/examples/search/metric/metric_${exp_id}_${trial_id}Dalam contoh ini,
${batch_size}dan${lr}adalah variabel hiperparameter yang telah didefinisikan.Hyperparameters
Daftar hiperparameter dimuat secara otomatis berdasarkan variabel hiperparameter yang dikonfigurasi dalam perintah mulai. Untuk setiap hiperparameter, konfigurasikan tipe kendala dan ruang pencarian:
Tipe kendala: Kondisi yang ditambahkan pada hiperparameter. Anda dapat mengarahkan kursor ke ikon
di samping tipe kendala untuk melihat tipe yang didukung beserta deskripsinya.Ruang pencarian: Rentang nilai untuk hiperparameter. Metode konfigurasi ruang pencarian bervariasi tergantung pada tipe kendala. Klik ikon
dan tambahkan nilai sesuai petunjuk.
MaxCompute
Jika Anda mengatur Task type ke MaxCompute, konfigurasikan parameter seperti dijelaskan dalam tabel berikut:
Parameter
Description
Command
Konfigurasikan perintah SQL atau perintah PAI untuk menjalankan komponen Designer. Anda harus mengonfigurasi variabel hiperparameter dalam perintah tersebut, seperti
${custom_hyperparameter_variable}. Contohnya:pai -name kmeans -project algo_public -DinputTableName=pai_kmeans_test_input -DselectedColNames=f0,f1 -DappendColNames=f0,f1 -DcenterCount=${centerCount} -Dloop=10 -Daccuracy=0.01 -DdistanceType=${distanceType} -DinitCenterMethod=random -Dseed=1 -DmodelName=pai_kmeans_test_output_model_${exp_id}_${trial_id} -DidxTableName=pai_kmeans_test_output_idx_${exp_id}_${trial_id} -DclusterCountTableName=pai_kmeans_test_output_couter_${exp_id}_${trial_id} -DcenterTableName=pai_kmeans_test_output_center_${exp_id}_${trial_id};Dalam contoh ini,
${centerCount}dan${distanceType}adalah variabel hiperparameter yang telah didefinisikan.Untuk contoh konfigurasi lainnya, lihat Lampiran: Referensi.
Hyperparameters
Daftar hiperparameter dimuat secara otomatis berdasarkan variabel hiperparameter yang dikonfigurasi dalam perintah. Untuk setiap hiperparameter, konfigurasikan tipe kendala dan ruang pencarian:
Tipe kendala: Kondisi yang ditambahkan pada hiperparameter. Anda dapat mengarahkan kursor ke ikon
di samping tipe kendala untuk melihat tipe yang didukung beserta deskripsinya.Ruang pencarian: Rentang nilai untuk hiperparameter. Metode konfigurasi ruang pencarian bervariasi tergantung pada tipe kendala. Klik ikon
dan tambahkan nilai sesuai petunjuk.
Trial Configuration
Konfigurasikan parameter berikut untuk menjalankan pekerjaan dengan kombinasi hiperparameter tertentu:
Parameter
Description
Metric Type
Tipe metrik yang digunakan untuk mengevaluasi Trial. Nilai yang valid:
summary: Metrik akhir diambil dari file ringkasan TensorFlow di OSS.
table: Metrik akhir diambil dari tabel MaxCompute.
stdout: Metrik akhir diambil dari stdout selama waktu proses.
json: Metrik akhir disimpan sebagai file JSON di OSS.
Calculation Method
Selama pekerjaan berjalan, beberapa metrik antara dihasilkan secara berurutan. Diperlukan metode perhitungan untuk menentukan metrik akhir. Nilai yang valid:
final: Menggunakan metrik terakhir sebagai metrik akhir untuk seluruh Trial.
best: Menggunakan metrik terbaik yang diperoleh selama pekerjaan berjalan sebagai metrik akhir untuk seluruh Trial.
avg: Menggunakan rata-rata semua metrik antara yang diperoleh selama pekerjaan berjalan sebagai metrik akhir untuk Trial.
Metric Weight
Untuk mempertimbangkan beberapa metrik sekaligus, konfigurasikan nama metrik dan bobot yang sesuai. Sistem menggunakan jumlah tertimbang sebagai metrik evaluasi akhir untuk perbandingan.
key: Nama metrik. Ekspresi reguler didukung.
value: Bobot yang sesuai.
CatatanBobot dapat bernilai negatif. Jumlah bobot tidak harus 1 dan dapat dikustomisasi.
Metric Source
Sumber metrik:
Jika Anda mengatur Metric Type ke summary atau json, Anda harus mengonfigurasi path file. Contohnya,
oss://examplebucket/examples/search/pai/model/model_${exp_id}_${trial_id}.Jika Anda mengatur Metric Type ke table, Anda harus mengonfigurasi pernyataan SQL yang dapat mengambil hasil spesifik. Contohnya,
select GET_JSON_OBJECT(summary, '$.calinhara') as vrc from pai_ft_cluster_evaluation_out_${exp_id}_${trial_id}.Jika Anda mengatur Metric Type ke stdout, Anda harus mengonfigurasi kata kunci perintah. Hanya
cmdxataucmdx;xxx,such as cmd1;workeryang didukung.
Optimization Direction
Arah optimasi untuk mengevaluasi hasil Trial. Nilai yang valid:
The bigger the better
Minimize
Model Storage Path
Path tempat model disimpan. Path harus mencakup
${exp_id}_${trial_id}untuk membedakan model yang dihasilkan dengan kombinasi hiperparameter berbeda. Contohnya,oss://examplebucket/examples/search/pai/model/model_${exp_id}_${trial_id}.Search Configuration
Parameter
Description
Search Algorithm
Algoritma pembelajaran mesin otomatis yang menemukan kombinasi hiperparameter yang lebih baik untuk Trial berikutnya. Algoritma ini melakukan pencarian berdasarkan ruang pencarian hiperparameter serta hasil dan metrik performa dari Trial sebelumnya. Tipe algoritma berikut didukung:
TPE
Random
GridSearch
Evolution
GP
PBT
Untuk informasi selengkapnya tentang algoritma tersebut, lihat Algoritma pencarian yang didukung.
Maximum Number of Searches
Jumlah maksimum Trial yang dapat dijalankan oleh eksperimen.
Maximum Concurrency
Jumlah maksimum Trial yang dapat dijalankan secara paralel oleh eksperimen.
Klik Submit.
Anda dapat melihat eksperimen yang telah dibuat di daftar eksperimen.
Langkah selanjutnya
Anda dapat melihat detail eksperimen kapan saja untuk memeriksa progres eksperimen. Anda dapat melihat hasil eksekusi setiap Trial untuk menemukan kombinasi hiperparameter optimal.
Anda dapat mengelola eksperimen.
Lampiran: Referensi
Bagian berikut menyediakan contoh konfigurasi untuk penyetelan hiperparameter pekerjaan MaxCompute:
Komponen Designer yang digunakan: Pengelompokan K-means dan evaluasi model pengelompokan.
Perintah dikonfigurasi sebagai berikut. `cmd1` dan `cmd2` berkorespondensi dengan perintah untuk kedua komponen dan harus dijalankan secara berurutan. Untuk informasi selengkapnya tentang prosedur, lihat Praktik terbaik pengelompokan K-means MaxCompute.
cmd1
pai -name kmeans -project algo_public -DinputTableName=pai_kmeans_test_input -DselectedColNames=f0,f1 -DappendColNames=f0,f1 -DcenterCount=${centerCount} -Dloop=10 -Daccuracy=0.01 -DdistanceType=${distanceType} -DinitCenterMethod=random -Dseed=1 -DmodelName=pai_kmeans_test_output_model_${exp_id}_${trial_id} -DidxTableName=pai_kmeans_test_output_idx_${exp_id}_${trial_id} -DclusterCountTableName=pai_kmeans_test_output_couter_${exp_id}_${trial_id} -DcenterTableName=pai_kmeans_test_output_center_${exp_id}_${trial_id};cmd2
PAI -name cluster_evaluation -project algo_public -DinputTableName=pai_cluster_evaluation_test_input -DselectedColNames=f0,f1 -DmodelName=pai_kmeans_test_output_model_${exp_id}_${trial_id} -DoutputTableName=pai_ft_cluster_evaluation_out_${exp_id}_${trial_id};