Sözlük

Kontrastlı Öğrenme

Minimum etiketli veri ile sağlam veri temsilleri için kendi kendini denetleyen bir teknik olan kontrastlı öğrenmenin gücünü keşfedin.

YOLO modellerini Ultralytics HUB ile basitçe
eğitin

Daha fazla bilgi edinin

Kontrastlı öğrenme, makine öğrenimi (ML) içinde güçlü bir tekniktir ve özellikle kendi kendine denetimli öğrenmede (SSL) öne çıkmaktadır. Titizlikle etiketlenmiş verilere büyük ölçüde güvenmek yerine, benzer ve benzer olmayan veri noktaları arasında ayrım yapmak için bir model öğreterek anlamlı temsiller öğrenir. Temel fikir basittir: "benzer" örneklerin temsillerini bir gömme uzayında birbirine yaklaştırırken, "benzemeyen" örneklerin temsillerini birbirinden uzaklaştırmak. Bu yaklaşım, modellerin büyük miktarda etiketlenmemiş veriden zengin özellikler öğrenmesini sağlar ve bu özellikler daha sonra ince ayar yoluyla çeşitli sonraki görevler için uyarlanabilir.

Kontrastlı Öğrenme Nasıl Çalışır?

Süreç tipik olarak şu adımları içerir:

  1. Veri Artırma: Etiketsiz bir veri noktasıyla başlayın (örneğin, bir görüntü). Bu veri noktasının iki veya daha fazla artırılmış versiyonunu oluşturun. Bu artırılmış versiyonlar "pozitif bir çift" oluşturur çünkü aynı kaynaktan gelirler ve benzer olarak kabul edilmelidirler. Yaygın veri büyütme teknikleri arasında rastgele kırpma, renk titremesi, döndürme veya gürültü ekleme yer alır.
  2. Negatif Örnekleme: Veri kümesinden (veya mevcut partiden) orijinal veri noktasından farklı olan diğer veri noktalarını seçin. Bunlar, orijinal veri noktasının artırımlarıyla "negatif çiftler" oluşturur.
  3. Kodlama: Hem pozitif hem de negatif örnekleri bir kodlayıcı sinir ağından (NN) geçirin, genellikle görüntüler için bir Evrişimli Sinir Ağı (CNN) veya metin veya görüntüler için bir Dönüştürücü(Vision Transform er(ViT)). Bu ağ, giriş verilerini gömme olarak bilinen daha düşük boyutlu temsillere dönüştürür.
  4. Kayıp Hesaplama: InfoNCE (Noise Contrastive Estimation) veya Üçlü Kayıp gibi bir kontrast kayıp fonksiyonu uygulayın. Bu işlev, katıştırmalar arasındaki mesafelere dayalı bir puan hesaplar. Pozitif çiftlerin katıştırmalarının yakın olmasını (düşük mesafe/yüksek benzerlik) ve negatif çiftlerin katıştırmalarının birbirinden uzak olmasını (yüksek mesafe/düşük benzerlik) teşvik eder.
  5. Optimizasyon: Kodlayıcının ağırlıklarını hesaplanan kayba göre güncellemek için Stokastik Gradyan İnişi (SGD) veya Adam gibi optimizasyon algoritmalarını kullanın ve geriye yayılma yoluyla öğrenilen temsillerin kalitesini yinelemeli olarak iyileştirin.

Kontrastlı Öğrenme ve İlgili Terimler

Kontrastlı öğrenme diğer makine öğrenimi paradigmalarından farklıdır:

  • Denetimli Öğrenme: Her veri noktası için açık etiketler gerektirir (örneğin, 'kedi', 'köpek'). Kontrastlı öğrenme öncelikle etiketsiz verileri kullanır ve pozitif/negatif eşleştirme yoluyla kendi denetleyici sinyalini oluşturur.
  • Denetimsiz Öğrenme (Kümeleme): K-Means gibi yöntemler verileri doğal yapılarına göre gruplandırır. Kontrastlı öğrenme, benzerliğin pozitif/negatif çiftler tarafından tanımlandığı bir temsil alanı oluşturmak için bir modeli açıkça eğitir ve ayırt edici özellikleri öğrenmeye odaklanır.
  • Üretken Modeller: GAN 'lar veya Difüzyon Modelleri gibi modeller eğitim verilerine benzeyen yeni veriler üretmeyi öğrenir. Kontrastlı öğrenme, veri üretmek yerine ayırt edici temsilleri öğrenmeye odaklanır.

