Topik ini menjelaskan cara menggunakan DLC, DSW, dan NAS untuk menjalankan pembelajaran transfer offline berbasis PyTorch.
Prasyarat
Buat sistem file NAS tujuan umum di wilayah yang Anda inginkan. Untuk informasi selengkapnya, lihat Buat sistem file NAS tujuan umum.
Batasan
Langkah-langkah dalam topik ini hanya berlaku untuk pekerjaan yang dijalankan pada kluster komputasi dalam kelompok sumber daya publik.
Langkah 1: Buat dataset
-
Buka halaman Datasets.
-
Masuk ke PAI console.
-
Di panel navigasi kiri, klik Workspaces. Di halaman Workspaces, klik nama ruang kerja yang ingin Anda kelola.
-
Di panel navigasi kiri, pilih .
-
-
Buat dataset dasar dan atur Storage Type ke NAS.
Langkah 2: Buat instans DSW
Buat instans DSW dan konfigurasikan parameter kunci berikut. Untuk detail parameter lainnya, lihat Buat instans DSW.
|
Parameter |
Deskripsi |
|
|
Environment Information |
Dataset Mounting |
Klik Custom Dataset, pilih dataset tipe NAS yang telah Anda buat di Langkah 1, lalu tentukan mount path. |
|
Working Directory |
Pilih |
|
|
Network information |
VPC Settings |
Tidak diperlukan konfigurasi VPC. |
Langkah 3: Siapkan data
Data yang digunakan dalam artikel ini disimpan di lokasi publik. Anda dapat mengunduh data (Download data) dan menggunakannya setelah mengekstrak file tersebut.
-
Buka lingkungan pengembangan instans DSW.
-
Masuk ke PAI console.
-
Di panel navigasi kiri, klik Workspaces. Di halaman Workspaces, klik nama ruang kerja yang ingin Anda kelola.
-
Di pojok kiri atas halaman, pilih wilayah tempat Anda ingin menggunakan PAI.
-
Di panel navigasi kiri, pilih .
-
Opsional: Di halaman Data Science Workshop (DSW), masukkan nama instans DSW atau kata kunci di kotak pencarian untuk mencari instans DSW tersebut.
-
Klik Open di kolom Actions instans tersebut.
-
-
Di bilah menu atas lingkungan DSW, klik tab Notebook.
-
Unduh data.
-
Di bilah alat kiri atas, klik ikon
untuk membuat folder. Untuk contoh ini, beri nama folder tersebut pytorch_transfer_learning. -
Di bilah menu atas lingkungan DSW, klik tab Terminal untuk membuka terminal.
-
Di terminal, gunakan perintah
cduntuk berpindah ke folder pytorch_transfer_learning, lalu gunakan perintahwgetuntuk mengunduh dataset:cd /mnt/workspace/pytorch_transfer_learning/ wget https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/data.tar.gzURL
https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/data.tar.gzmenentukan lokasi unduhan dataset.~/workspace> cd pytorch_transfer_learning/ ~/workspace/pytorch_transfer_learning> wget https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/data.tar.gz --2021-01-28 10:55:55-- https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/data.tar.gz Resolving pai-public-data.oss-cn-beijing.aliyuncs.com (pai-public-data.oss-cn-beijing.aliyuncs.com)... Connecting to pai-public-data.oss-cn-beijing.aliyuncs.com (pai-public-data.oss-cn-beijing.aliyuncs.com)|xxx|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 47237380 (45M) [application/x-gzip] Saving to: 'data.tar.gz' data.tar.gz 100%[=======================================================================>] 45.05M 16.0MB/s in 2.8s 2021-01-28 10:55:58 (16.0 MB/s) - 'data.tar.gz' saved [47237380/47237380] ~/workspace/pytorch_transfer_learning> ls data.tar.gz hol-transfer_learning_tutorial.py input LICENSE main.py output README.md ~/workspace/pytorch_transfer_learning> -
Gunakan perintah
tar -xf ./data.tar.gzuntuk mengekstrak dataset. -
Beralih ke tab Notebook. Di pohon direktori sebelah kiri, arahkan ke direktori
pytorch_transfer_learning. Klik kanan folder data yang telah diekstrak (hymenoptera_data), pilih Rename dari menu konteks, lalu ubah nama folder tersebut menjadi input.
-
Langkah 4: Siapkan kode dan folder output
-
Di terminal instans DSW Anda, gunakan perintah
wgetuntuk mengunduh kode pelatihan ke dalam folderpytorch_transfer_learning.cd /mnt/workspace/pytorch_transfer_learning/ wget https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/main.pydengan
https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/main.pysebagai lokasi penyimpanan kode pelatihan. -
Di folder pytorch_transfer_learning, buat folder baru bernama output untuk menyimpan model yang telah dilatih.
mkdir output -
Pastikan folder pytorch_transfer_learning berisi item-item berikut:
Folder tersebut harus berisi file dan direktori berikut:
-
input: folder untuk data pelatihan.
-
main.py: skrip pelatihan.
-
output: folder untuk menyimpan model hasil pelatihan.
-
Langkah 5: Buat pekerjaan
-
Masuk ke PAI console. Di bilah navigasi atas, pilih wilayah dan ruang kerja target Anda, lalu klik Go to DLC.
-
Di halaman DLC, klik Create Task.
-
Di halaman Create job, konfigurasikan parameter berikut.
Parameter
Deskripsi
Basic Information
Job Name
Masukkan nama untuk pekerjaan pelatihan pembelajaran mendalam.
Environment Information
Node Image
Pilih Alibaba Cloud Image dan pilih image PyTorch. Sebagai contoh, Anda dapat memilih
pytorch-training:1.12-gpu-py39-cu113-ubuntu20.04.Dataset
Klik Custom Dataset dan pilih dataset NAS yang telah Anda buat di Langkah 1.
Start Command
Atur parameter ini ke
python /mnt/data/pytorch_transfer_learning/main.py -i /mnt/data/pytorch_transfer_learning/input -o /mnt/data/pytorch_transfer_learning/output.Third-party Libraries
Pilih Third-Party Libraries dan masukkan konten berikut di kotak teks.
numpy==1.16.4 absl-py==0.11.0Code Build
Tidak diperlukan konfigurasi.
Resource Information
Source
Pilih Public Resources.
Framework
Pilih PyTorch.
Job Resource
Untuk sumber daya pekerjaan, pilih server. Sebagai contoh, atur Resource Type ke ecs.g6.xlarge di bawah CPU dan atur Nodes ke 1.
-
Klik Confirm.
Langkah 6: Lihat detail pekerjaan dan log
-
Di halaman Deep Learning Containers (DLC), klik nama pekerjaan Anda.
-
Di halaman detail pekerjaan, Anda dapat melihat Basic Information dan Resource Information pekerjaan tersebut.
-
Di bagian bawah halaman detail pekerjaan, temukan instans target di bagian Instance dan klik Log di kolom Actions.
Berikut adalah contoh output log.
Epoch 5/9 ---------- train Loss: 0.4959 Acc: 0.7951 val Loss: 0.2213 Acc: 0.9150 Epoch 6/9 ---------- train Loss: 0.6845 Acc: 0.7664 val Loss: 0.5303 Acc: 0.8301 Epoch 7/9 ---------- train Loss: 0.4233 Acc: 0.8156 val Loss: 0.2569 Acc: 0.9150 Epoch 8/9 ---------- train Loss: 0.4147 Acc: 0.8443 val Loss: 0.2397 Acc: 0.9346 Epoch 9/9 ---------- train Loss: 0.3133 Acc: 0.8770 val Loss: 0.2333 Acc: 0.9346 Training complete in 3m 50s Best val Acc: 0.934641