Contrastive Learning
Makine öğreniminde kontrastif öğrenmeyi keşfet. Ultralytics YOLO26 ve bilgisayarlı görü için sağlam yapay zeka özellikleri oluşturmak amacıyla öz-denetimli verilerin nasıl kullanıldığını öğren.
Karşılaştırmalı öğrenme, modellerin benzer ve farklı örnekleri kıyaslayarak veriyi anlamasını sağlayan bir makine öğrenimi paradigmasıdır. Manuel olarak etiketlenmiş veri kümelerine büyük ölçüde güvenen geleneksel denetimli öğrenmeden farklı olarak, karşılaştırmalı öğrenme genellikle kendi kendine denetimli öğrenme bağlamlarında kullanılır. Temel fikir basit ancak güçlüdür: model, ilişkili öğelerin (pozitif çiftler) temsillerini vektör uzayında birbirine yaklaştırmayı öğrenirken, ilişkisiz öğeleri (negatif çiftler) birbirinden uzaklaştırır. Bu süreç, algoritmaların çok miktarda etiketlenmemiş veriden sağlam ve genelleştirilebilir özellikler oluşturmasına olanak tanır; bu da yapay zeka (AI) sistemlerini ölçeklendirmek için çok önemlidir.
Link to this sectionKarşılaştırmalı Öğrenmenin Mekanizması#
Karşılaştırmalı öğrenmenin merkezinde, kıyaslayarak öğrenme kavramı yatar. Model, belirli bir görüntünün "kedi" olduğunu ezberlemek yerine, kedinin iki farklı fotoğrafının birbirine, bir köpeğin fotoğrafına olduğundan daha benzer olduğunu öğrenir. Bu genellikle veri artırma yoluyla başarılır. "Çapa" (anchor) olarak adlandırılan bir girdi görüntüsü; kırpma, döndürme veya renk titretme 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. Model daha sonra, toplu işteki diğer rastgele görüntülere (negatif örnekler) olan mesafeyi maksimize ederken, gömüleri arasındaki mesafeyi en aza indirecek şekilde eğitilir.
Bu yaklaşım, sinir ağının düşük seviyeli piksel ayrıntıları yerine yüksek seviyeli anlamsal özelliklere odaklanmasına yardımcı olur. Örneğin, bir arabanın kırmızı veya mavi olması ya da sağa veya sola bakması fark etmeksizin, temel "araba" kavramı aynı kalır. Bu yüzeysel farklılıkları görmezden gelen model, görsel dünya hakkında daha derin bir anlayış geliştirir; bu da nesne algılama ve sınıflandırma gibi sonraki görevlere önemli ölçüde fayda sağlar.
Link to this sectionGerçek Dünya Uygulamaları#
Karşılaştırmalı öğrenme, özellikle etiketli verinin kıt veya elde edilmesinin pahalı olduğu durumlarda, birçok son teknoloji AI uygulaması için bir temel taşı haline gelmiştir.
-
Sıfır Örnekli (Zero-Shot) Görüntü Sınıflandırma: CLIP (Karşılaştırmalı Dil-Görüntü Ön Eğitimi) gibi modeller, görüntüleri ve metni ortak bir özellik uzayında hizalamak için karşılaştırmalı öğrenmeyi kullanır. Milyonlarca görüntü-metin çifti üzerinde eğitim alan model, görsel kavramları doğal dil açıklamalarıyla ilişkilendirmeyi öğrenir. Bu, modelin görüntüleri metinsel bir istemle eşleştirerek, eğitim sırasında hiç görmediği kategorilere sınıflandırabildiği sıfır örnekli öğrenmeyi mümkün kılar.
-
Robust Pre-training for Medical Imaging: In healthcare, obtaining expert-labeled medical scans is costly and time-consuming. Researchers use contrastive learning to pre-train models on large databases of unlabeled X-rays or MRI scans. This unsupervised pre-training creates a powerful backbone that can be fine-tuned with a small number of labeled examples to detect diseases like pneumonia or tumors with high accuracy. This technique leverages transfer learning to improve diagnostic tools in AI in healthcare.
Link to this sectionİlgili Kavramları Ayırt Etme#
Makine öğrenimi (ML) ekosistemindeki benzersiz rolünü anlamak için karşılaştırmalı öğrenmeyi benzer tekniklerden ayırt etmek faydalıdır.
- Oto-kodlayıcılar (Autoencoders) ile karşılaştırma: Her ikisi de denetimsiz yöntemler olsa da, oto-kodlayıcılar girdi verilerini piksel piksel yeniden oluşturmayı ve bir darboğaz katmanına sıkıştırmayı amaçlar. Karşılaştırmalı öğrenme ise görüntüyü yeniden oluşturmaya çalışmaz; yalnızca farklı kavramları ayıran ayırt edici temsilleri öğrenmeye odaklanır.
- Üretken Çekişmeli Ağlar (GANs) ile karşılaştırma: GAN'ler, sahte veriler oluşturan bir üretici ve bunu tespit etmeye çalışan bir ayırt ediciden oluşur. Karşılaştırmalı öğrenme, veri üretiminden ziyade temsil öğrenmeye odaklanır, bu da onu arama, geri getirme ve sınıflandırma gibi görevler için daha uygun hale getirir.
- Üçlü Kayıp (Triplet Loss) ile karşılaştırma: 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, InfoNCE gibi belirli bir kayıp fonksiyonu kullanarak bir çapayı, toplu iş içerisindeki birçok negatif örnekle aynı anda karşılaştırarak bunu genelleştirir.
Link to this sectionGömüler ile Uygulamalı Örnek#
Karşılaştırmalı bir modeli sıfırdan eğitmek kaynak yoğun olsa da, özellikleri çıkarmak için önceden eğitilmiş modelleri kolayca kullanabilirsin. Aşağıdaki örnek, ultralytics paketini kullanarak nasıl bir modelin yükleneceğini ve bir görüntü için özellik vektörünün (gömü) nasıl çıkarılacağını gösterir. Bu gömü, 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 yeteneği, karşılaştırmalı öğrenmeyi modern bilgisayarlı görü (CV) sistemleri oluşturmak için vazgeçilmez kılar ve verimli görüntü arama ve gelişmiş analitiği mümkün kılar. Veri kümelerini yönetmek ve bu gelişmiş mimarilerden yararlanan özel modelleri eğitmek için Ultralytics Platform, dağıtım ve izleme için optimize edilmiş bir ortam sağlar.






