Makine öğreniminde aşırı öğrenmeyi (overfitting) nasıl belirleyeceğinizi, önleyeceğinizi ve ele alacağınızı öğrenin. Modelin genelleştirme yeteneğini ve gerçek dünya performansını artırma tekniklerini keşfedin.
Aşırı uyum şu durumlarda gerçekleşir makine öğrenimi (ML), bir model aşağıdaki özellikleri öğrendiğinde eğitim verilerinin belirli ayrıntıları ve gürültüsü yeni veriler üzerindeki performansını olumsuz etkilediği ölçüde. Esasen, model eğitim verilerini ezberler için gerekli olan temel kalıpları öğrenmek yerine örnekler genelleme. Bu, yüksek performanslı bir sistemle sonuçlanır Geliştirme sırasında doğruluk, ancak güvenilir gerçek dünya senaryolarında kullanıldığında tahminler.
Denetimli öğrenme bağlamında amaç olarak bilinen, görünmeyen girdiler üzerinde iyi performans gösteren bir model oluşturmaktır. test verileri. Aşırı uyum tipik olarak bir model Mevcut veri miktarına göre çok karmaşık olan bu durum genellikle yüksek varyanslı olarak tanımlanır. Böyle bir Model, veri setindeki rastgele dalgalanmaları veya "gürültüyü" önemli özelliklermiş gibi algılar. Bu derin öğrenmede (DL) temel bir zorluktur, Geliştiricilerin karmaşıklık ve esneklik arasında denge kurmasını gerektiren ve genellikle önyargı-varyans değiş tokuşu.
Aşırı uyum, uygulamaya bağlı olarak ciddi sonuçlar doğurabilir:
Geliştiriciler genellikle aşırı uyumu izleyerek detect eder eğitim sırasında kayıp fonksiyonları. Açık bir gösterge eğitim kaybı azalmaya devam ederken doğrulama veri kaybı artmaya başlar. Mücadele etmek için Bunun için çeşitli teknikler kullanılmaktadır:
Bu kavramı aşağıdakilerden ayırmak önemlidir yetersiz uyum. Aşırı uyum bir modeli içerirken çok karmaşık olduğunda ve eğitim verilerine uymak için "çok fazla çaba gösterdiğinde" (yüksek varyans), yetersiz uyum model, verilerin altında yatan eğilimi yakalamak için çok basittir (yüksek yanlılık). Her ikisi de zayıf tahminle sonuçlanır performans, ancak zıt nedenlerden dolayı. Optimum modele ulaşmak için bu iki uç arasında gezinmek gerekir.
Gibi modern kütüphaneler ultralytics önleme stratejilerinin uygulanmasını basitleştirir. Mesela,
kullanıcılar kolayca uygulayabilir erken durdurma ve ne zaman bırakma
eğitim a YOLO11 Model.
from ultralytics import YOLO
# Load the YOLO11 model (recommended for latest SOTA performance)
model = YOLO("yolo11n.pt")
# Train with 'patience' for early stopping and 'dropout' for regularization
# This helps the model generalize better to new images
results = model.train(
data="coco8.yaml",
epochs=100,
patience=10, # Stop if validation loss doesn't improve for 10 epochs
dropout=0.1, # Randomly drop 10% of units to prevent co-adaptation
)
