Explore how contrastive learning enables AI to understand data by comparing samples. Learn about self-supervised features and train models on the Ultralytics Platform.
Karşılaştırmalı öğrenme, modellere benzer ve farklı örnekleri karşılaştırarak verileri anlamayı öğreten bir makine öğrenimi paradigmasıdır. Manuel olarak etiketlenmiş veri kümelerine büyük ölçüde dayanan geleneksel denetimli öğrenmenin aksine, karşılaştırmalı öğrenme genellikle kendi kendini denetleyen öğrenme bağlamlarında kullanılır. Temel fikir basit ama güçlüdür: model, ilgili öğelerin (pozitif çiftler) temsilini bir vektör uzayında birbirine yaklaştırmayı öğrenir bir vektör uzayında birbirine yaklaştırmayı öğrenirken, ilgisiz öğeleri (negatif çiftler) birbirinden uzaklaştırmayı öğrenir. Bu süreç, algoritmaların, yapay zeka (AI) sistemlerini ölçeklendirmek için çok önemli olan, etiketlenmemiş büyük miktarda veriden sağlam, genelleştirilebilir özellikler oluşturmasına olanak tanır .
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, her ikisinin de bir köpek fotoğrafına olduğundan daha benzer olduğunu öğrenir. Bu genellikle veri artırma yoluyla gerçekleştirilir. Genellikle "ankraj" olarak adlandırılan bir girdi görüntüsü , kırpma, çevirme veya renk titremesi gibi teknikler kullanılarak iki farklı versiyona dönüştürülür . Bu iki versiyon pozitif bir çift oluşturur. Model daha sonra, bunların gömülü öğeleri arasındaki mesafeyi en aza indirirken partideki diğer rastgele görüntülere (negatif örnekler) olan mesafeyi en üst düzeye çıkarmak için eğitilir .
Bu yaklaşım, sinir ağının düşük seviyeli piksel detaylarından ziyade yüksek seviyeli anlamsal özelliklere odaklanmasına yardımcı olur. Örneğin, bir arabanın kırmızı mı mavi mi olduğu veya sola mı sağa mı baktığı fark etmez, "araba" kavramının temelinde yatan anlam aynı kalır. Bu yüzeysel farklılıkları göz ardı ederek, model görsel dünyayı daha derinlemesine anlar ve bu da nesne algılama ve sınıflandırma gibi aşağı akış görevlerine önemli ölçüde fayda sağlar.
Karşılaştırmalı öğrenme, özellikle etiketli verilerin az olduğu veya elde edilmesinin pahalı olduğu durumlarda, birçok son teknoloji AI uygulamasının temel taşı haline gelmiştir.
Karşılaştırmalı öğrenmeyi benzer tekniklerden ayırmak, makine öğrenimi (ML) alanında oynadığı benzersiz rolü anlamak açısından yararlıdır. Makine öğrenimi (ML) alanında.
Karşılaştırmalı bir modeli sıfırdan eğitmek kaynak yoğun bir işlem olsa da, önceden eğitilmiş modelleri kullanarak
özellikleri kolayca çıkarabilirsiniz. Aşağıdaki örnek, bir modeli yüklemeyi ve bir görüntü için özellik vektörünü (gömme)
çıkarmayı gösterir. ultralytics paket. Bu gömme, karşılaştırmalı ön eğitim benzeri teknikler aracılığıyla öğrenilen anlamsal içeriği temsil eder.
techniques akin to contrastive pre-training.
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ı özellikleri çıkarma yeteneği, modern bilgisayar görme (CV) sistemleri oluşturmak için karşılaştırmalı öğrenmeyi vazgeçilmez kılar ve verimli görüntüarama ve gelişmiş analitik işlemlerini mümkün kılar. Bu gelişmiş mimarilerden yararlanan veri kümelerini yönetmek ve özel modeller eğitmek için Ultralytics , dağıtım ve izleme için kolaylaştırılmış bir ortam sunar.
