Aracılığıyla paylaş


Model Builder'ı kullanarak Azure'da görüntü sınıflandırma modelini eğitin

Uydu görüntülerinden arazi kullanımını kategorilere ayırmak için Model Builder'ı kullanarak Azure'da görüntü sınıflandırma modelini eğitmeyi öğrenin.

Bu öğreticide, Model Builder ile uydu görüntülerine göre arazi kullanımını kategorilere ayırmak için bir C# sınıf kitaplığı oluşturma gösterilmektedir.

Bu öğreticide şunları yaptınız:

  • Verileri hazırlama ve anlama
  • Model Builder yapılandırma dosyası oluşturma
  • Senaryo seçme
  • Verileri yükleme
  • Azure'da deneme oluşturma
  • Modeli eğitme
  • Modeli değerlendirme
  • Modeli kullanma

Önkoşullar

Model Oluşturucusu görüntü sınıflandırmasına genel bakış

Bu örnek, Model Builder ile Azure'da eğitilen bir derin öğrenme modelini kullanarak harita uydu görüntülerinden kara kullanımını kategorilere ayıran C# sınıf kitaplığı oluşturur. Bu öğreticinin kaynak kodunu dotnet/machinelearning-samples GitHub deposunda bulabilirsiniz

C# Sınıf Kitaplığı Oluşturma

"LandUse" adlı bir C# Sınıf Kitaplığı oluşturun.

Verileri hazırlama ve anlama

Not

Bu öğreticinin verileri şu kaynaklardandır:

  • Eurosat: Arazi kullanımı ve arazi kapsamı sınıflandırması için yeni bir veri kümesi ve derin öğrenme karşılaştırması. Patrick Helber, Benjamin Bischke, Andreas Dengel, Damian Borth. IEEE Dünya Gözlemleri ve Uzaktan Algılamada Seçili Konular Dergisi, 2019.
  • EuroSAT ile tanışın: Arazi Kullanımı ve Arazi Kapağı Sınıflandırması için Yeni Bir Veri Kümesi ve Derin Öğrenme Karşılaştırması. Patrick Helber, Benjamin Bischke, Andreas Dengel. 2018 IEEE International Geoscience and Remote Sensing Symposium, 2018.

EuroSAT veri kümesi, on kategoriye (kırsal, endüstriyel, nehir vb.) ayrılmış uydu görüntüleri koleksiyonu içerir. Özgün veri kümesi 27.000 görüntü içerir. Kolaylık sağlamak için bu öğreticide bu görüntülerden yalnızca 2.000'i kullanılır.

Dataset

  1. EuroSAT veri kümesinin alt kümesini indirin ve bilgisayarınızda herhangi bir yere kaydedin.
  2. Sıkıştırmasını açın.

Model Builder yapılandırma dosyası oluşturma

Çözüme Model Oluşturucusu'nu ilk kez eklediğinizde bir mbconfig dosya oluşturmanız istenir. Dosya, mbconfig oturumu yeniden açmanızı sağlamak için Model Builder'da yaptığınız her şeyi izler.

  1. Çözüm Gezgini'da LandUse projesine sağ tıklayın ve Makine Öğrenmesi Modeli Ekle...'yi >seçin.
  2. İletişim kutusunda Model Oluşturucusu projesini LandUse olarak adlandırın ve Ekle'ye tıklayın.

Senaryo seçme

Model OluşturucuSu Senaryo Ekranı

Modelinizi eğitmek için Model Builder tarafından sağlanan kullanılabilir makine öğrenmesi senaryoları listesinden seçim yapmanız gerekir.

Bu örnek için görev, görüntü sınıflandırmadır. Model Oluşturucu aracının senaryo adımında Görüntü Sınıflandırma senaryosunu seçin.

Ortam seçme

Model Oluşturucusu, seçilen senaryoya bağlı olarak eğitimi farklı ortamlarda çalıştırabilir.

Ortamınız olarak Azure'ı seçin ve Çalışma alanını ayarla düğmesine tıklayın.

Azure'da deneme oluşturma

Azure Machine Learning denemesi, Azure'da Model Builder eğitimini çalıştırmadan önce oluşturulması gereken bir kaynaktır.

Deneme, bir veya daha fazla makine öğrenmesi eğitim çalıştırması için yapılandırmayı ve sonuçları kapsüller. Denemeler belirli bir çalışma alanına aittir. İlk kez bir deneme oluşturulduğunda, denemenin adı çalışma alanına kaydedilir. Sonraki tüm çalıştırmalar (aynı deneme adı kullanılıyorsa) aynı denemenin bir parçası olarak günlüğe kaydedilir. Aksi takdirde yeni bir deneme oluşturulur.

