Geri arama
Makine öğreniminde geri aramaların temel rolünü keşfedin - gelişmiş doğruluk, esneklik ve verimlilik için model eğitimini izleyen, kontrol eden ve otomatikleştiren araçlar.
Makine öğreniminde geri arama, bir modelin eğitim süreci sırasında belirli noktalarda yürütülen otomatik bir komut dosyası veya işlevdir. Bunu, eğitim çerçevesinin bir epokun, bir eğitim partisinin veya tüm eğitim oturumunun başlangıcı veya sonu gibi önceden tanımlanmış aşamalarda izlediği bir dizi talimat olarak düşünün. Geri aramalar, geliştiricilerin modelin veya eğitim döngüsünün temel kodunu değiştirmesine gerek kalmadan eğitimin çeşitli yönlerini izlemesi, kontrol etmesi ve otomatikleştirmesi için güçlü bir mekanizma sağlar. Verimli ve sağlam makine öğrenimi (ML) boru hatları oluşturmak için temel araçlardır.
Geri Çağırmalar Nasıl Çalışır?
Birini eğittiğinizde sinir ağı (NN)üzerinde yinelemeyi içeren bir süreçtir. veri kümesi birden fazla epok için. Bir eğitim döngüsü bu süreci yönetir; bu süreç modele veri beslemeyi, modelin kayıp fonksiyonuve güncellenmesi model ağırlıkları aracılığıyla geri yayılım. Geri aramalar belirli olaylarda bu döngüye bağlanır. Örneğin, bir on_epoch_end
geri çağırma, kodunu tam olarak her dönem tamamlandıktan sonra çalıştıracaktır. Bu, dinamik müdahalelere izin verir, örneğin öğrenme oranıBir modelin en iyi versiyonunu kaydetmek veya performans düşerse eğitimi erken durdurmak. Bu otomasyon, iyi yapılandırılmış bir modelin önemli bir parçasıdır. makine öğrenimi iş akışı.
Uygulamadan Örnekler
Geri aramalar, eğitim sonuçlarını iyileştirmek için çeşitli bilgisayarla görme (CV) görevlerinde yaygın olarak kullanılmaktadır.
- En İyi Nesne Algılama Modelini Kaydetme: Nesne algılama için bir Ultralytics YOLO modelini eğitirken, bir ModelCheckpoint geri çağrısı kullanabilirsiniz. Bu geri arama, doğrulama veri kümesindeki Ortalama Ortalama Hassasiyeti (mAP) izler. Modelin ağırlıklarını yalnızca mAP puanı önceden kaydedilmiş en iyi puana kıyasla iyileştiğinde bir dosyaya kaydeder ve en doğru modeli korumanızı sağlar. Farklı modellerin nasıl performans gösterdiğini model karşılaştırma sayfamızda görebilirsiniz.
- Görüntü Sınıflandırmada Aşırı Uyumu Önleme: ImageNet gibi karmaşık bir veri kümesi üzerinde görüntü sınıflandırması için bir model eğittiğinizi düşünün. Doğrulama kaybını izlemek için bir EarlyStopping geri çağrısı yapılandırılabilir. Doğrulama kaybı belirli sayıda epok boyunca azalmazsa, geri arama otomatik olarak eğitimi durdurur. Bu, modelin eğitim verilerine aşırı uyum sağlamasını önler ve önemli ölçüde eğitim süresi ve hesaplama maliyeti tasarrufu sağlar. Görüntü sınıflandırma görevleri ve bunların nasıl uygulanacağı hakkında daha fazla bilgi edinebilirsiniz.
Geri Çağırmalar ve Diğer Kavramlar
Geri aramaları ilgili terimlerden ayırmak faydalı olacaktır:
- Fonksiyonlar: Geri arama bir tür fonksiyon olsa da, tanımlayıcı özelliği başka bir fonksiyona (eğitim döngüsü) argüman olarak aktarılması ve belirli bir zamanda bu fonksiyon tarafından dahili olarak çağrılmasıdır. Standart bir fonksiyon tipik olarak doğrudan programcı tarafından çağrılır.
- Kancalar: Yazılım mühendisliğinde kanca, kodda özel mantığın eklenmesine olanak tanıyan bir yer için kullanılan daha genel bir terimdir. Makine öğrenimi çerçevelerindeki geri aramalar, bir modelin eğitim yaşam döngüsündeki olaylara göre uyarlanmış, kanca kavramının özel bir uygulamasıdır.
- Hiperparametre Ayarlama: Bu, bir model için en uygun hiperparametreleri (öğrenme oranı veya yığın boyutu gibi) bulma sürecidir. Geri aramalar, örneğin bir öğrenme oranı zamanlayıcısı uygulayarak hiperparametre ayarlamasına yardımcı olabilir, ancak ayarlama işleminin kendisi değildir. Ayarlama süreci daha üst düzey bir arama veya optimizasyon prosedürüdür.
Geri Çağırma Kullanmanın Faydaları
Geri aramaları eğitim sürecine entegre etmek birkaç önemli avantaj sunar:
- Otomasyon: Geri aramalar, modelleri kaydetme, TensorBoard gibi araçlarla ölçümleri kaydetme ve parametreleri ayarlama gibi tekrarlayan görevleri otomatikleştirerek uzun eğitim çalışmaları sırasında manuel müdahale ihtiyacını azaltır.
- Esneklik ve Özelleştirme: Geliştiricilerin çekirdek çerçeve kodunu değiştirmeden eğitim döngüsüne özel mantık eklemesine olanak tanıyarak son derece özel eğitim davranışları sağlar. Bu özellikle karmaşık deneyler veya gelişmiş eğitim tekniklerinin uygulanması için kullanışlıdır.
- Verimlilik: Erken Durdurma ve dinamik öğrenme oranı ayarı gibi geri aramalar, hesaplama kaynaklarından tasarruf ederek ve potansiyel olarak model yakınsamasını hızlandırarak eğitimi daha verimli hale getirebilir.
- İçgörü ve İzleme: Model değerlendirmesi için çok önemli olan metriklerin zaman içinde ayrıntılı olarak kaydedilmesini ve görselleştirilmesini sağlayarak eğitim dinamikleri hakkında derinlemesine bilgi sağlarlar.
- Tekrarlanabilirlik: Geri aramalar, eğitim sırasında gerçekleştirilen eylemleri standartlaştırarak (örn. kaydetme kriterleri, durdurma koşulları) makine öğrenimi deneylerinin daha tekrarlanabilir olmasına katkıda bulunur.
Keras ve PyTorch Lightning gibi çerçeveler, özel geri aramalar oluşturmak için kapsamlı yerleşik geri arama koleksiyonları ve basit arayüzler sunar. Ultralytics ayrıca, Ultralytics YOLO11 ve Ultralytics HUB platformu gibi araçların sağlamlığına ve kullanıcı dostu olmasına katkıda bulunan eğitim boru hatlarında dahili olarak geri aramalardan yararlanır. Ultralytics belgelerine başvurmak, YOLO model eğitimi ile ilgili daha spesifik örnekler sağlayabilir.