İkili sınıflandırıcıları değerlendirmek için Alıcı Çalışma Karakteristiği (ROC) eğrisini kullanmayı öğrenin. Ultralytics ile TPR ve FPR arasındaki dengeleri keşfedin.
Alıcı Çalışma Karakteristiği (ROC) eğrisi, ikili sınıflandırma modellerinin performansını değerlendirmek için kullanılan temel bir grafiksel araçtır. Makine öğrenimi (ML) alanında, bir modelin duyarlılığı ile tüm olası karar eşikleri arasındaki özgüllüğü arasındaki dengeyi görselleştirir. Veri kümesi dengesiz olduğunda yanıltıcı olabilen doğruluk gibi tek değerli metriklerin aksine , ROC eğrisi, pozitif örnekleri tanımlama kriterleri daha katı veya daha esnek hale geldikçe sınıflandırıcının nasıl davrandığına dair kapsamlı bir görünüm sağlar. Bu görselleştirme, belirli kullanım durumları için en uygun çalışma noktasını belirlemek üzere denetimli öğrenme tekniklerini kullanan mühendisler için çok önemlidir . .
ROC eğrisini anlamak için, birbirine karşı çizilen iki parametreye bakmak gerekir: Gerçek Pozitif Oran (TPR) ve Yanlış Pozitif Oran (FPR).
Eğri dinamik bir ilişkiyi göstermektedir: daha fazla pozitif vakayı yakalamak için güven eşiğini düşürdükçe (TPR'yi artırdıkça), negatif vakaları yanlış bir şekilde işaretleme riskini de kaçınılmaz olarak artırırsınız (FPR'yi artırırsınız). Mükemmel bir sınıflandırıcı, grafiğin sol üst köşesine ulaşır ve %100 duyarlılık ve %0 yanlış alarm gösterir. Rastgele tahminlerde bulunan bir model sol alt köşeden sağ üst köşeye doğru bir diyagonal çizgi olarak görünür. Genel performans genellikle Eğri Altındaki Alan (AUC) ile özetlenir ve burada 1,0 değeri mükemmelliği temsil eder.
ROC eğrisinde eşiğin nereye ayarlanacağına ilişkin karar, tamamen belirli bir endüstri uygulamasındaki hataların maliyetine bağlıdır.
ROC eğrisini çizmek için, sadece son sınıf etiketleri yerine ham tahmin olasılıklarına ihtiyacınız vardır. Aşağıdaki örnek, sınıflandırma puanları oluşturmak için son teknoloji YOLO26 modelini kullanır .
from ultralytics import YOLO
# Load a pretrained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Run inference to get probability distribution
results = model("bus.jpg")
# Access the probability score for the predicted class
# These continuous scores are required to calculate TPR/FPR at different thresholds
print(f"Top Class Index: {results[0].probs.top1}")
print(f"Confidence Score: {results[0].probs.top1conf:.4f}")
Bu olasılıklar bir doğrulama seti için toplandıktan sonra, geliştiriciler Scikit-learn gibi kütüphaneleri kullanarak eğri noktalarını hesaplayabilirler. Veri setlerini yönetmek ve bu metrikleri zaman içinde takip etmek için Ultralytics , model değerlendirme ve dağıtımı için entegre araçlar sunar.
ROC eğrisini diğer değerlendirme araçlarından ayırmak önemlidir: