Ultralytics YOLO27: Bekleme listesine katıl.
YOLO'yu lisansla
Ultralytics Sözlüğüne dön

Contrastive Learning

Karşıtsal öğrenme, eşleşen çiftleri birbirine yaklaştırıp diğer örnekleri birbirinden uzaklaştırarak gömme vektörlerini eğitir. InfoNCE, SimCLR, MoCo, CLIP ve kodu ele alır.

Karşıt öğrenme, eşleşen örnek çiftlerinin (pozitifler) birbirine yakın, eşleşmeyen örneklerin (negatifler) ise birbirinden uzak olduğu gömmeler üretmesi için bir modeli eğitir. Çiftler, aynı fotoğrafın artırılmış iki kırpımı gibi verinin kendisinden veya bir görüntüyle açıklaması gibi doğal olarak eşleşmiş verilerden gelebilir; bu nedenle karşıt öğrenme sınıf etiketi gerektirmez. Görüntüler için öz denetimli öğrenme yöntemlerinin temel ailelerinden biridir ve maskeli yeniden yapılandırma ile öz damıtmanın yanında yer alır. Bu şekilde eğitilen kodlayıcılar, algılama, sınıflandırma ve bilgi getirme görevlerine aktarılabilen özellikler üretir. Aynı amaç, CLIP gibi görsel-dil modellerini de eğitir; bu modeller daha sonra yalnızca metinle, sıfır örnekli öğrenme yoluyla görüntüleri sınıflandırabilir.

Karşıtsal Öğrenme Nasıl Çalışır?#

Karşıtsal bir yöntemin üç bileşeni vardır: pozitif çiftleri oluşturma yöntemi, her örneği normalize edilmiş bir gömüye eşleyen kodlayıcı ve benzerlikleri karşılaştıran bir kayıp. SimCLR yönteminde Ting Chen ve Google'daki çalışma arkadaşları, rastgele kırpma, renk bozulması ve bulanıklaştırmayla her görüntünün iki görünümünü oluşturdu; her iki görünümü de küçük bir izdüşüm başlığının ardından ortak bir ResNet ile kodladı ve yığındaki diğer görüntüleri negatif olarak kabul etti:

Veri artırma, modelin neyi göz ardı etmeyi öğrendiğini belirler. Aynı görüntünün iki kırpımı yakın noktalara eşlenmek zorunda olduğundan kodlayıcı, konum, ölçek ve renk değişimlerinin görüntüde gösterileni değiştirmediğini öğrenir ve bir görüntüyü diğerlerinden ayıran özellikleri korur. Standart bir ResNet-50'den dört kat daha geniş bir ResNet-50 ile, SimCLR'nin dondurulmuş özellikleri üzerinde eğitilen bir doğrusal sınıflandırıcı, ImageNet üzerinde %76.5 ilk-1 doğruluğa ulaşarak denetimli bir ResNet-50 ile eşleşti.

Karşıtsal Kayıp İşlevleri#

  • İkili karşıtsal kayıp: Raia Hadsell, Sumit Chopra ve Yann LeCun'un 2006 tarihli kayıp işlevi, her pozitif çifti birbirine yaklaştırır ve her negatif çifti, aralarındaki uzaklık en az m olana kadar birbirinden uzaklaştırır.
  • Üçlü kayıp: Bir çapayı bir pozitif ve bir negatifle karşılaştırır ve pozitifin bir marj kadar daha yakın olmasını gerektirir. Google'ın FaceNet'i 2015'te yüz gömülerini bu yöntemle eğitti.
  • InfoNCE: Bir pozitif örneği aynı anda birçok negatifle karşılaştırır. τ sıcaklığına bölünmüş s benzerlikleriyle, bir çapa için kayıp −log[exp(s₊/τ) / Σⱼ exp(sⱼ/τ)] biçimindedir; pozitifin tüm adaylar arasındaki doğru sınıf olduğu bir softmax çapraz entropisidir. Aaron van den Oord ve çalışma arkadaşları bu adı 2018'de karşıtsal öngörücü kodlama makalesinde ortaya koydu; SimCLR'nin NT-Xent kaybı ve CLIP'in kaybı da bu türdendir.
  • Sigmoid kaybı: SigLIP, her çifti bağımsız bir evet-hayır eşleşmesi olarak sigmoid ile puanlar; böylece kayıp için yığın genelinde normalleştirme gerekmez.

PyTorch içinde InfoNCE, köşegeninde pozitiflerin bulunduğu benzerlik matrisi üzerinde çapraz entropiye indirgenir:

import torch
import torch.nn.functional as F

