Jika bisnis Anda melibatkan pembelajaran metrik, Anda dapat menggunakan komponen pembelajaran metrik gambar (mentah) dari Platform for AI (PAI) untuk membangun model pembelajaran metrik guna inferensi. Topik ini menjelaskan cara mengonfigurasi komponen tersebut dan memberikan contoh penggunaannya.
Prasyarat
OSS telah diaktifkan, dan Machine Learning Studio diberi otorisasi untuk mengakses OSS. Untuk informasi lebih lanjut, lihat Aktifkan OSS dan Berikan izin yang diperlukan untuk menggunakan Machine Learning Designer.
Batasan
Komponen pembelajaran metrik gambar (mentah) hanya dapat digunakan dengan sumber daya komputasi Deep Learning Containers (DLC).
Ikhtisar
Komponen pembelajaran metrik gambar (mentah) menyediakan berbagai model arus utama seperti ResNet50, ResNet18, ResNet34, ResNet101, swint_tiny, swint_small, swint_base, vit_tiny, vit_small, vit_base, xcit_tiny, xcit_small, dan xcit_base.
Konfigurasikan komponen di konsol PAI
Port Input
Port input (dari kiri ke kanan)
Tipe data
Komponen hulu yang direkomendasikan
Diperlukan
jalur anotasi data untuk pelatihan
OSS
Tidak
jalur anotasi data untuk evaluasi
OSS
Tidak
Parameter Komponen
Tab
Parameter
Diperlukan
Deskripsi
Nilai default
Fields Setting
model type
Ya
Tipe model yang digunakan untuk pelatihan. Nilai valid:
DataParallelMetricLearning
ModelParallelMetricLearning
DataParallelMetricLearning
oss dir to save model
Ya
Direktori Object Storage Service (OSS) tempat model pelatihan disimpan. Contoh:
oss://examplebucket/yun****/designer_test.Tidak ada
oss annotation path for training data
Tidak
Jika Anda tidak menentukan data pelatihan berlabel menggunakan port input, Anda harus mengonfigurasi parameter ini.
CatatanJika Anda menggunakan port input dan parameter ini untuk menentukan data pelatihan berlabel, nilai yang ditentukan oleh port input akan diutamakan.
Jalur OSS tempat data pelatihan berlabel disimpan. Contoh:
oss://examplebucket/yun****/data/imagenet/meta/train_labeled.txt.Setiap rekaman data dalam file train_labeled.txt disimpan dalam format
jalur absolut/nama gambar.jpg label_id.Pentingjalur penyimpanan gambar dan label_id dipisahkan oleh spasi.
Tidak ada
oss annotation path for evaluation data
Tidak
Jika Anda tidak menggunakan jalur anotasi data evaluasi port input untuk menentukan data evaluasi berlabel, Anda harus mengonfigurasi parameter ini.
CatatanJika Anda menggunakan port input dan parameter ini untuk menentukan data evaluasi berlabel, nilai yang ditentukan oleh port input akan diutamakan.
Jalur OSS tempat data evaluasi berlabel disimpan. Contoh:
oss://examplebucket/yun****/data/imagenet/meta/val_labeled.txt.Setiap rekaman data dalam file val_labeled.txt disimpan dalam format
jalur absolut/nama gambar.jpg label_id.Pentingjalur penyimpanan gambar dan label_id dipisahkan oleh spasi.
Tidak ada
class list file
Tidak
Anda dapat menentukan nama kelas atau mengatur parameter ini ke jalur OSS tempat file TXT yang berisi nama kelas berada.
Tidak ada
Data Source Type
Ya
Tipe data input. Nilai valid: ClsSourceImageList dan ClsSourceItag.
ClsSourceImageList
oss path for pretrained model
Tidak
Jalur OSS model pre-trained Anda. Jika Anda memiliki model pre-trained, atur parameter ini ke jalur OSS model pre-trained Anda. Jika Anda tidak mengonfigurasi parameter ini, model pre-trained default yang disediakan oleh PAI akan digunakan.
Tidak ada
Parameters Setting
backbone
Ya
Model backbone yang ingin Anda gunakan. Nilai valid:
resnet_50
resnet_18
resnet_34
resnet_101
swin_transformer_tiny
swin_transformer_small
swin_transformer_base
resnet50
image size after resizing
Ya
Ukuran gambar yang diubah ukuran. Satuan: piksel.
224
backbone output channels
Ya
Dimensi fitur yang diekspor oleh model arus utama. Nilainya harus berupa bilangan bulat.
2048
backbone output channels
Ya
Dimensi fitur yang diekspor oleh neck. Nilainya harus berupa bilangan bulat.
1536
training data classification label range
Ya
Jumlah dimensi dalam data keluaran.
Tidak ada
metric loss
Ya
Fungsi loss mengevaluasi tingkat ketidaksesuaian antara nilai yang diprediksi oleh model pelatihan dan nilai aktual. Nilai valid:
AMSoftmax recommend margin 0.4 scale 30
ArcFaceLoss recommend margin 28.6 scale 64
CosFaceLoss recommend margin 0.35 scale 64
LargeMarginSoftmaxLoss recommend margin 4 scale 1
SphereFaceLoss recommend margin 4 scale 1
ModelParallel AMSoftmax
ModelParallel Softmax
AMSoftmax rekomendasi margin 0.4 skala 30
metric learning loss scale parameter
Ya
Skala yang ingin Anda gunakan untuk fungsi loss. Konfigurasikan parameter ini berdasarkan fungsi loss yang Anda pilih.
30
metric learning loss margin parameter
Ya
Margin yang ingin Anda gunakan untuk fungsi loss. Konfigurasikan parameter ini berdasarkan fungsi loss yang Anda pilih.
0.4
metric learning loss weight in all losses
Tidak
Bobot yang ingin Anda gunakan untuk fungsi loss, yang menunjukkan rasio optimasi pembelajaran metrik dan model klasifikasi.
1.0
optimizer
Ya
Metode optimasi untuk pelatihan model. Nilai valid:
SGD
AdamW
SGD
initial learning rate
Ya
Tingkat pembelajaran awal. Nilainya adalah bilangan desimal.
0.03
batch size
Ya
Ukuran batch pelatihan, yang menunjukkan jumlah sampel data yang digunakan untuk pelatihan model dalam setiap iterasi.
Tidak ada
total train epochs
Ya
Jumlah total epoch. Epoch berakhir ketika satu putaran pelatihan selesai pada semua sampel data. Jumlah total epoch menunjukkan jumlah total putaran pelatihan yang dilakukan pada sampel data.
200
save checkpoint epoch
Tidak
Frekuensi penyimpanan checkpoint. Nilai 1 menunjukkan bahwa checkpoint disimpan setiap kali epoch berakhir.
10
Execution Tuning
io thread num for training.
Tidak
Jumlah thread yang digunakan untuk membaca data pelatihan.
4
use fp 16
Tidak
Menentukan apakah akan mengaktifkan FP16 untuk mengurangi penggunaan memori selama pelatihan model.
Tidak ada
single worker or distributed on MaxCompute or DLC
Ya
Mesin komputasi yang digunakan untuk menjalankan komponen. Anda dapat memilih mesin komputasi berdasarkan kebutuhan bisnis Anda. Nilai valid:
single_on_dlc
distribute_on_dlc
single_on_dlc
number of worker
Tidak
Jika Anda memilih distribute_on_dlc untuk parameter pekerja tunggal atau terdistribusi pada MaxCompute atau DLC, Anda harus mengatur parameter ini.
Jumlah pekerja konkuren yang digunakan dalam komputasi.
1
gpu machine type
Ya
Spesifikasi GPU yang ingin Anda gunakan.
8vCPU+60GB Mem+1xp100-ecs.gn5-c8g1.2xlarge
Contoh
Gambar berikut menunjukkan pipeline sampel yang menggunakan komponen pembelajaran metrik gambar (mentah).
Dalam contoh ini, konfigurasikan komponen dalam gambar di atas dengan langkah-langkah berikut:
Siapkan data. Labeli gambar menggunakan iTAG yang disediakan oleh PAI. Untuk informasi lebih lanjut, lihat iTAG.
Gunakan komponen Read File Data-4 dan Read File Data-5 untuk membaca data pelatihan berlabel dan data evaluasi berlabel. Untuk membaca data, atur parameter OSS Data Path dari setiap komponen ke jalur OSS tempat data yang ingin Anda ambil disimpan.
Tarik garis dari dua komponen sebelumnya ke komponen image metric learning (raw) dan konfigurasikan parameter untuk komponen image metric learning (raw). Untuk informasi lebih lanjut, lihat bagian "Konfigurasikan Komponen di Konsol PAI" dari topik ini.