AutoML ile küçük bir nesne algılama modelini eğitin
ŞUNLAR IÇIN GEÇERLIDIR: Python SDK azure-ai-ml v2 (geçerli)
Bu makalede, Azure Machine Learning'de otomatik ML ile yüksek çözünürlüklü görüntülerdeki küçük nesneleri algılamak için nesne algılama modelini eğitmeyi öğreneceksiniz.
Genellikle, nesne algılamaya yönelik görüntü işleme modelleri, görece büyük nesnelere sahip veri kümelerinde iyi çalışır. Ancak, bellek ve hesaplama kısıtlamaları nedeniyle, bu modeller yüksek çözünürlüklü görüntülerdeki küçük nesneleri algılama görevi verildiğinde düşük performans gösterme eğilimindedir. Yüksek çözünürlüklü görüntüler genellikle büyük olduğundan, modele giriş yapmadan önce yeniden boyutlandırılırlar ve bu da ilk görüntü boyutuna göre daha küçük nesneleri algılama yeteneklerini sınırlar.
Bu soruna yardımcı olmak için otomatik ML, görüntü işleme özelliklerinin bir parçası olarak döşemeyi destekler. Otomatik ML'deki döşeme özelliği, Küçük Nesne Algılama için Döşemenin Gücü'ndeki kavramları temel alır.
Döşeme sırasında her resim bir kutucuk kılavuzuna bölünür. Bitişik kutucuklar genişlik ve yükseklik boyutlarında birbirleriyle çakışıyor. Kutucuklar, aşağıdaki görüntüde gösterildiği gibi özgün kutucuklardan kırpılır.
Önkoşullar
Azure Machine Learning çalışma alanı. Çalışma alanını oluşturmak için bkz. Çalışma alanı kaynakları oluşturma.
Bu makalede , görüntü işleme görevleri için otomatik makine öğrenmesi denemesini yapılandırma hakkında biraz bilgi sahibi olduğunuz varsayılır.
Desteklenen modeller
Döşeme kullanan küçük nesne algılama, nesne algılama görevi için görüntüler için Otomatik ML tarafından desteklenen tüm modeller için desteklenir.
Eğitim sırasında döşemeyi etkinleştirme
Döşemeyi etkinleştirmek için parametresini
tile_grid_size '3x2' gibi bir değere ayarlayabilirsiniz; burada 3, genişlik boyutu boyunca kutucuk sayısı ve 2 yükseklik boyutu boyunca kutucuk sayısıdır. Bu parametre '3x2' olarak ayarlandığında, her görüntü 3 x 2 kutucuklu bir kılavuza bölünür. Her kutucuk bitişik kutucuklarla çakıştığı için, kutucuk sınırına düşen tüm nesneler kutucuklardan birine tamamen eklenir. Bu çakışma, varsayılan olarak %25 olan parametresi tarafından
tile_overlap_ratio denetlenebilir.
Döşeme etkinleştirildiğinde, görüntünün tamamı ve ondan oluşturulan kutucuklar modelden geçirilir. Bu görüntüler ve kutucuklar modele
min_size beslemeden önce ve
max_size parametrelerine göre yeniden boyutlandırılır. Bu ek verilerin işlenmesi nedeniyle hesaplama süresi orantılı olarak artar.
Örneğin, parametre '3x2' olduğunda
tile_grid_size , hesaplama süresi döşeme olmadan yaklaşık yedi kat daha yüksek olur.
Eğitim parametrelerinizde değerini
tile_grid_size dize olarak belirtebilirsiniz.
ŞUNLAR IÇIN GEÇERLIDIR:Azure CLI ml uzantısı v2 (geçerli)
training_parameters: tile_grid_size: '3x2'
parametresinin değeri
tile_grid_size görüntü boyutlarına ve görüntü içindeki nesnelerin boyutuna bağlıdır. Örneğin, görüntülerde daha küçük nesneler olduğunda daha fazla sayıda kutucuk yararlı olabilir.
Veri kümeniz için bu parametre için en uygun değeri seçmek için hiper parametre aramasını kullanabilirsiniz. Bunu yapmak için hiper parametre alanınızda bu parametre için bir değer seçimi belirtebilirsiniz.
ŞUNLAR IÇIN GEÇERLIDIR:Azure CLI ml uzantısı v2 (geçerli)
search_space: - model_name: type: choice values: ['fasterrcnn_resnet50_fpn'] tile_grid_size: type: choice values: ['2x1', '3x2', '5x3']
Çıkarım sırasında döşeme
Döşemeyle eğitilen bir model dağıtıldığında, döşeme çıkarım sırasında da gerçekleşir. Otomatik ML, çıkarım sırasında kutucukları oluşturmak için eğitimden alınan değeri kullanır
tile_grid_size . Görüntünün tamamı ve karşılık gelen kutucuklar modelden geçirilir ve bu kutucuklardan gelen nesne teklifleri, aşağıdaki görüntüde olduğu gibi son tahminleri elde etmek için birleştirilir.
Not
Aynı nesne birden çok kutucuktan algılanıyor olabilir, yinelenenleri kaldırmak için yineleme algılaması yapılır.
Yinelenen algılama, kutucuklardan ve görüntüden gelen tekliflerde NMS çalıştırılarak yapılır. Birden çok teklif çakıştığında, en yüksek puana sahip olan seçilir ve diğerleri yinelenen olarak atılır. Aralarındaki birleşim (iou) üzerindeki kesişim parametresinden büyük olduğunda iki teklifin
tile_predictions_nms_thresh çakıştığı kabul edilir.
Ayrıca, eğitimde etkinleştirmeden yalnızca çıkarım sırasında döşemeyi etkinleştirme seçeneğiniz vardır. Bunu yapmak için parametresini
tile_grid_size eğitim için değil yalnızca çıkarım sırasında ayarlayın.
Bunu yapmak, bazı veri kümelerinin performansını artırabilir ve eğitim zamanında döşemeyle birlikte gelen ek maliyete neden olmaz.
Döşeme hiper parametreleri
Döşeme özelliğini denetlemek için kullanabileceğiniz parametreler aşağıdadır.
|Parametre Adı||Açıklama||Varsayılan|


