Model Testi Üzerine Bir Rehber

Giriş

Modelini eğittikten ve değerlendirdikten sonra, onu test etme zamanı gelmiştir. Model testi, gerçek dünya senaryolarında ne kadar iyi performans gösterdiğini değerlendirmeyi içerir. Test süreci; doğruluk, güvenilirlik, tarafsızlık ve modelin kararlarının ne kadar kolay anlaşılabildiği gibi faktörleri göz önünde bulundurur. Amaç, modelin amaçlandığı gibi çalıştığından, beklenen sonuçları verdiğinden ve uygulamanın genel hedefine veya projesine uyum sağladığından emin olmaktır.



Watch: How to Test Machine Learning Models | Avoid Data Leakage in Computer Vision 🚀

Model testi, model değerlendirmesine oldukça benzer, ancak bunlar bir bilgisayarlı görü projesindeki iki ayrı adımdır. Model değerlendirmesi, modelin doğruluğunu ölçmek için metrikler ve grafikler içerir. Diğer taraftan model testi, modelin öğrendiği davranışın beklentilerle aynı olup olmadığını kontrol eder. Bu rehberde, bilgisayarlı görü modellerini test etmek için stratejileri keşfedeceğiz.

Model Testi ile Model Değerlendirmesi Karşılaştırması

Öncelikle, model değerlendirmesi ve testi arasındaki farkı bir örnekle anlayalım.

Bir evcil hayvan mağazasında hayvanları izlemek üzere bu modeli dağıtmak istediğini ve kedilerle köpekleri tanıması için bir bilgisayarlı görü modeli eğittiğini varsayalım. Model değerlendirme aşamasında, doğruluk, kesinlik, duyarlılık ve F1 skoru gibi metrikleri hesaplamak için etiketli bir veri seti kullanırsın. Örneğin, model belirli bir veri setinde kedileri ve köpekleri ayırt etmede %98 doğruluğa sahip olabilir.

Değerlendirmeden sonra, modeli daha çeşitli ve gerçekçi koşullarda kedileri ve köpekleri ne kadar iyi tanımladığını görmek için bir evcil hayvan mağazasından alınan görüntülerle test edersin. Hareket halindeyken, farklı ışık koşullarında veya oyuncak ya da mobilya gibi nesneler tarafından kısmen engellendiklerinde kedileri ve köpekleri doğru bir şekilde etiketleyip etiketleyemediğini kontrol edersin. Model testi, modelin kontrollü değerlendirme ortamının dışında beklendiği gibi davrandığını doğrular.

Model Testine Hazırlık

Bilgisayarlı görü modelleri, örüntüleri algılayarak, tahminler yaparak ve performanslarını değerlendirerek veri setlerinden öğrenirler. Bu veri setleri, gerçek dünya koşullarını simüle etmek için genellikle eğitim ve test setlerine ayrılır. Eğitim verisi modele öğretirken, test verisi modelin doğruluğunu doğrular.

Modelini test etmeden önce aklında bulundurman gereken iki nokta şunlardır:

  • Gerçekçi Temsil: Daha önce görülmemiş test verileri, modelin dağıtıldığında karşı karşıya kalacağı verilere benzer olmalıdır. Bu, modelin yeteneklerine dair gerçekçi bir anlayış kazanmaya yardımcı olur.
  • Yeterli Boyut: Test veri setinin boyutu, modelin ne kadar iyi performans gösterdiğine dair güvenilir içgörüler sağlamak için yeterince büyük olmalıdır.

Bilgisayarlı Görü Modelini Test Etme