torch.manual_seed(0)
# Stand-in embeddings for 8 images, a second view of each (row i of both is a positive pair),
# and 8 unrelated images
view1 = F.normalize(torch.randn(8, 128), dim=1)
view2 = F.normalize(view1 + 0.1 * torch.randn(8, 128), dim=1)
unrelated = F.normalize(torch.randn(8, 128), dim=1)

# InfoNCE: cosine similarities divided by a temperature, then cross-entropy where
# each row's positive (the diagonal) is the correct class among all 8 candidates
temperature = 0.1
targets = torch.arange(8)
for name, keys in [("Augmented views", view2), ("Unrelated images", unrelated)]:
    logits = view1 @ keys.T / temperature
    print(f"{name}: loss {F.cross_entropy(logits, targets):.3f}")

Augmented views: loss 0.016 ve Unrelated images: loss 2.505 değerlerini yazdırır. Her satırdaki pozitif, en benzer anahtar olduğunda kayıp sıfıra yaklaşır. İlişkisiz anahtarlarla kayıp ln 8 ≈ 2.08'in üzerine çıkar; bu, sekiz aday arasından yapılan rastgele tahminin kaybıdır. Bunun nedeni, 0.1 sıcaklığa bölmenin şans benzerliklerini yüksek güvenli yanlış tahminlere dönüştürmesidir. Daha düşük sıcaklık softmax'ı keskinleştirir ve kaybı en zor negatiflerde yoğunlaştırır. MoCo τ = 0.07 kullanır; CLIP de öğrenilen sıcaklığını başlangıçta aynı değere ayarlar.

Negatifler, Yığın Boyutu ve Varyantlar#

InfoNCE, daha fazla negatifle iyileşir; bu da negatif sayısını temel bir maliyet etkeni yapar. SimCLR negatifleri çok büyük yığınlardan seçti. Facebook AI Research'ten Kaiming He ve çalışma arkadaşlarının geliştirdiği MoCo, yakın tarihli yığınlardan alınan 65,536 gömüden oluşan bir kuyruğu negatif olarak tuttu ve bunları kodlayıcının yavaşça güncellenen momentum kopyasıyla kodladı; bu, negatif sayısını yığın boyutundan bağımsız hale getirdi. Rastgele negatifler, aynı köpek ırkının başka bir fotoğrafı gibi yanlış negatifler olabilir; çok kolay negatifler ise pek bir şey öğretmez. Bu nedenle zor negatif madenciliği, kolayca karıştırılabilecek örnekleri arar. Denetimli karşıtsal öğrenme (SupCon), aynı sınıftaki her örneği pozitif kabul etmek için etiketleri kullanır. BYOL, SimSiam ve DINO gibi karşıtsal olmayan yöntemler negatifleri tamamen kaldırır; asimetrik ağlar, gradyan durdurma veya merkezleme kullanarak her girdinin aynı gömüye çökmesini önler.

  • Metrik öğrenme: Karşıtsal ve üçlü kayıpların kaynaklandığı, daha geniş kapsamlı uzaklık işlevi öğrenme görevidir. "Karşıtsal öğrenme" artık genellikle SimCLR ve MoCo'nun popülerleştirdiği, çok sayıda negatif kullanan öz denetimli biçimi ifade eder.
  • Otomatik kodlayıcılar: Girdiyi yeniden oluşturarak öğrenirler; bu nedenle özelliklerinin piksel düzeyindeki ayrıntıları koruması gerekir. Karşıtsal özellikler yalnızca bir örneği diğerlerinden ayıran bilgileri korur.
  • JEPA: Görüntünün gizli bölgelerinin gömülerini görünen bölgelerden tahmin eder ve negatif çiftler olmadan gömü uzayında öğrenir.
  • Denetimli öğrenme: İnsanlarca atanmış sabit bir sınıf kümesini hedefleyerek eğitim yaparken, karşıtsal ön eğitim yalnızca hangi örneklerin eşleştiğini belirleyen bir kurala ihtiyaç duyar.