Yeni Deneme Oluştur iletişim kutusunda Abonelik açılan listesinden aboneliğinizi seçin.

Çalışma alanı oluşturma

Çalışma alanı, eğitim çalıştırmasının bir parçası olarak oluşturulan tüm Azure Machine Learning kaynakları ve yapıtları için merkezi bir yer sağlayan bir Azure Machine Learning kaynağıdır.

  1. Yeni Deneme Oluştur iletişim kutusunda Machine Learning Çalışma Alanı adı açılan listesinin yanındaki Yeni bağlantısını seçin.

  2. Yeni Çalışma Alanı Oluştur iletişim kutusunda Machine Learning Çalışma Alanı adı metin kutusuna "landuse-wkspc" yazın.

  3. Bölgeler açılan listesinden Doğu ABD'yi seçin. Bölge, çalışma alanınızın ve kaynaklarınızın dağıtıldığı veri merkezinin coğrafi konumudur. Sizin veya müşterilerinizin bulunduğu yere yakın bir konum seçmeniz önerilir.

  4. Kaynak Grupları açılan listesinin yanındaki Yeni bağlantısını seçin.

    1. Yeni Kaynak Grubu Oluştur iletişim kutusunda, Kaynak Grubu adı metin kutusuna "landuse-rg" yazın.
    2. Tamam’ı seçin.
  5. Kaynak Grupları açılan listesinden yeni oluşturduğunuz kaynak grubunu seçin.

  6. Oluştur’u seçin.

    Sağlama işlemi birkaç dakika sürer. Aşağıdaki bulut kaynaklarını sağlamak için Azure'a bir istek gönderilir:

    • Azure Machine Learning çalışma alanı
    • Azure Depolama Hesabı
    • Azure Application Insights
    • Azure Container Registry
    • Azure Key Vault
  7. Sağlama işlemi tamamlandıktan sonra, Yeni Deneme Oluştur iletişim kutusundaki Machine Learning Çalışma Alanı adı açılan listesinden yeni oluşturduğunuz çalışma alanını seçin.

İşlem oluşturma

Azure Machine Learning işlemi, eğitim için kullanılan bulut tabanlı bir Linux VM'dir.

  1. Yeni Deneme Oluştur iletişim kutusunda İşlem adı açılan listesinin yanındaki Yeni bağlantısını seçin.
  2. Yeni İşlem Oluştur iletişim kutusunda, İşlem adı metin kutusuna "landuse-cpt" yazın.
  3. İşlem boyutu açılan listesinden Standard_NC24 seçin. Model Oluşturucu, GPU için iyileştirilmiş işlem türlerini kullanır. GPU için iyileştirilmiş işlem türleri hakkında daha fazla bilgi için NC serisi Linux VM belgelerini ziyaret edin.
  4. Oluştur’u seçin. İşlem kaynaklarının sağlanması birkaç dakika sürebilir.
  5. Sağlama işlemi tamamlandıktan sonra, Yeni Deneme Oluştur iletişim kutusundaki İşlem adı açılan listesinden yeni oluşturduğunuz çalışma alanını seçin.
  6. Verilere yüklemek için Sonraki adım düğmesini seçin.

Verileri yükleme

  1. Model Oluşturucu aracının veri adımında Klasör seçin metin kutusunun yanındaki düğmeyi seçin.
  2. görüntüleri içeren sıkıştırması açılmış dizine göz atmak ve dizini seçmek için Dosya Gezgini kullanın.
  3. Model Oluşturucusu aracında sonraki adıma geçmek için Sonraki adım düğmesini seçin.

Modeli eğitme

Azure'da eğitim yalnızca Model Builder görüntü sınıflandırma senaryosu için kullanılabilir. Bu modelleri eğitmek için kullanılan algoritma, ResNet50 mimarisini temel alan bir Derin Sinir Ağı'dır. Model eğitim işlemi sırasında Model Oluşturucusu, veri kümeniz için en iyi performansı gösteren modeli bulmak için ResNet50 algoritmasını ve ayarlarını kullanarak ayrı modeller eğitiyor.

Eğitime başlama