İşte bilgisayarlı görü modelini test etmek ve performansını anlamak için atman gereken temel adımlar.

  • Tahminleri Çalıştır: Test veri seti üzerinde tahminler yapmak için modeli kullan.
  • Tahminleri Karşılaştır: Modelin tahminlerinin gerçek etiketlerle (ground truth) ne kadar iyi eşleştiğini kontrol et.
  • Performans Metriklerini Hesapla: Modelin güçlü ve zayıf yönlerini anlamak için doğruluk, kesinlik, duyarlılık ve F1 skoru gibi metrikleri hesapla. Test süreci, bu metriklerin gerçek dünya performansını nasıl yansıttığına odaklanır.
  • Sonuçları Görselleştir: Karmaşıklık matrisleri ve ROC eğrileri gibi görsel araçlar oluştur. Bunlar, modelin pratik uygulamalarda iyi performans göstermediği belirli alanları tespit etmene yardımcı olur.

Daha sonra, test sonuçları analiz edilebilir:

  • Yanlış Sınıflandırılmış Görüntüler: Modelin nerede hata yaptığını anlamak için yanlış sınıflandırılmış görüntüleri tanımla ve incele.
  • Hata Analizi: Hata türlerini (örneğin, yanlış pozitifler ile yanlış negatifler) ve bunların olası nedenlerini anlamak için kapsamlı bir hata analizi yap.
  • Önyargı ve Tarafsızlık: Modelin tahminlerindeki herhangi bir önyargıyı kontrol et. Özellikle ırk, cinsiyet veya yaş gibi hassas nitelikleri içeriyorsa, modelin verinin farklı alt kümeleri genelinde eşit derecede iyi performans gösterdiğinden emin ol.

YOLO26 Modelini Test Etme

YOLO26 modelini test etmek için doğrulama (validation) modunu kullanabilirsin. Bu, modelin güçlü yanlarını ve iyileştirilmesi gereken alanlarını anlamanın basit bir yoludur. Ayrıca, test veri setini YOLO26 için doğru şekilde biçimlendirmen gerekecektir. Doğrulama modunun nasıl kullanılacağına dair daha fazla ayrıntı için Model Doğrulama doküman sayfasına göz at.

Birden Fazla Test Görüntüsü Üzerinde Tahmin Yapmak için YOLO26 Kullanımı

Eğitilmiş YOLO26 modelini bir klasörde saklanan birden fazla görüntü üzerinde test etmek istersen, bunu tek seferde kolayca yapabilirsin. Genellikle model performansını bir doğrulama seti üzerinde değerlendirmek ve ayrıntılı metrikler sağlamak için kullanılan doğrulama modunu kullanmak yerine, sadece test setindeki tüm görüntüler üzerindeki tahminleri görmek isteyebilirsin. Bunun için tahmin modunu kullanabilirsin.

Doğrulama ve Tahmin Modları Arasındaki Fark

  • Doğrulama Modu: Tahminleri bilinen etiketlerle (ground truth) karşılaştırarak modelin performansını değerlendirmek için kullanılır. Doğruluk, kesinlik, duyarlılık ve F1 skoru gibi ayrıntılı metrikler sağlar.
  • Tahmin Modu: Tahminler oluşturmak için modeli yeni, görülmemiş veriler üzerinde çalıştırmak için kullanılır. Ayrıntılı performans metrikleri sağlamaz ancak modelin gerçek dünya görüntülerinde nasıl performans gösterdiğini görmeni sağlar.

Özel Eğitim Olmadan YOLO26 Tahminlerini Çalıştırma

Temel YOLO26 modelini, özel bir eğitim olmadan uygulaman için kullanılıp kullanılamayacağını anlamak amacıyla test etmek istersen, tahmin modunu kullanabilirsin. Model COCO gibi veri setleri üzerinde önceden eğitilmiş olsa da, kendi veri setinde tahminler çalıştırmak, modelin senin özel bağlamında ne kadar iyi performans gösterebileceğine dair hızlı bir fikir verebilir.

Overfitting and Underfitting in Machine Learning

Bir makine öğrenmesi modelini, özellikle bilgisayarlı görüde test ederken, aşırı öğrenme ve yetersiz öğrenmeye karşı dikkatli olmak önemlidir. Bu sorunlar, modelinin yeni verilerle ne kadar iyi çalıştığını önemli ölçüde etkileyebilir.