Uygulamalar#

  • Görüntü-dil modelleri: CLIP, 400 milyon görüntü-açıklama çifti ve 32,768 boyutlu yığınlarla bir görüntü kodlayıcı ve bir metin kodlayıcı eğitti; böylece metin istemleri görüntüleri sınıflandırabilir ve getirebilir. Ultralytics YOLOE-26 modelleri, CLIP tarzı karşıtsal amaçla eğitilmiş Apple'ın MobileCLIP2 metin kodlayıcısıyla sınıf adlarını kodlar ve her aday bölgeyi karşıtsal bir başlıkta bu metin gömülerine göre puanlar; böylece set_classes(["forklift", "pallet"]), aynı ağırlıkları yeni kategoriler için bir algılayıcıya dönüştürür.
  • Anlamsal arama: Görüntü ve metinlerin karşıtsal olarak eğitilmiş gömüleri bir vektör veri tabanında saklanır ve benzerliğe göre aranır.
  • Az etiketli ön eğitim: Uzman etiketlerinin az olduğu tıbbi görüntü analizi gibi alanlarda, etiketsiz taramalar üzerinde yapılan karşıtsal ön eğitim, küçük bir etiketli kümeyle ince ayarın uyarlayabileceği bir omurga sağlar.
  • Yüz tanıma ve yeniden tanımlama: Karşıtsal ve üçlü kayıplar, aynı kişi veya nesnenin fotoğraflarının birbirine yakın olduğu gömüleri eğitir. FaceNet'in 128 boyutlu gömüleri, Labeled Faces in the Wild kıyaslamasında %99.63 doğruluğa ulaştı.

Çözümleri keşfet

Sporda bilgisayarlı görü

Sporda bilgisayarlı görü

Ultralytics YOLO'nun oyuncu ve top takibi, performans analitiği, antrenörlük içgörüleri ve sporcu rehabilitasyonuyla spor alanında görsel yapay zekâyı nasıl güçlendirdiğini keşfet.
Daha fazla bilgi edin
Hava görüntüleri için bilgisayarlı görü

Hava görüntüleri için bilgisayarlı görü

İHA ve hava görüntülerini Ultralytics YOLO ile tarım, su ürünleri yetiştiriciliği, koruma çalışmaları ve jeo-uzamsal analiz için gerçek zamanlı içgörülere dönüştür.
Daha fazla bilgi edin
Havacılıkta bilgisayarlı görü

Havacılıkta bilgisayarlı görü

Uçak denetimi, pistteki yabancı madde tespiti, havaalanı yer operasyonları ve kompozit malzeme kusurlarının tespiti için Ultralytics YOLO ile havacılık ve uzay sektöründe bilgisayarlı görü uygula.
Daha fazla bilgi edin
Güvenlikte bilgisayarlı görü

Güvenlikte bilgisayarlı görü

Ultralytics YOLO modelleriyle her sahayı koru. Görsel yapay zekâ; çevre izleme, tehdit tespiti, plaka tanıma ve iş yeri güvenliğini destekler.
Daha fazla bilgi edin
Robotikte bilgisayarlı görü

Robotikte bilgisayarlı görü

Ultralytics YOLO modelleriyle daha akıllı makinelere güç ver. Robotikte görsel yapay zekâ; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü destekler.
Daha fazla bilgi edin
Lojistikte bilgisayarlı görü

Lojistikte bilgisayarlı görü

Ultralytics YOLO modelleriyle lojistiği kolaylaştır. Görüntü yapay zekâsı; paket denetimini, ayrıştırmayı, araç takibini ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Perakendede bilgisayarlı görü

Perakendede bilgisayarlı görü

Ultralytics YOLO modelleriyle perakendeyi yeniden tasarla. Görüntü yapay zekâsı; envanter takibini, raf izlemeyi, kuyruk yönetimini ve daha kapsamlı müşteri analizlerini mümkün kılar.
Daha fazla bilgi edin
Sağlık hizmetlerinde bilgisayarlı görü

Sağlık hizmetlerinde bilgisayarlı görü

Ultralytics YOLO modelleriyle sağlık çözümleri geliştir. Sağlık hizmetlerinde görüntü yapay zekâsı; daha hızlı tıbbi görüntüleme, daha akıllı tanı ve hasta takibini mümkün kılar.
Daha fazla bilgi edin
Üretimde bilgisayarlı görü

Üretimde bilgisayarlı görü

Ultralytics YOLO modelleriyle üretimi optimize et. Görsel yapay zekâ; kalite kontrolünü, kusur tespitini, kişisel koruyucu donanım uyumunu ve montaj hattı otomasyonunu destekler.
Daha fazla bilgi edin
Otomotivde bilgisayarlı görü

Otomotivde bilgisayarlı görü

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görüden yararlan. Görsel yapay zekâ; daha akıllı yollar için yol güvenliğini, sürüş desteğini ve araç otomasyonunu ileri taşır.
Daha fazla bilgi edin
Tarımda bilgisayarlı görü

Tarımda bilgisayarlı görü

Ultralytics YOLO modelleriyle akıllı tarıma görüntü yapay zekâsı kazandır. Daha yüksek ve akıllı verim için mahsul izleme, hayvan takibi ve hassas tarımı destekle.
Daha fazla bilgi edin

Geleceğin yapay zekasını birlikte inşa edelim!

Makine öğreniminin geleceğine yolculuğuna başla