Aracılığıyla paylaş


Modelinizi ML.NET ile eğitin

Bu öğreticinin önceki aşamasında, kendi Windows Machine Learning modelinizi ve uygulamanızı oluşturmanın önkoşullarını ele aldık ve kullanılacak bir görüntü kümesini indirdik. Bu aşamada, görüntü kümemizi görüntü sınıflandırma modeline dönüştürmek için ML.NET Model Oluşturucusu'nu kullanmayı öğreneceğiz.

Projenizi oluşturun

  1. Visual Studio'yu açın ve "yeni proje oluştur"u seçin.

Model Oluşturucusu için yeni proje oluşturma

  1. Arama çubuğuna .NET yazın, platform olarak diliniz ve konsolunuz olarak C# seçin ve ardından C# Konsol Uygulaması (.NET Core) proje şablonunu seçin.

Yeni bir .NET projesi oluşturma

  1. Yapılandırma penceresinde:
  • Projenize bir ad verin. Burada MLNETTraining adını verdik.
  • Projenizin konumunu seçin.
  • Place solution and project in the same directory işaretli olmadığından emin olun.
  • Projenizi oluşturmak için basın create .

Yeni projenizi yapılandırma

Model Oluşturucusu'nu ayarlama

Şimdi model oluşturucuyu projemize ekleyebilirsiniz.

  1. Çözüm Gezgini'nde MLNETTraining projesine sağ tıklayın ve öğesini seçin Add > Machine Learning.

Projenize makine öğrenmesi ekleme

Bu şekilde, ML.NET Model Oluşturucusu'nu Visual Studio'da yeni bir yerleşik araç penceresinde açarsınız. Model Oluşturucusu, makine öğrenmesi modeli oluşturma sürecinde size yol gösterir.

Model oluşturucu senaryolarının listesi

İlk adım, ilgili senaryoyu seçmektir. Tüm senaryolar ONNX biçimini desteklemez.

Eğitim ortamı Azure bulutuysa, oluşturulan modeller ONNX biçimindedir ve Windows ML uygulaması tarafından dönüştürme olmadan kolayca kullanılabilir. Ancak makine öğrenmesi modelinizi makinenizde yerel olarak eğitmeye karar verirseniz oluşturulan model ML.NET biçimde olacaktır.

  • Yerel CPU eğitimi, Nesne Algılama dışındaki tüm senaryolar için desteklenir.
  • Görüntü Sınıflandırma için yerel GPU eğitimi desteklenir.
  • Azure eğitimi, Görüntü Sınıflandırma ve Nesne Algılama için desteklenir.

Bu öğreticide, Azure eğitim ortamında görüntü sınıflandırma modelini eğiteceksiniz. Çıkış modeli ONNX biçiminde olacaktır. Eğitimi tamamlamak için Azure hesabı gereklidir.

  1. Görüntü Sınıflandırma Senaryosu'na tıklayın.

  2. Azure eğitim ortamınızı ayarlamak için Çalışma alanını ayarla'yı seçin.

Azure çalışma alanınızı ayarlama

Sağ üst köşede Azure aboneliğinizle ilişkili hesapta oturum açın. Aşağıdaki menüde:

  • İlgili aboneliği seçin.
  • Yeni bir Machine Learning Çalışma Alanı seçin ve oluşturun.
  • Yeni bir İşlem kaynağı seçin veya oluşturun.
  • Çalışma alanınıza adını verin : ImageClassificationMLNET.

Azure çalışma alanınızı yapılandırma

Önemli

Model Builder'dan Machine Learning çalışma alanını oluşturamıyorsanız, Azure Portalınızdan el ile çalışma alanı oluşturmak için bu adımları izleyin. Aksi takdirde, 4. adıma atlayabilirsiniz.

Azure hesabınızda Kaynak oluştur'u seçin:

Kullanılabilir Azure kaynakları

Arama çubuğunda Makine Öğrenmesi'ni arayın.

Azure kaynak listesinde Machine Learning'i arama

Yeni bir Machine Learning çalışma alanı oluşturmak için Oluştur'a basın.

Azure Machine Learning kaynağı