Aşırı Öğrenme (Overfitting)

Aşırı öğrenme, modelin eğitim verilerini, yeni verilere genellenemeyen gürültü ve ayrıntılar da dahil olmak üzere çok iyi öğrendiğinde gerçekleşir. Bilgisayarlı görüde bu, modelinin eğitim görüntülerinde harika iş çıkarsa da yenilerinde zorlanabileceği anlamına gelir.

Aşırı Öğrenme Belirtileri

  • Yüksek Eğitim Doğruluğu, Düşük Doğrulama Doğruluğu: Eğer modelin eğitim verilerinde çok iyi performans gösteriyor ancak doğrulama veya test verilerinde düşük performans sergiliyorsa, muhtemelen aşırı öğreniyordur.
  • Görsel İnceleme: Bazen modelin görüntülerdeki küçük değişikliklere veya ilgisiz ayrıntılara karşı çok hassas olması durumunda aşırı öğrenmeyi fark edebilirsin.

Yetersiz Öğrenme (Underfitting)

Yetersiz öğrenme, modelin verideki temel örüntüleri yakalayamadığı durumlarda ortaya çıkar. Bilgisayarlı görüde, yetersiz öğrenmiş bir model eğitim görüntülerindeki nesneleri bile doğru şekilde tanıyamayabilir.

Yetersiz Öğrenme Belirtileri

  • Düşük Eğitim Doğruluğu: Eğer modelin eğitim setinde yüksek doğruluk elde edemiyorsa, yetersiz öğreniyor olabilir.
  • Görsel Yanlış Sınıflandırma: Belirgin özellikleri veya nesneleri tutarlı bir şekilde tanıyamaması yetersiz öğrenmeye işaret eder.

Aşırı Öğrenme ve Yetersiz Öğrenmeyi Dengeleme

Önemli olan aşırı öğrenme ile yetersiz öğrenme arasında bir denge bulmaktır. İdeal olarak, bir model hem eğitim hem de doğrulama veri setlerinde iyi performans göstermelidir. Modelinin performansını metrikler ve görsel incelemeler yoluyla düzenli olarak izlemek ve doğru stratejileri uygulamak, en iyi sonuçları elde etmene yardımcı olabilir.

Overfitting vs underfitting visualization

Bilgisayarlı Görüde Veri Sızıntısı ve Bundan Nasıl Kaçınılır

Modelini test ederken aklında tutman gereken önemli bir konu da veri sızıntısıdır. Veri sızıntısı, eğitim veri setinin dışından gelen bilgilerin yanlışlıkla modeli eğitmek için kullanıldığında meydana gelir. Model eğitim sırasında çok doğru görünebilir, ancak veri sızıntısı olduğunda yeni, görülmemiş veriler üzerinde iyi performans göstermez.

Veri Sızıntısı Neden Olur

Veri sızıntısını tespit etmek zor olabilir ve genellikle eğitim verilerindeki gizli önyargılardan kaynaklanır. İşte bilgisayarlı görüde bunun gerçekleşmesinin bazı yaygın yolları:

  • Kamera Önyargısı: Farklı açılar, ışıklandırma, gölgeler ve kamera hareketleri istenmeyen örüntüler oluşturabilir.
  • Yerleştirme (Overlay) Önyargısı: Görüntülerdeki logolar, zaman damgaları veya diğer yerleştirmeler modeli yanıltabilir.
  • Yazı Tipi ve Nesne Önyargısı: Belirli sınıflarda sıkça görünen belirli yazı tipleri veya nesneler modelin öğrenmesini bozabilir.
  • Uzamsal Önyargı: Ön plan-arka plan, sınırlayıcı kutu dağılımları ve nesne konumlarındaki dengesizlikler eğitimi etkileyebilir.
  • Etiket ve Alan Önyargısı: Yanlış etiketler veya veri türlerindeki kaymalar sızıntıya yol açabilir.