||Her görüntüyü döşemek için kullanılacak kılavuz boyutu. Eğitim, doğrulama ve çıkarım sırasında kullanılabilir.


Biçimde bir dize
Not: Tüm kutucuklar ve görüntüler model tarafından işlendiği için bu parametrenin ayarlanması hesaplama süresini orantılı olarak artırır.
|varsayılan değer yok|


||Her boyuttaki bitişik kutucuklar arasındaki çakışma oranını denetler. Kutucuk sınırına düşen nesneler kutucuklardan birine tamamen sığamayacak kadar büyük olduğunda, nesnelerin kutucuklardan en az birine tamamen sığması için bu parametrenin değerini artırın.


[0, 1) içinde bir float olmalıdır.
|0,25|


||Kutucuklardan ve görüntüden tahminleri birleştirirken maksimum olmayan gizleme (nms) yapmak için kullanılacak birleşim eşiği üzerindeki kesişim. Doğrulama ve çıkarım sırasında kullanılabilir. Son tahminlerde nesne başına algılanan birden çok kutu varsa bu parametreyi değiştirin.


[0, 1] içinde kaydırılmalıdır.
|0,25|
Örnek not defterleri
Nesne algılama modelini ayarlama ve eğiterek ilgili ayrıntılı kod örnekleri için bkz. nesne algılama örnek not defteri .
Not
Bu makaledeki tüm görüntüler , MIT lisans sözleşmesinin izin verilen kullanım bölümüne uygun olarak kullanıma sunulmuştur. Telif Hakkı © 2020 Roboflow, Inc.
Sonraki adımlar
- Modelin nasıl ve nerede dağıtılacağı hakkında daha fazla bilgi edinin.
- Her iş için sağlanan performans grafiklerinin ve ölçümlerin tanımları ve örnekleri için bkz . Otomatik makine öğrenmesi denemesi sonuçlarını değerlendirme.
- Öğretici: AutoML ve Python ile nesne algılama modelini eğitin.
- Görüntü işleme görevleri için hangi hiper parametrelerin kullanılabilir olduğunu görün.
- AutoML'den görüntü işleme modellerinde ONNX ile tahminler yapma