Yeni bir çalışma alanı oluşturmak için abonelik adınızı sağlamanız, yeni bir kaynak grubu seçmeniz veya oluşturmanız, çalışma alanına bir ad vermeniz ve bölge, depolama hesabı gibi tüm gerekli parametreleri tanımlamanız gerekir.

Azure ML çalışma alanınızı ayarlama

Çalışma alanınızı oluşturduktan ve ML.NET yeni bir eğitim ortamı oluşturduktan sonra sonraki adıma geçebilirsiniz.

ML.NET eğitim ortamı

Machine Learning Services dağıtımı tamamlanana kadar bekleyin.

Sonraki adım, verileri Model Oluşturucusu'na eklemektir.

  1. Görüntü veri kümesinin konumuna gidin ve ilgili yiyecek kategorilerini içeren eğitim klasörünü seçin. Bu öğreticide modeli çöl, çorba ve meyveyi tanıyacak şekilde eğitecek, bu nedenle veri kümesi klasörünüzde yalnızca bu kategorilere ihtiyacınız olacak.

ML modelinize veri ekleme

Şimdi, eğitim bölümüne geçmeye hazırsınız!

Modelinizi eğitin

Model Oluşturucusu, size en iyi performansa sahip modeli sunmak için birçok modeli farklı algoritmalar ve ayarlarla değerlendirir.

  1. Eğitim sürecini başlatmak için İleri'yi ve ardından Eğitimi Başlat'ı seçin. ML.Net model oluşturucusu, verileri Azure'a yükleyerek başlar, çalışma alanını hazırlar ve ardından eğitim sürecini başlatır.

Machine Learning modelinizi eğitin

Eğitim tamamlandıktan sonra eğitim sonuçlarının özetini görürsünüz.

Başarılı model eğitimi

En iyi doğruluk - Model Oluşturucusu'nun bulduğu en iyi modelin doğruluğunu gösterir. Daha yüksek doğruluk, modelin test verilerinde daha doğru tahminde olduğu anlamına gelir. Bizim örneğimizde model 95,42% güvenilirlikle doğru sonucu tahmin edebilir.

Sonuçları değerlendirme

  1. Eğitim sonuçlarını değerlendirmek için sonraki adımı taşıyın.

  2. Veri kümesinin değerlendirme klasöründen görüntüyü seçin ve tahmini keşfedin.

Model değerlendirme sonuçları

Modeli çözüme ekleme

ML.NET Model Oluşturucusu, hem makine öğrenmesi modelini hem de modeli eğitmek ve kullanmak için projeleri çözümünüze otomatik olarak ekleyebilir.

  1. Eğitim sürecinin tüketme bölümüne gidin ve Çözüme ekle'yi satın. Bu işlem, oluşturulan modeli çözüm klasörünüze ekler.

Modelinizi çözümünüze ekleme

Çözüm Gezgini'nde, Model Oluşturucusu tarafından oluşturulan kod dosyalarını görmeniz gerekir. Buna ONNX biçimindeki bestModel.onnx modeli de dahildir.

Modeliniz çözüm gezgininde görüntüleniyor

Model Azure bulut ortamında eğitildiğinden oluşturulan model ONNX biçimindedir.

Modelinizi keşfedin

  1. bestModel.onnx will öğesine sağ tıklayın ve Içeren Klasörü Aç'ı seçin.

  2. Model dosyanızı Netron programıyla açın.

  3. Model özelliklerini açmak için input1 düğümüne basın.

Modelinizin özelliklerini keşfetme

Gördüğünüz gibi model giriş olarak 32 bit float tensor (çok boyutlu dizi) nesnesi gerektirir ve Tensor float değerini çıkış olarak döndürür. Modelin oluşturulma şekli, tahmin edilen bir etiketin dize değerini döndürmez, ancak her biri gıda türünün ilgili etiketini temsil eden üç sayılık bir dizi döndürür. Windows ML uygulamasıyla doğru tahmini göstermek için bu değerleri ayıklamanız gerekir.

Etiket 1 Etiket 2 Etiket 3
0 1 2
tatlı çorba Vegetable-Fruit

Sonraki Adımlar

Machine Learning modelinizi eğitdiğinize göre, Windows Machine Learning ile bir UWP uygulamasında dağıtmaya hazırsınız