Veri Sızıntısını Tespit Etme

Veri sızıntısını bulmak için şunları yapabilirsin:

  • Performansı Kontrol Et: Eğer modelin sonuçları şaşırtıcı derecede iyiyse, sızıntı olabilir.
  • Özellik Önemine Bak: Bir özellik diğerlerinden çok daha önemliyse, bu sızıntıya işaret edebilir.
  • Görsel İnceleme: Modelin kararlarının sezgisel olarak mantıklı olduğunu tekrar kontrol et.
  • Veri Ayrımını Doğrula: İşleme başlamadan önce verilerin doğru şekilde bölündüğünden emin ol.

Veri Sızıntısından Kaçınma

Veri sızıntısını önlemek için farklı kameralardan ve ortamlardan alınan görüntü veya videolarla çeşitli bir veri seti kullan. Verilerini dikkatlice gözden geçir ve günün belirli bir saatinde çekilen tüm pozitif örnekler gibi gizli önyargıların olmadığından emin ol. Veri sızıntısını önlemek, bilgisayarlı görü modellerini gerçek dünya durumlarında daha güvenilir ve etkili hale getirmeye yardımcı olacaktır.

Model Testinden Sonra Ne Yapılır

Modelini test ettikten sonra sonraki adımlar sonuçlara bağlıdır. Eğer modelin iyi performans gösterirse, onu gerçek dünya ortamına dağıtabilirsin. Eğer sonuçlar tatmin edici değilse, iyileştirmeler yapman gerekecektir. Bu; hataları analiz etmeyi, daha fazla veri toplamayı, veri kalitesini artırmayı, hiperparametreleri ayarlamayı ve modeli yeniden eğitmeyi içerebilir.

Yapay Zeka Sohbetine Katıl

Bilgisayarlı görü meraklılarından oluşan bir topluluğun parçası olmak, sorunları çözmeye ve daha verimli öğrenmeye yardımcı olabilir. Bağlantı kurmanın, yardım istemenin ve düşüncelerini paylaşmanın bazı yolları şunlardır.

Topluluk Kaynakları

  • GitHub Sorunları: YOLO26 GitHub deposunu keşfet ve soru sormak, hataları bildirmek ve yeni özellikler önermek için Issues sekmesini kullan. Topluluk ve geliştiriciler oldukça aktiftir ve yardıma hazırdırlar.
  • Ultralytics Discord Sunucusu: Diğer kullanıcılar ve geliştiricilerle sohbet etmek, destek almak ve deneyimlerini paylaşmak için Ultralytics Discord sunucusuna katıl.

Resmi Dokümantasyon

  • Ultralytics YOLO26 Dokümantasyonu: Çeşitli bilgisayarlı görü projeleriyle ilgili ayrıntılı rehberler ve yararlı ipuçları için resmi YOLO26 dokümantasyonuna göz at.

Bu kaynaklar, zorlukların üstesinden gelmene ve bilgisayarlı görü topluluğundaki en son trendler ve uygulamalar konusunda güncel kalmana yardımcı olacaktır.

Özetle

Güvenilir bilgisayarlı görü modelleri oluşturmak titiz bir model testine dayanır. Modeli daha önce görülmemiş verilerle test ederek, onu analiz edebilir ve aşırı öğrenme ve veri sızıntısı gibi zayıf noktaları tespit edebiliriz. Bu sorunları dağıtımdan önce ele almak, modelin gerçek dünya uygulamalarında iyi performans göstermesine yardımcı olur. Model testinin, modelin uzun vadeli başarısını ve etkinliğini garanti etmede model değerlendirmesi kadar önemli olduğunu unutmamak önemlidir.

SSS

Bilgisayarlı görüde model değerlendirmesi ile model testi arasındaki temel farklar nelerdir?

Model değerlendirmesi ve model testi, bir bilgisayarlı görü projesindeki ayrı adımlardır. Model değerlendirmesi; doğruluk, kesinlik, duyarlılık ve F1 skoru gibi metrikleri hesaplamak için etiketli bir veri seti kullanmayı içerir ve modelin kontrollü bir veri seti ile performansına dair içgörüler sağlar. Model testi ise, yeni ve görülmemiş verilere uygulayarak modelin gerçek dünya senaryolarındaki performansını değerlendirir ve modelin öğrendiği davranışın değerlendirme ortamının dışındaki beklentilerle uyumlu olduğundan emin olur. Ayrıntılı bir rehber için bilgisayarlı görü projesindeki adımlara başvur.

Ultralytics YOLO26 modelimi birden fazla görüntü üzerinde nasıl test edebilirim?

Ultralytics YOLO26 modelini birden fazla görüntü üzerinde test etmek için tahmin modunu kullanabilirsin. Bu mod, ayrıntılı metrikler sağlamadan tahminler oluşturmak için modeli yeni, görülmemiş veriler üzerinde çalıştırmana olanak tanır. Bu, bir klasörde depolanan daha büyük görüntü setleri üzerinde gerçek dünya performans testi için idealdir. Performans metriklerini değerlendirmek için bunun yerine doğrulama modunu kullan.

Bilgisayarlı görü modelim aşırı öğrenme veya yetersiz öğrenme belirtileri gösteriyorsa ne yapmalıyım?

Aşırı öğrenmeyi ele almak için:

  • Dropout gibi düzenlileştirme teknikleri kullan.
  • Eğitim veri setinin boyutunu artır.
  • Model mimarisini basitleştir.

Yetersiz öğrenmeyi ele almak için:

  • Daha karmaşık bir model kullan.
  • Daha ilgili özellikler sağla.
  • Eğitim yinelemelerini veya epoch sayısını artır.

Yanlış sınıflandırılmış görüntüleri gözden geçir, kapsamlı hata analizi yap ve dengeyi korumak için performans metriklerini düzenli olarak takip et. Bu kavramlar hakkında daha fazla bilgi için Aşırı Öğrenme ve Yetersiz Öğrenme bölümümüzü keşfet.

Bilgisayarlı görüde veri sızıntısını nasıl tespit edebilir ve önleyebilirim?

Veri sızıntısını tespit etmek için:

  • Test performansının alışılmadık derecede yüksek olmadığından emin ol.
  • Beklenmedik içgörüler için özellik önemini kontrol et.
  • Model kararlarını sezgisel olarak gözden geçir.
  • İşlemeden önce verilerin doğru ayrıldığından emin ol.

Veri sızıntısını önlemek için:

  • Çeşitli ortamlara sahip farklı veri setleri kullan.
  • Verileri gizli önyargılar açısından dikkatlice incele.
  • Eğitim ve test setleri arasında çakışan bilgi olmadığından emin ol.

Veri sızıntısını önlemeye yönelik ayrıntılı stratejiler için Bilgisayarlı Görüde Veri Sızıntısı bölümümüze başvur.

Bilgisayarlı görü modelimi test ettikten sonra hangi adımları atmalıyım?

Test sonrasında, model performansı proje hedeflerini karşılıyorsa dağıtıma devam et. Sonuçlar tatmin edici değilse şunları değerlendir:

  • Hata analizi.
  • Daha çeşitli ve yüksek kaliteli veriler toplamak.
  • Hiperparametre ayarlama.
  • Modeli yeniden eğitmek.

Gerçek dünya uygulamalarında modelin etkinliğini iyileştirmek ve geliştirmek için Model Testi ve Model Değerlendirmesi bölümünden içgörüler kazan.

Özel bir eğitim yapmadan YOLO26 tahminlerini nasıl çalıştırırım?

Uygulama ihtiyaçlarına uygun olup olmadığını görmek için veri setinde önceden eğitilmiş YOLO26 modelini kullanarak tahminler çalıştırabilirsin. Özel eğitime girmeden performans sonuçlarına hızlıca göz atmak için tahmin modunu kullan.

Yorumlar