Çalışma alanınızı ve işlem türünüzü yapılandırdıktan sonra denemeyi oluşturmayı bitirip eğitime başlayabilirsiniz.

  1. Eğitimi Başlat düğmesine tıklayın.

    Eğitim süreci biraz zaman alır ve bu süre seçilen işlemin boyutuna ve veri miktarına bağlı olarak değişebilir. Bir model ilk kez eğitildiğinde, kaynakların sağlanması gerektiğinden biraz daha uzun bir eğitim süresi bekleyebilirsiniz. Visual Studio'da geçerli çalıştırmayı Azure portal izle bağlantısını seçerek çalıştırmalarınızın ilerleme durumunu izleyebilirsiniz.

    Eğitim süreci boyunca ilerleme verileri, eğitim adımının İlerleme bölümünde görüntülenir.

    • Durum, eğitim işleminin tamamlanma durumunu görüntüler.
    • En iyi doğruluk, Şimdiye kadar Model Oluşturucusu tarafından bulunan en iyi performansa sahip modelin doğruluğunu görüntüler. Daha yüksek doğruluk, modelin test verilerinde daha doğru tahminde olduğu anlamına gelir.
    • Algoritma, şimdiye kadar Model Builder tarafından bulunan en iyi performans gösteren algoritmanın adını görüntüler.
  2. Eğitim tamamlandıktan sonra sonraki adım düğmesini seçerek modeli değerlendirin.

Modeli değerlendirme

Eğitim adımının sonucu, en iyi performansa sahip bir modeldir. Model Oluşturucu aracının değerlendirme adımında, çıkış bölümündeki Ayrıntılar sekmesi, Algoritma girişindeki en iyi performans gösteren model tarafından kullanılan algoritmayı ve En iyi model ayrıntılarındaki Doğruluk girdisindeki ölçümleri içerir.

Doğruluk ölçümlerinizden memnun değilseniz model doğruluğunu geliştirmenin bazı kolay yolları daha fazla veri kullanmak veya mevcut verileri artırmaktır. Aksi takdirde, Sonraki adım düğmesini seçerek Model Oluşturucusu aracındaki son adıma geçin.

(İsteğe bağlı) Modeli kullanma

Bu adım, modeli kullanmak için kullanabileceğiniz proje şablonlarına sahip olacaktır. Bu adım isteğe bağlıdır ve modele hizmet verme konusunda ihtiyaçlarınıza en uygun yöntemi seçebilirsiniz.

  • Konsol Uygulaması
  • Web API

Konsol Uygulaması

Çözümünüzde bir konsol uygulaması eklerken projeyi adlandırmanız istenir.

  1. Konsol projesini LandUse_Console olarak adlandırın.

  2. Projeyi geçerli çözümünüze eklemek için Çözüme ekle'ye tıklayın.

  3. Uygulamayı çalıştırın.

    Program tarafından oluşturulan çıktı aşağıdaki kod parçacığına benzer olmalıdır:

    Predicted Label value: AnnualCrop
    
    Predicted Label scores: [0.9941197,3.3146807E-06,4.4344174E-06,0.000101028825,7.763133E-06,0.0015898133,0.0040994748,1.6308518E-06,6.265567E-05,1.0236401E-05]
    

Web API

Çözümünüze web API'sini eklerken projeyi adlandırmanız istenir.

  1. Web API proje LandUse_API adlandırın.

  2. Projeyi geçerli çözümünüze eklemek için Çözüme ekle'ye tıklayın.

  3. Uygulamayı çalıştırın.

  4. PowerShell'i açın ve PORT değerinin uygulamanızın dinlediği bağlantı noktası olduğu aşağıdaki kodu girin.

    $body = @{
         ImageSource = <Image location on your local machine>
    }
    
     Invoke-RestMethod "https://localhost:<PORT>/predict" -Method Post -Body ($body | ConvertTo-Json) -ContentType "application/json"
    
  5. Başarılı olursa, çıkış aşağıdaki metne benzer görünmelidir.

    output1                                           prediction score
    -------                                           ---------- -----
    {9.508701, -3.1025503, -2.8115153, 0.31449434...} AnnualCrop {0.9941197, 3.3146807E-06, 4.4344174E-06, 0.00010102882...
    

Kaynakları temizleme

Artık oluşturduğunuz Azure kaynaklarını kullanmayı planlamezseniz, bunları silin. Bu, çalışmakta olan unutılmış kaynaklar için ücret tahsil edilmenizi önler.

  1. Azure portal gidin ve portal menüsünde Kaynak grupları'nı seçin.
  2. Kaynak grupları listesinden, oluşturduğunuz kaynak grubunu seçin. Bu örnekte "landuse-rg".
  3. Kaynak grubunu sil'i seçin.
  4. Metin kutusuna "landuse-rg" kaynak grubu adını yazın ve Enter tuşuna basın.

Sonraki adımlar

Bu öğreticide, şunların nasıl yapıldığını öğrendiniz:

  • Verileri hazırlama ve anlama
  • Model Builder yapılandırma dosyası oluşturma
  • Senaryo seçme
  • Verileri yükleme
  • Azure'da deneme oluşturma
  • Modeli eğitme
  • Modeli değerlendirme
  • Modeli kullanma

Diğer Model Oluşturucusu senaryolarından birini deneyin: