Contrastive Learning
Makine öğrenmesinde karşılaştırmalı öğrenmeyi keşfet. Ultralytics YOLO26 ve bilgisayarlı görü için sağlam yapay zekâ özellikleri oluşturmak üzere öz denetimli verileri nasıl kullandığını öğren.
Karşılaştırmalı öğrenme, benzer ve farklı örnekleri karşılaştırarak modellere verileri anlamayı öğreten bir makine öğrenimi yaklaşımıdır. Büyük ölçüde elle etiketlenmiş veri kümelerine dayanan geleneksel denetimli öğrenmenin aksine, karşılaştırmalı öğrenme genellikle özdenetimli öğrenme bağlamlarında kullanılır. Temel fikir basit ancak güçlüdür: model, ilişkili öğelerin (pozitif çiftler) temsillerini bir vektör uzayında birbirine yaklaştırmayı ve ilişkisiz öğeleri (negatif çiftler) birbirinden uzaklaştırmayı öğrenir. Bu süreç, algoritmaların büyük miktarlardaki etiketsiz veriden sağlam ve genellenebilir özellikler oluşturmasını sağlar; bu da yapay zekâ (AI) sistemlerini ölçeklendirmek için kritik öneme sahiptir.
Karşılaştırmalı Öğrenmenin Mekanizması#
Karşılaştırmalı öğrenmenin merkezinde karşılaştırma yoluyla öğrenme kavramı yer alır. Model, belirli bir görüntünün "kedi" olduğunu ezberlemek yerine, bir kedinin iki farklı fotoğrafının birbirine, bu fotoğraflardan herhangi birinin bir köpek fotoğrafına olduğundan daha fazla benzediğini öğrenir. Bu genellikle veri artırma yoluyla gerçekleştirilir. Genellikle "çapa" olarak adlandırılan bir giriş görüntüsü, kırpma, çevirme veya renk titreşimi gibi teknikler kullanılarak iki farklı sürüme dönüştürülür. Bu iki sürüm pozitif bir çift oluşturur. Daha sonra model, gömme vektörleri arasındaki mesafeyi en aza indirirken, bunlarla yığındaki diğer rastgele görüntüler (negatif örnekler) arasındaki mesafeyi en üst düzeye çıkaracak şekilde eğitilir.
Bu yaklaşım, sinir ağının düşük seviyeli piksel ayrıntıları yerine üst düzey anlamsal özelliklere odaklanmasına yardımcı olur. Örneğin bir arabanın kırmızı veya mavi olması ya da sola veya sağa dönük olması fark etmeksizin, temel "araba" kavramı aynı kalır. Model, bu yüzeysel farklılıkları göz ardı ederek görsel dünyayı daha derinlemesine anlamaya başlar; bu da nesne algılama ve sınıflandırma gibi sonraki görevlerde önemli fayda sağlar.
Gerçek Dünya Uygulamaları#
Karşılaştırmalı öğrenme, özellikle etiketli verilerin az veya elde edilmesinin maliyetli olduğu durumlarda, birçok son teknoloji AI uygulamasının temel taşlarından biri hâline gelmiştir.
-
Sıfır Örnekli Görüntü Sınıflandırması: CLIP (Karşılaştırmalı Dil-Görüntü Ön Eğitimi) gibi modeller, görüntüleri ve metinleri ortak bir özellik uzayında hizalamak için karşılaştırmalı öğrenmeyi kullanır. Milyonlarca görüntü-metin çiftiyle eğitilen model, görsel kavramları doğal dil açıklamalarıyla ilişkilendirmeyi öğrenir. Bu, modelin görüntüyü metinsel bir istemle eşleştirerek eğitim sırasında hiç görmediği kategorilere görüntüleri sınıflandırabildiği sıfır örnekli öğrenmeyi mümkün kılar.
-
Tıbbi Görüntüleme için Sağlam Ön Eğitim: Sağlık hizmetlerinde uzmanlar tarafından etiketlenmiş tıbbi taramaların elde edilmesi maliyetli ve zaman alıcıdır. Araştırmacılar, büyük etiketsiz röntgen veya MRI veri tabanları üzerinde modelleri önceden eğitmek için karşılaştırmalı öğrenmeyi kullanır. Bu denetimsiz ön eğitim, az sayıda etiketli örnekle ince ayar yapılabilecek güçlü bir omurga oluşturur ve zatürre veya tümör gibi hastalıkların yüksek doğrulukla tespit edilmesini sağlar. Bu teknik, sağlık hizmetlerinde yapay zekâ kapsamındaki tanı araçlarını geliştirmek için aktarım öğrenmesinden yararlanır.
İlişkili Kavramları Ayırt Etme#
Karşılaştırmalı öğrenmenin makine öğrenimi (ML) alanındaki kendine özgü rolünü anlamak için onu benzer tekniklerden ayırmak faydalıdır.
- Otomatik Kodlayıcılara karşı: Her ikisi de denetimsiz yöntemler olsa da otomatik kodlayıcılar, giriş verilerini piksel piksel yeniden oluşturarak bir darboğaz katmanında sıkıştırmayı amaçlar. Buna karşılık karşılaştırmalı öğrenme, görüntüyü yeniden oluşturmaya çalışmaz; yalnızca farklı kavramları birbirinden ayıran ayırt edici temsilleri öğrenmeye odaklanır.
- Üretici Çekişmeli Ağlara (GANs) karşı: GANs, bir üreticinin sahte veriler oluşturmasını ve bir ayırt edicinin bunları tespit etmeye çalışmasını içerir. Karşılaştırmalı öğrenme, veri üretmek yerine temsil öğrenmeye odaklanır; bu da onu arama, geri getirme ve sınıflandırma gibi görevler için daha uygun hâle getirir.
- Üçlü Kayıba karşı: Geleneksel üçlü kayıp, açıkça bir çapa, bir pozitif ve bir negatif örnek gerektirir. SimCLR veya MoCo gibi modern karşılaştırmalı yöntemler, bir çapanın bir yığın içinde aynı anda çok sayıda negatif örnekle karşılaştırılması yoluyla bu yaklaşımı genelleştirir ve genellikle InfoNCE gibi belirli bir kayıp işlevi kullanır.
Gömme Vektörleriyle Pratik Örnek#
Bir karşılaştırmalı modeli sıfırdan eğitmek kaynak açısından yoğun olsa da özellikleri çıkarmak için önceden eğitilmiş modelleri kolayca kullanabilirsin. Aşağıdaki örnek, ultralytics paketini kullanarak bir modelin nasıl yükleneceğini ve bir görüntü için özellik vektörünün (gömme vektörünün) nasıl çıkarılacağını gösterir. Bu gömme vektörü, karşılaştırmalı ön eğitime benzer tekniklerle öğrenilen anlamsal içeriği temsil eder.
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Run inference on an image to get the results
# The 'embed' argument can be used in advanced workflows to extract feature layers
results = model("https://ultralytics.com/images/bus.jpg")
# Access the top predicted class probability
# This prediction is based on the learned feature representations
print(f"Top class: {results[0].names[results[0].probs.top1]}")
print(f"Confidence: {results[0].probs.top1conf:.4f}")Zengin ve anlamlı özellikler çıkarma becerisi, karşılaştırmalı öğrenmeyi modern bilgisayarlı görü (CV) sistemleri oluşturmak için vazgeçilmez hâle getirir ve verimli görüntü aramayı ve gelişmiş analizleri mümkün kılar. Bu gelişmiş mimarilerden yararlanan veri kümelerini ve özel modelleri yönetmek için Ultralytics Platformu, dağıtım ve izleme süreçlerini kolaylaştıran bir ortam sunar.









