Azure'da nesne algılamayı kullanmaya başlama

Tamamlandı

Gelişmiş derin öğrenme tekniklerini kullanarak bir nesne algılama makine öğrenmesi modeli oluşturabilirsiniz. Ancak bu yaklaşım için uzmanlık bilgisi ve çok fazla eğitim verisi gerekir. Azure'daki Azure AI Özel Görüntü İşleme hizmeti, en düşük derin öğrenme uzmanlığı ve daha az eğitim görüntüsü ile birçok görüntü işleme senaryosunun gereksinimlerini karşılayan nesne algılama modelleri oluşturmanıza olanak tanır.

Azure AI Özel Görüntü İşleme için Azure kaynakları

Azure AI Özel Görüntü İşleme ile nesne algılama çözümü oluşturmak üç ana görevden oluşur:

  • Görüntüleri karşıya yükleme ve etiketleme
  • Modeli eğitme
  • İstemci uygulamalarının tahmin oluşturmak için kullanabilmesi için eğitilen modeli yayımlama

Bu görevlerin her biri için Azure aboneliğinizde bir kaynağa ihtiyacınız olur. Aşağıdaki kaynak türlerini kullanabilirsiniz:

  • Özel Görüntü İşleme: Azure AI Özel Görüntü İşleme için ayrılmış bir kaynak. Eğitim kaynağı, tahmin kaynağı veya hem eğitim hem de tahmin kaynağı oluşturabilirsiniz.
  • Azure AI hizmetleri: Azure AI Özel Görüntü İşleme ve diğer birçok Azure yapay zeka hizmetini içeren genel bir kaynaktır. Bu kaynak türünü eğitim, tahmin veya her ikisi için de kullanabilirsiniz.

Model eğitimine yönelik kaynak kullanımını, modeli kullanarak görüntü sınıflarını tahmin eden istemci uygulamalarından ayrı izlemek istiyorsanız, eğitim ve tahmin kaynaklarının ayrılması önemlidir. Bununla birlikte bu ayrım, görüntü sınıflandırma çözümü geliştirmeyi biraz karmaşık hale getirebilir.

En basit yaklaşım, hem eğitim hem de tahmin için genel bir Azure AI hizmetleri kaynağı kullanmaktır. Genel bir kaynak kullandığınızda yalnızca bir uç nokta (hizmetinizin barındırıldığı HTTP adresi) ve anahtar (istemci uygulamaları tarafından kimlik doğrulaması için kullanılan gizli dizi değeri) ile ilgilenmeniz gerekir.

Özel Görüntü İşleme kaynağı oluşturmayı seçerseniz eğitim, tahmin veya her ikisini birden seçebilirsiniz. "Her ikisini de" seçerseniz biri eğitim, diğeri tahmin için olmak üzere iki kaynak oluşturulduğunu unutmayın.

Eğitim için ayrılmış bir Özel Görüntü İşleme kaynağı kullandığınız ancak modelinizi tahmin için bir Azure AI hizmetleri kaynağına dağıttığınız bir karma ve eşleşme yaklaşımını benimsemek de mümkündür. Bu yaklaşımla, eğitim ve tahmin kaynaklarının aynı bölgede oluşturulduğundan emin olun.

Görüntü etiketleme

Nesne algılama modeli eğitmek için bir dizi eğitim görüntüsünde sınıfları ve sınırlayıcı kutu koordinatlarını etiketlemeniz gerekir. Bu işlem zaman alabilir ancak Özel Görüntü İşleme portalındaki grafik arabirim sayesinde kolayca tamamlanabilir. Arabirim, görüntüdeki ayrık nesneleri otomatik olarak algılayabilir ve bu alanları size önerebilir. Bu önerilen sınırlayıcı kutulara bir sınıf etiketi uygulayabilir veya sınırlayıcı kutu alanını ayarlamak için sürükleyebilirsiniz. Ayrıca Azure AI Görüntü İşleme, ilk veri kümesiyle etiketleme ve eğitimden sonra, eğitim veri kümesine eklediğiniz görüntüler için sınıflar ve sınırlayıcı kutular önermek için akıllı etiketlemeyi kullanabilir.

Nesne algılama için eğitim görüntülerini etiketlerken dikkat edilmesi gereken birkaç önemli nokta göz önünde bulundurun. Tercihen birden çok açıdan söz konusu nesnelerin yeterli görüntüsüne sahip olduğunuzdan emin olun. Sınırlayıcı kutuların her nesnenin çevresinde sıkı olduğundan emin olmak da önemlidir.

Model eğitimi ve değerlendirmesi

Modeli eğitmek için Özel Görüntü İşleme portalını kullanabilir veya gerekli kodlama deneyimine sahipseniz Azure AI Özel Görüntü İşleme programlama diline özgü yazılım geliştirme setlerinden (SDK) birini kullanabilirsiniz. Nesne algılama modelini eğitmek eğitim görüntülerinin, sınıfların ve her görüntüdeki nesnelerin sayısına bağlı olarak uzun sürebilir.

Model eğitim süreci yinelemeli bir süreçtir. Azure AI Özel Görüntü İşleme verilerin bir kısmını kullanarak modeli sürekli olarak eğiter, ancak modeli değerlendirmek için bazılarını geriye tutar. Eğitim sürecinin sonunda, eğitilen modelin performansını yargılamak için aşağıdaki değerlendirme ölçümlerini kullanabilirsiniz:

  • Duyarlık: Model doğru şekilde sınıf tahminlerinin yüzde kaçını doğru tanımladı? Örneğin model 10 görüntünün portakal olduğunu tahmin ettiyse ancak bunların 8 tanesi gerçekten portakalsa duyarlık 0,8 (%80) olur.
  • Hatırlayacağınız gibi: Model tarafından yapılan sınıf tahminlerinin yüzde kaçı doğru? Örneğin 10 elma görüntüsü varsa ve model bunlardan 7 tanesini bulduysa yakalama değeri 0,7 (%70) olur.
  • Ortalama Ortalama Duyarlık (mAP): Tüm sınıflarda hem duyarlığı hem de yakalamayı dikkate alan genel bir ölçüm.

Modeli tahmin için kullanma

Modeli eğittikten ve performansından memnun kaldıktan sonra tahmin kaynağınız için yayımlayabilirsiniz. Modeli yayımlarken bir ad verebilirsiniz (varsayılan olarak "IterationX" kullanılır ve burada X, modeli eğitme sayınızdır).

İstemci uygulaması geliştiricileri modelinizi kullanmak için aşağıdaki bilgilere ihtiyaç duyar:

  • Proje Kimliği: Modeli eğitmek için oluşturduğunuz Özel Görüntü İşleme projesinin benzersiz kimliği.
  • Model adı: Yayımlama sırasında modele atadığınız ad.
  • Tahmin uç noktası: Modeli yayımladığınız tahmin kaynağının (eğitim kaynağının değil) uç noktalarının HTTP adresi.
  • Tahmin anahtarı: Modeli yayımladığınız tahmin kaynağının (eğitim kaynağının değil) kimlik doğrulama anahtarı.