Menyiapkan data untuk tugas visi komputer dengan pembelajaran mesin otomatis
BERLAKU UNTUK:Ekstensi ml Azure CLI v2 (saat ini)Python SDK azure-ai-ml v2 (saat ini)
Penting
Dukungan untuk pelatihan model visi komputer dengan ML otomatis di Azure Machine Learning adalah fitur pratinjau publik eksperimental. Fitur tertentu mungkin tidak didukung atau mungkin memiliki kemampuan terbatas. Untuk mengetahui informasi selengkapnya, lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure.
Dalam artikel ini, Anda mempelajari cara menyiapkan data gambar untuk melatih model visi komputer dengan pembelajaran mesin otomatis di Azure Machine Learning.
Untuk menghasilkan model untuk tugas visi komputer dengan pembelajaran mesin otomatis, Anda perlu membawa data gambar berlabel sebagai input untuk pelatihan model dalam bentuk MLTable
.
Anda dapat membuat MLTable
dari data pelatihan berlabel dalam format JSONL.
Jika data pelatihan berlabel Anda dalam format yang berbeda (seperti, pascal VOC atau COCO), Anda dapat menggunakan skrip konversi untuk terlebih dahulu mengonversinya ke JSONL, lalu membuat MLTable
. Atau, Anda dapat menggunakan alat pelabelan data Azure Machine Learning untuk memberi label gambar secara manual, dan mengekspor data berlabel yang akan digunakan untuk melatih model AutoML Anda.
Prasyarat
- Biasakan diri Anda dengan skema file JSONL yang diterima untuk eksperimen visi komputer AutoML.
Mendapatkan data berlabel
Untuk melatih model visi komputer menggunakan AutoML, Anda harus terlebih dahulu mendapatkan data pelatihan berlabel. Gambar harus diunggah ke cloud dan anotasi label harus dalam format JSONL. Anda dapat menggunakan alat Pelabelan Data Azure Pembelajaran Mesin untuk memberi label data Anda atau Anda dapat memulai dengan data gambar berlabel sebelumnya.
Menggunakan alat Pelabelan Data Azure Pembelajaran Mesin untuk memberi label data pelatihan Anda
Jika Anda tidak memiliki data berlabel sebelumnya, Anda dapat menggunakan alat pelabelan data Azure Pembelajaran Mesin untuk memberi label gambar secara manual. Alat ini secara otomatis menghasilkan data yang diperlukan untuk pelatihan dalam format yang diterima.
Alat tersebut membantu untuk membuat, mengelola, dan memantau tugas pelabelan data untuk
- Klasifikasi gambar (multi-kelas dan multi-label)
- Deteksi objek (kotak pembatas)
- Segmentasi instans (poligon)
Jika Anda sudah memiliki data berlabel yang ingin Anda gunakan, Anda dapat mengekspor data berlabel sebagai Himpunan Data azure Pembelajaran Mesin lalu mengakses himpunan data di bawah tab 'Himpunan Data' di studio Azure Pembelajaran Mesin. Himpunan data yang diekspor ini kemudian dapat diteruskan sebagai input menggunakan azureml:<tabulardataset_name>:<version>
format. Berikut adalah contoh cara meneruskan himpunan data yang ada sebagai input untuk melatih model visi komputer.
BERLAKU UNTUK:ekstensi ml Azure CLI v2 (saat ini)
training_data:
path: azureml:odFridgeObjectsTrainingDataset:1
type: mltable
mode: direct
Menggunakan data pelatihan berlabel sebelumnya dari komputer lokal
Jika Anda telah memberi label data yang ingin Anda gunakan untuk melatih model, Anda perlu mengunggah gambar ke Azure. Anda dapat mengunggah gambar Anda ke Azure Blob Storage default Ruang Kerja Azure Pembelajaran Mesin Anda dan mendaftarkannya sebagai aset data.
Skrip berikut mengunggah data gambar di komputer lokal Anda di jalur "./data/odFridgeObjects" ke datastore di Azure Blob Storage. Kemudian membuat aset data baru dengan nama "fridge-items-images-object-detection" di Ruang Kerja Azure Pembelajaran Mesin Anda.
Jika sudah ada aset data dengan nama "fridge-items-images-object-detection" di Ruang Kerja Azure Pembelajaran Mesin Anda, aset data akan diperbarui nomor versi aset data dan mengarahkannya ke lokasi baru tempat data gambar diunggah.
BERLAKU UNTUK:ekstensi ml Azure CLI v2 (saat ini)
Buat file .yml dengan konfigurasi berikut.
$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json
name: fridge-items-images-object-detection
description: Fridge-items images Object detection
path: ./data/odFridgeObjects
type: uri_folder
Untuk mengunggah gambar sebagai aset data, Anda menjalankan perintah CLI v2 berikut dengan jalur ke file .yml, nama ruang kerja, grup sumber daya, dan ID langganan Anda.
az ml data create -f [PATH_TO_YML_FILE] --workspace-name [YOUR_AZURE_WORKSPACE] --resource-group [YOUR_AZURE_RESOURCE_GROUP] --subscription [YOUR_AZURE_SUBSCRIPTION]
Jika Anda sudah memiliki data yang ada di datastore yang ada dan ingin membuat aset data darinya, Anda dapat melakukannya dengan menyediakan jalur ke data di datastore, alih-alih menyediakan jalur komputer lokal Anda. Perbarui kode di atas dengan cuplikan berikut.
BERLAKU UNTUK:ekstensi ml Azure CLI v2 (saat ini)
Buat file .yml dengan konfigurasi berikut.
$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json
name: fridge-items-images-object-detection
description: Fridge-items images Object detection
path: azureml://subscriptions/<my-subscription-id>/resourcegroups/<my-resource-group>/workspaces/<my-workspace>/datastores/<my-datastore>/paths/<path_to_image_data_folder>
type: uri_folder
Selanjutnya, Anda perlu mendapatkan anotasi label dalam format JSONL. Skema data berlabel bergantung pada tugas visi komputer yang ada. Lihat skema untuk file JSONL untuk eksperimen visi komputer AutoML untuk mempelajari selengkapnya tentang skema JSONL yang diperlukan untuk setiap jenis tugas.
Jika data pelatihan Anda dalam format yang berbeda (seperti, pascal VOC atau COCO), skrip pembantu untuk mengonversi data ke JSONL tersedia di contoh buku catatan.
Setelah membuat file jsonl dengan mengikuti langkah-langkah di atas, Anda dapat mendaftarkannya sebagai aset data menggunakan UI. Pastikan Anda memilih stream
ketik di bagian skema seperti yang ditunjukkan dalam animasi ini.
Menggunakan data pelatihan berlabel sebelumnya dari penyimpanan Azure Blob
Jika Anda memiliki data pelatihan berlabel yang ada dalam kontainer di penyimpanan Azure Blob, maka Anda dapat mengaksesnya langsung dari sana dengan membuat datastore yang mengacu pada kontainer tersebut.
Membuat MLTable
Setelah Anda memiliki data berlabel dalam format JSONL, Anda dapat menggunakannya untuk membuat MLTable
seperti yang ditunjukkan dalam cuplikan yaml ini. MLtable mengemas data Anda menjadi objek yang dapat digunakan untuk pelatihan.
paths:
- file: ./train_annotations.jsonl
transformations:
- read_json_lines:
encoding: utf8
invalid_lines: error
include_path_column: false
- convert_column_types:
- columns: image_url
column_type: stream_info
Anda kemudian dapat meneruskan MLTable
sebagai input data untuk pekerjaan pelatihan AutoML Anda.