Komponen deteksi pose melatih model estimasi pose top-down menggunakan jaringan tulang punggung HRNet atau Lite-HRNet. Gunakan komponen ini dalam pipeline Machine Learning Designer untuk mendeteksi keypoint tubuh manusia dari gambar.
Prasyarat
Sebelum memulai, pastikan Anda telah memiliki:
Bucket Object Storage Service (OSS) yang diaktifkan
Otorisasi Machine Learning Studio untuk mengakses OSS — lihat Activate OSS dan Grant the permissions that are required to use Machine Learning Designer
Batasan
Komponen ini hanya tersedia di Machine Learning Designer pada Machine Learning Platform for AI (PAI).
Komponen ini memerlukan sumber daya komputasi Deep Learning Containers (DLC).
Hanya tipe algoritma TopDown yang didukung. TopDown pertama-tama mendeteksi orang menggunakan detektor objek, lalu memperkirakan keypoint untuk setiap orang yang terdeteksi. Pendekatan ini lebih akurat tetapi semakin lambat seiring bertambahnya jumlah orang dalam gambar—paling cocok untuk adegan dengan jumlah orang yang kecil dan tetap. Karena deteksi tubuh manusia harus dilakukan sebelum deteksi pose, hubungkan komponen object detection di hulu atau konfigurasikan path model deteksi secara manual di komponen image prediction.
Cara kerja
Temukan komponen ini di pustaka komponen di bawah Video Algorithm > Offline Training.
Komponen ini menerima data pelatihan, file anotasi, data evaluasi, dan file info dataset melalui lima port input. Komponen ini melatih model pose top-down dan menghasilkan model yang telah dilatih ke direktori OSS, yang kemudian digunakan oleh komponen image prediction di hilir untuk inferensi offline.
Konfigurasi komponen
Port input
Hubungkan komponen Read File Data ke setiap port. Semua port bersifat opsional—jika Anda tidak menghubungkan suatu port, atur parameter path OSS yang sesuai sebagai gantinya.
| Port (kiri ke kanan) | Tipe data | Wajib |
|---|---|---|
| data untuk pelatihan | OSS | Tidak |
| path anotasi data untuk pelatihan | OSS | Tidak |
| data untuk evaluasi | OSS | Tidak |
| path anotasi data untuk evaluasi | OSS | Tidak |
| path info keypoint data | OSS | Tidak |
Jika port input dan parameter yang sesuai keduanya diatur, nilai dari port input akan diutamakan.
Pengaturan field
| Parameter | Wajib | Bawaan | Deskripsi |
|---|---|---|---|
| model type | Ya | TopDown | Tipe algoritma. Hanya TopDown yang didukung. |
| oss dir to save model | Tidak | None | Direktori OSS untuk menyimpan model yang telah dilatih. Contoh: oss://examplebucket/output_dir/ckpt/ |
| oss data path to training | Tidak | None | Path OSS ke gambar pelatihan. Wajib jika port input pelatihan tidak dihubungkan. Contoh: oss://examplebucket/data/train_images/ |
| oss annotation path for training data | Tidak | None | Path OSS ke file anotasi pelatihan. Wajib jika port anotasi pelatihan tidak dihubungkan. Contoh: oss://examplebucket/data/annotations/train.json |
| oss data path to evaluation | Tidak | None | Path OSS ke gambar evaluasi. Wajib jika port input evaluasi tidak dihubungkan. Contoh: oss://examplebucket/data/val_images/ |
| oss annotation path for evaluation data | Tidak | None | Path OSS ke file anotasi evaluasi. Wajib jika port anotasi evaluasi tidak dihubungkan. Contoh: oss://examplebucket/data/annotations/val.json |
| oss path to dataset info file | Tidak | None | Path OSS ke file info dataset. Wajib jika port info dataset tidak dihubungkan. Contoh: oss://examplebucket/data/annotations/dataset_info.py |
| Data Source Type | Ya | DetSourceCOCO | Format data input. Hanya DetSourceCOCO yang didukung. |
| oss path to pretrained model | Tidak | None | Path OSS ke model pra-latih kustom. Jika dikosongkan, PAI akan menggunakan model pra-latih bawaannya. |
Pengaturan parameter
| Parameter | Wajib | Bawaan | Deskripsi |
|---|---|---|---|
| backbone | Ya | hrnet | Model jaringan tulang punggung. Nilai yang valid: hrnet, lite_hrnet. |
| num keypoints | Ya | None | Jumlah kategori keypoint dalam dataset. |
| image size after resizing | Ya | 192,256 | Ukuran gambar input tetap (lebar,tinggi). Pisahkan nilai dengan koma. |
| initial learning rate | Ya | 0.01 | Tingkat pembelajaran awal untuk pelatihan. |
| learning rate policy | Ya | step | Jadwal tingkat pembelajaran. Hanya step yang didukung: laju berkurang pada epoch yang ditentukan di lr step. |
| lr step | Ya | 170,200 | Epoch saat tingkat pembelajaran berkurang 90%. Pisahkan beberapa nilai dengan koma. Misalnya, dengan laju awal 0.1 dan lr step diatur ke 5,10: epoch 1–5 menggunakan 0.1, epoch 6 dan seterusnya menggunakan 0.01, epoch 11 dan seterusnya menggunakan 0.001. |
| train batch size | Ya | 32 | Jumlah sampel per iterasi pelatihan. |
| eval batch size | Ya | 32 | Jumlah sampel per iterasi evaluasi. |
| total train epochs | Ya | 200 | Total jumlah putaran pelatihan atas seluruh data pelatihan. |
| save checkpoint epoch | Tidak | 1 | Frekuensi penyimpanan checkpoint. 1 menyimpan checkpoint setelah setiap epoch. |
Tuning
| Parameter | Wajib | Bawaan | Deskripsi |
|---|---|---|---|
| optimizer | Ya | SGD | Pengoptimal untuk pelatihan model. Nilai yang valid: SGD, Adam. |
| number process of reading data per gpu | Tidak | 2 | Jumlah thread pemuatan data per GPU. |
| evtorch model with fp16 | Tidak | None | Aktifkan presisi campuran FP16 untuk mengurangi penggunaan memori GPU. |
| single worker or distributed on DLC | Ya | single_on_dlc | Mode komputasi. Nilai yang valid: single_on_dlc, distribute_on_dlc. |
| number of worker | Tidak | 1 | Jumlah node pekerja. Wajib saat distribute_on_dlc dipilih. |
| cpu machine type | Tidak | 16vCPU+64GB Mem-ecs.g6.4xlarge | Tipe instans CPU. Wajib saat distribute_on_dlc dipilih. |
| gpu machine type | Ya | 8vCPU+60GB Mem+1xp100-ecs.gn5-c8g1.2xlarge | Tipe instans GPU. |
Port output
| Port | Tipe data | Komponen hilir |
|---|---|---|
| output model | Direktori OSS (sama dengan oss dir to save model) | image prediction |
Membuat pipeline deteksi pose
Langkah-langkah berikut menjelaskan pipeline pelatihan dan inferensi lengkap. ![]()
Anotasi data Anda. Gunakan iTAG untuk menganotasi gambar. Lihat iTAG.
Muat data. Tambahkan lima komponen Read File Data (Read File Data-1 hingga Read File Data-5). Atur parameter OSS Data Path masing-masing ke path berikut secara berurutan: gambar pelatihan, anotasi pelatihan, gambar evaluasi, anotasi evaluasi, dan file info dataset.
Hubungkan dan konfigurasikan. Buat koneksi dari kelima komponen Read File Data ke komponen pose detection. Konfigurasikan parameter yang dijelaskan di bagian Konfigurasi komponen.
Tambahkan inferensi. Hubungkan output komponen pose detection ke komponen image prediction. Atur parameter berikut pada image prediction:
Parameter Nilai model type pose_predictoross path for model Path yang sama dengan yang diatur di oss dir to save model pada komponen pose detection oss path of detection model for pose Path OSS ke model object detection. Wajib kecuali komponen object detection sudah dihubungkan di hulu — dalam hal ini model deteksi akan diwariskan secara otomatis. detection model type for pose yolox_predictor(wajib)