Melatih model Anda dengan ML.NET
Pada tahap sebelumnya dari tutorial ini, kami membahas prasyarat pembuatan model dan aplikasi Windows Pembelajaran Mesin Anda sendiri, dan mengunduh gambar yang diatur untuk digunakan. Pada tahap ini, kita akan mempelajari cara menggunakan ML.NET Model Builder untuk mengubah gambar kita diatur menjadi model klasifikasi gambar.
Membuat proyek
- Buka Visual Studio dan pilih "buat proyek baru".
- Di bilah pencarian, ketik .NET, pilih C# sebagai bahasa dan konsol Anda sebagai platform Anda lalu pilih templat proyek Aplikasi Konsol C# (.NET Core).
- Di jendela konfigurasi:
- Beri nama proyek Anda. Di sini, kami menyebutnya MLNETTraining.
- Pilih lokasi untuk proyek Anda.
- Pastikan
Place solution and project in the same directory
tidak dicentang. - Tekan
create
untuk membuat proyek Anda.
Menyiapkan Pembuat Model
Sekarang, Anda akan menambahkan Model Builder ke proyek kami.
- Klik kanan pada proyek MLNETTraining di Penjelajah Solusi dan pilih
Add > Machine Learning
.
Dengan cara ini, Anda membuka ML.NET Model Builder di jendela alat dock baru di Visual Studio. Model Builder akan memandu Anda melalui proses membangun model pembelajaran mesin.
Langkah pertama adalah memilih skenario yang relevan. Tidak semua skenario mendukung format ONNX.
Jika lingkungan pelatihan adalah cloud Azure, model yang dihasilkan dalam format ONNX dan dapat dengan mudah digunakan oleh aplikasi Windows ML tanpa konversi. Namun, jika Anda memutuskan untuk melatih model pembelajaran mesin Anda secara lokal di komputer Anda, model yang dihasilkan akan dalam format ML.NET.
- Pelatihan CPU lokal didukung untuk semua skenario kecuali Deteksi Objek.
- Pelatihan GPU lokal didukung untuk Klasifikasi Gambar.
- Pelatihan Azure didukung untuk Klasifikasi Gambar dan Deteksi Objek.
Dalam tutorial ini, Anda akan melatih model klasifikasi gambar di lingkungan pelatihan Azure. Model output akan dalam format ONNX. Akun Azure diperlukan untuk menyelesaikan pelatihan.
Pilih Skenario Klasifikasi Gambar.
Pilih Siapkan ruang kerja untuk menyiapkan lingkungan pelatihan Azure Anda.
Di sudut kanan atas, masuk ke akun yang terkait dengan langganan Azure Anda. Pada menu di bawah ini:
- Pilih langganan yang relevan.
- Pilih dan buat ruang kerja Pembelajaran Mesin baru.
- Pilih atau buat sumber daya Komputasi baru.
- Berikan nama ke ruang kerja Anda – ImageClassificationMLNET.
Penting
Jika Anda tidak dapat membuat ruang kerja Pembelajaran Mesin dari Model Builder, ikuti langkah-langkah ini untuk membuat ruang kerja secara manual dari Portal Microsoft Azure Anda. Jika tidak, Anda dapat melompat ke langkah 4.
Di akun Azure Anda, pilih Buat sumber daya:
Di bilah pencarian, cari Pembelajaran Mesin.
Tekan Buat untuk membuat ruang kerja Pembelajaran Mesin baru.
Untuk membuat ruang kerja baru, Anda harus memberikan nama langganan Anda, memilih atau membuat grup sumber daya baru, memberi nama ke ruang kerja dan menentukan semua parameter yang diperlukan seperti wilayah, akun penyimpanan, dll.
Setelah Anda menetapkan ruang kerja dan membuat lingkungan pelatihan baru di ML.NET, Anda dapat pindah ke langkah berikutnya.
Tunggu hingga penyebaran Layanan Pembelajaran Mesin selesai.
Langkah selanjutnya adalah menambahkan data ke Model Builder.
- Navigasi ke lokasi himpunan data gambar dan pilih folder pelatihan dengan kategori makanan yang relevan. Dalam tutorial ini Anda akan melatih model untuk mengenali gurun, sup, dan buah, jadi Anda hanya memerlukan kategori ini di folder himpunan data kami.
Sekarang, Anda siap untuk pindah ke bagian pelatihan!
Melatih Model Anda
Model Builder mengevaluasi banyak model dengan berbagai algoritma dan pengaturan untuk memberi Anda model berkinerja terbaik.
- Pilih berikutnya lalu Mulai Pelatihan untuk memulai proses pelatihan. Penyusun model ML.Net akan dimulai dengan mengunggah data ke Azure, menyiapkan ruang kerja lalu memulai proses pelatihan.
Setelah pelatihan selesai, Anda akan melihat ringkasan hasil pelatihan.
Akurasi terbaik - menunjukkan akurasi model terbaik yang ditemukan Model Builder. Akurasi yang lebih tinggi berarti model diprediksi lebih benar pada data pengujian. Dalam kasus kami, model dapat memprediksi hasil yang benar dengan keyakinan 95,42%.
Evaluasi hasil
Pindahkan langkah berikutnya untuk mengevaluasi hasil pelatihan.
Pilih gambar dari folder evaluasi himpunan data dan jelajahi prediksi.
Menambahkan model ke solusi
ML.NET Model Builder dapat secara otomatis menambahkan model pembelajaran mesin dan proyek untuk melatih dan mengkonsumsi model ke solusi Anda.
- Navigasi ke bagian konsumsi dari proses pelatihan dan jual Tambahkan ke solusi. Ini akan menambahkan model yang dihasilkan ke folder solusi Anda.
Dalam Penjelajah Solusi, Anda akan melihat file kode yang dihasilkan oleh Model Builder, termasuk model – bestModel.onnx dalam format ONNX.
Model yang dilatih di lingkungan cloud Azure, sehingga model yang dihasilkan dalam format ONNX.
Menjelajahi model Anda
Klik kanan pada bestModel.onnx akan dan pilih Buka Folder Yang Berisi.
Buka file model Anda dengan program Netron.
Tekan pada simpul input1 untuk membuka properti model.
Seperti yang Anda lihat, model memerlukan objek tensor float 32-bit (array multi-dimensi) sebagai input dan mengembalikan float Tensor sebagai output. Cara model dibangun, model tidak mengembalikan nilai string dari label yang diprediksi tetapi array tiga angka, masing-masing mewakili label yang relevan dari jenis makanan. Anda harus mengekstrak nilai-nilai ini untuk menunjukkan prediksi yang benar dengan aplikasi Windows ML.
Label 1 | Label 2 | Label 3 |
---|---|---|
0 | 1 | 2 |
Makanan penutup | sup | Sayur-Buah |
Langkah berikutnya
Setelah melatih model Pembelajaran Mesin, Anda siap untuk menyebarkannya di aplikasi UWP dengan Windows Pembelajaran Mesin