Recall
Makine öğreniminde geri çağırmanın (recall) önemini keşfet. Yüksek tespit oranları sağlamak için Ultralytics YOLO26 modellerinde hassasiyeti nasıl ölçeceğini ve iyileştireceğini öğren.
Recall, sensitivity veya true positive rate olarak da bilinir, bir modelin bir veri setindeki tüm ilgili örnekleri tanımlama yeteneğini ölçen, machine learning alanında temel bir performans metriğidir. object detection veya sınıflandırma bağlamında, özellikle şu soruyu yanıtlar: "Gerçek pozitif vakaların tümü içinden model bunları ne kadar doğru buldu?" Yüksek recall elde etmek, pozitif bir örneği kaçırmanın —ki buna genellikle false negative denir— önemli sonuçlar doğurduğu senaryolarda kritik önem taşır. Dengesiz verilerle çalışırken yanıltıcı olabilen accuracy değerinin aksine recall, modelin hedef sınıfı "yakalamadaki" etkinliğine odaklanmış bir bakış açısı sunar.
Yüksek Duyarlılığın Önemi#
Pek çok artificial intelligence uygulamasında, bir nesneyi tespit edememenin maliyeti, yanlış alarm maliyetinden çok daha yüksektir. Recall için optimize edilmiş bir model, olası tehditleri, anomalileri veya kritik durumları yakalamak için sistemin yeterince geniş bir ağ kurmasını sağlayarak false negative'leri en aza indirir. Bu durum genellikle bir ödünleşim (trade-off) içerir; çünkü recall değerini artırmak bazen daha düşük bir precision puanına yol açabilir, yani model ilgili olmayan daha fazla öğeyi pozitif olarak işaretleyebilir. Bu dengeyi anlamak, sağlam machine learning çözümleri geliştirmenin anahtarıdır.
Gerçek Dünya Uygulamaları#
Recall, güvenliğin kritik olduğu pek çok AI solutions arkasındaki itici metriktir. Sensitivity'nin öncelik kazandığı iki belirgin örnek şunlardır:
- Medical Diagnostics: Erken hastalık belirtileri için X-ışınlarını taramak gibi medical image analysis süreçlerinde yüksek recall vazgeçilmezdir. Tümörleri tespit etmek için bir AI in healthcare sistemi kullanılıyorsa, sistemin huylu (benign) çıkan şüpheli bir gölgeyi yanlışlıkla işaretlemesi (false positive), malign bir tümörü tamamen kaçırmasından çok daha iyidir. Doktorlar, hiçbir potansiyel sağlık riskinin gözden kaçırılmamasını sağlayan bir güvenlik ağı olarak hareket etmeleri için bu araçlara güvenirler.
- Security and Surveillance: Bir security alarm system için birincil amaç, her sızma girişimini tespit etmektir. Yüksek recall için optimize edilmiş bir sistem, bir kişi kısıtlı bir bölgeye girdiğinde alarmın tetiklenmesini sağlar. Bu durum yaban hayatının neden olduğu ara sıra yanlış alarmlara yol açabilse de, sistemin gerçek bir davetsiz misafiri tespit edememesinden çok daha iyidir. Bu senaryolardaki Object detection modelleri, potansiyel tehditlere karşı maksimum sensitivity sağlayacak şekilde ayarlanır.
Duyarlılık (Recall) ve Kesinlik (Precision)#
Recall'u karşılığı olan precision değerinden ayırt etmek esastır. Recall bulunan ilgili vakaların miktarını (eksiksizlik) ölçerken, precision pozitif tahminlerin kalitesini (kesinlik) ölçer.
- Duyarlılık (Recall): Kaçırılan tespitleri önlemeye odaklanır. "Tüm elmaları bulduk mu?"
- Kesinlik (Precision): Yanlış alarmları en aza indirmeye odaklanır. "Elma dediğimiz her şey gerçekten elma mı?"
Bu iki metrik genellikle bir Precision-Recall curve aracılığıyla görselleştirilen ters bir ilişkiyi paylaşır. Aralarındaki genel dengeyi değerlendirmek için geliştiriciler genellikle her ikisinin de harmonik ortalaması olan F1-score değerine bakar. imbalanced datasets söz konusu olduğunda, recall'u confusion matrix ile birlikte incelemek, tek başına accuracy değerinden çok daha net bir performans resmi sunar.
Ultralytics YOLO ile Duyarlılığı Ölçme#
Son teknoloji YOLO26 gibi modelleri eğitirken, validation aşamasında recall otomatik olarak hesaplanır. Çerçeve, her sınıf için recall değerini ve mean Average Precision (mAP) hesaplayarak geliştiricilerin modelin nesneleri ne kadar iyi bulduğunu ölçmesine yardımcı olur.
Python kullanarak eğitilmiş bir modeli kolayca doğrulayabilir ve duyarlılık metriklerini görüntüleyebilirsiniz. Bu kod parçası, bir modeli nasıl yükleyeceğinizi ve standart bir veri kümesi üzerindeki performansını nasıl kontrol edeceğinizi gösterir:
from ultralytics import YOLO
# Load a pretrained YOLO26 model
model = YOLO("yolo26n.pt")
# Validate the model on the COCO8 dataset
# The results object contains metrics like Precision, Recall, and mAP
metrics = model.val(data="coco8.yaml")
# Access and print the mean recall score for box detection
print(f"Mean Recall: {metrics.results_dict['metrics/recall(B)']:.4f}")Bu kod, doğrulama çalıştırmak için Ultralytics API kullanır. Eğer recall projeniz için gerekenden düşükse, daha çeşitli eğitim örnekleri oluşturmak için data augmentation gibi teknikleri veya modelin sensitivity değerini ayarlamak için hyperparameter tuning yöntemini düşünebilirsiniz. Ultralytics Platform kullanmak ayrıca veri setlerini yönetme ve bu metrikleri birden fazla eğitim turunda takip etme sürecini kolaylaştırabilir.
Model Duyarlılığını Artırma#
Bir modelin recall değerini artırmak için veri bilimciler genellikle inference sırasında kullanılan confidence threshold değerini ayarlar. Eşiği düşürmek modeli daha "iyimser" hale getirerek daha fazla tahmini pozitif olarak kabul etmesini sağlar; bu da recall'u artırır ancak precision değerini düşürebilir. Ek olarak, daha fazla çeşitli training data toplamak, modelin hard negatives ve belirsiz örnekleri tanımayı öğrenmesine yardımcı olur. Karmaşık görevler için Transformer blokları gibi gelişmiş mimarileri kullanmak veya ensemble methods keşfetmek de sistemin daha basit modellerin gözden kaçırabileceği ince özellikleri tespit etme yeteneğini geliştirebilir.