Gerçek Dünya Uygulamaları

Kontrastlı öğrenme, diğer görevlere iyi bir şekilde aktarılan temsilleri öğrenmede başarılıdır:

  • Bilgisayarla Görme Ön Eğitimi: SimCLR ve MoCo gibi modeller büyük etiketsiz görüntü veri kümeleri ( ImageNet gibi) üzerinde önceden eğitilmiştir. Öğrenilen özellikler, görüntü sınıflandırma, nesne algılama gibi görevler için modele ince ayar yapıldığında performansı önemli ölçüde artırır. Ultralytics YOLO11veya semantik segmentasyon. Örneğin, genel görüntüler üzerinde kontrastlı öğrenme ile önceden eğitilmiş bir model, daha az etiketli verilerle tıbbi görüntü analizi veya uydu görüntüsü analizi gibi özel görevler için etkili bir şekilde ince ayarlanabilir.
  • Doğal Dil İşleme (NLP): Yüksek kaliteli cümle veya belge katıştırmalarını öğrenmek için kullanılır. Örneğin, modeller aynı kavramı tanımlayan farklı şekilde ifade edilmiş iki cümlenin (pozitif çift) benzer katıştırmalara sahip olması gerektiğini, ilgisiz anlamlara sahip cümlelerin (negatif çift) ise farklı katıştırmalara sahip olması gerektiğini anlayacak şekilde eğitilebilir. Bu, anlamsal arama, soru yanıtlama ve metin kümeleme için kullanışlıdır. CLIP modeli, metin ve görüntü temsilleri arasında köprü kurmak için özellikle zıt öğrenmeyi kullanır.
  • Öneri Sistemleri: Etkileşim örüntülerine dayalı olarak kullanıcılar ve öğeler için katıştırmaları öğrenme.
  • Anomali Tespiti: Normal verilerin sıkıca kümelendiği temsilleri öğrenerek olağandışı veri noktalarını tanımlamak, aykırı değerlerin tespit edilmesini kolaylaştırır.

Avantajlar ve Zorluklar

Avantajlar:

  • Azaltılmış Etiket Bağımlılığı: Büyük miktarda etiketlenmemiş veriden yararlanarak pahalı ve zaman alıcı veri etiketleme ihtiyacını azaltır.
  • Sağlam Temsiller: Genellikle, tamamen denetimli yöntemlere kıyasla rahatsız edici değişikliklere karşı daha değişmez özellikler öğrenir.
  • Etkili Ön Eğitim: Belirli aşağı akış görevlerinde ince ayar yapmak için mükemmel başlangıç noktaları sağlar ve özellikle sınırlı etiketli verilerle(birkaç atışla öğrenme) genellikle daha iyi performans sağlar.

Zorluklar:

  • Negatif Numune Seçimi: Performans, negatif numunelerin sayısına ve kalitesine duyarlı olabilir. Bilgilendirici negatif numunelerin seçilmesi çok önemlidir ancak zordur.
  • Büyütme Stratejisi: Veri artırma tekniklerinin seçimi, modelin hangi değişmezleri öğreneceğini büyük ölçüde etkiler.
  • Hesaplama Maliyeti: Etkili eğitim için genellikle büyük parti boyutları ve önemli hesaplama kaynakları(GPU'lar) gerektirir, ancak bunu azaltmak için araştırmalar devam etmektedir. Ultralytics HUB gibi platformlar bu modellerin yönetilmesini ve eğitilmesini kolaylaştırabilir. Gibi çerçeveler PyTorch(resmi site) ve TensorFlow(resmi site) kontrastlı öğrenme yöntemlerini uygulamak için araçlar sağlar.
Tümünü okuyun