One-Shot Learning
AI'da Tek Atışlı Öğrenmeyi keşfet. Verimli bilgisayarlı görü için tek bir görüntüden nesneleri Ultralytics YOLO26 ve Siamese ağlarını kullanarak nasıl sınıflandıracağını öğren.
Tek Örnekli Öğrenme, nesne kategorileri hakkındaki bilgileri tek bir eğitim örneğinden öğrenmek üzere tasarlanmış, makine öğrenmesi (ML) alanında uzmanlaşmış bir sınıflandırma tekniğidir. Etkili bir şekilde genelleme yapmak için binlerce açıklamalı görüntü içeren büyük veri kümeleri gerektiren geleneksel derin öğrenme (DL) algoritmalarının aksine, Tek Örnekli Öğrenme insanın yeni bir kavramı anında kavrama bilişsel yeteneğini taklit eder. Örneğin bir kişi, belirli bir egzotik kuşu genellikle yalnızca bir kez gördükten sonra tanıyabilir; bu yöntem, bu verimliliği yapay zekâ (AI) sistemlerinde yeniden oluşturmayı amaçlar. Veri etiketlemenin pahalı olduğu, verilerin kısıtlı bulunduğu veya tüm modeli yeniden eğitmeden yeni kategorilerin dinamik olarak eklenmesi gereken senaryolarda özellikle değerlidir.
Kavramın Ardındaki Mekanizmalar#
Tek Örnekli Öğrenmenin temel ilkesi, hedefi standart sınıflandırmadan benzerlik değerlendirmesine kaydırmaktır. Bir sinir ağını (NN) belirli bir sınıf etiketi (ör. "köpek" veya "kedi") çıktısı verecek şekilde eğitmek yerine model, bir uzaklık işlevi öğrenir. Bunun için kullanılan yaygın mimarilerden biri, aynı model ağırlıklarını paylaşan iki özdeş alt ağdan oluşan Siamese sinir ağıdır.
Çalışma sırasında ağ, girdi görüntülerini gömme vektörleri olarak bilinen kompakt sayısal vektörlere dönüştürmek için özellik çıkarma işlemi gerçekleştirir. Sistem daha sonra yeni bir sorgu görüntüsünün gömme vektörünü tek referans "örneğinin" gömme vektörüyle karşılaştırır. Genellikle Öklid uzaklığı veya kosinüs benzerliği kullanılarak hesaplanan matematiksel uzaklık belirli bir eşik değerinin altındaysa görüntülerin aynı sınıfa ait olduğu belirlenir. Bu, modelin öğrenilmiş özellik uzayındaki yakınlıklarına dayanarak kimliği doğrulamasını veya nesneleri sınıflandırmasını sağlar.
Aşağıdaki Python kodu, ultralytics paketindeki bir YOLO26 sınıflandırma modeliyle gömme vektörlerinin nasıl çıkarılacağını ve benzerliğin nasıl hesaplanacağını gösterir.
import numpy as np
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model for feature extraction
model = YOLO("yolo26n-cls.pt")
# Extract embeddings for a reference 'shot' and a query image
# The embed() method returns the feature vector directly
shot_vec = model.embed("reference_img.jpg")[0]
query_vec = model.embed("query_img.jpg")[0]
# Calculate similarity (higher dot product implies greater similarity)
similarity = np.dot(shot_vec, query_vec) / (np.linalg.norm(shot_vec) * np.linalg.norm(query_vec))
print(f"Similarity Score: {similarity:.4f}")İlgili Paradigmaların Ayrımı#
Benzer sorunları farklı kısıtlarla çözdükleri için Tek Örnekli Öğrenmeyi veri açısından verimli diğer öğrenme tekniklerinden ayırmak önemlidir:
- Az Örnekli Öğrenme (FSL): Bu, Tek Örnekli Öğrenmeyi kapsayan daha geniş kategoridir. FSL'de modele, genellikle sınıf başına iki ila beş görüntüden oluşan küçük bir "destek kümesi" örneği verilir. Tek Örnekli Öğrenme, destek kümesi boyutunun tam olarak bir olduğu uç durumdur.
- Sıfır Örnekli Öğrenme (ZSL): ZSL, modelin görsel olarak hiç görmediği kategorileri tanımasıyla ilgilenir. ZSL, bir referans görüntü yerine doğal dil işlemeyi (NLP) kullanarak anlamsal özniteliklere veya metin açıklamalarına dayanır (ör. görsel özellikleri "çizgili at" metin açıklamasıyla ilişkilendirerek bir "zebra" tanımlamak).
- Aktarım Öğrenmesi: Bu yaklaşım, ImageNet gibi büyük bir veritabanında önceden eğitilmiş bir modelin alınmasını ve yeni bir görev üzerinde ince ayar yapılmasını içerir. Aktarım öğrenmesi, Tek Örnekli Öğrenmede kullanılan özellik çıkarıcıları güçlendirirken standart aktarım öğrenmesi, aşırı öğrenme olmadan ağırlıkları etkili bir şekilde güncellemek için genellikle birden fazla örnek gerektirir.
Gerçek Dünya Uygulamaları#
Tek Örnekli Öğrenme, büyük miktarlarda eğitim verisi toplamanın pratik olmadığı sektörlerde yeni yeteneklerin önünü açmıştır.
Yüz Tanıma ve Güvenlik#
Tek Örnekli Öğrenmenin en yaygın uygulaması biyometrik güvenlik alanındadır. Bir akıllı telefonda Face ID kurulurken veya bir çalışan erişim sistemine kaydolurken cihaz, kullanıcının yüzünün tek bir matematiksel temsilini yakalar. Günlük kullanım sırasında yüz tanıma sistemi, kimliği doğrulamak için canlı kamera görüntüsünü bu kayıtlı "tek örnekle" karşılaştırır. Bu süreç, aydınlatma veya açı değişikliklerinin benzerlik eşleşmesini bozmasını önlemek için temel nitelikteki FaceNet araştırmasında ele alınanlar gibi güçlü gömme tekniklerine dayanır.
Endüstriyel Kalite Kontrolü#
Üretimde yapay zekâ alanında "kusurlu" parçalarla dengeli bir veri kümesi oluşturmak zordur; çünkü kusurlar nadir görülür ve tutarsızdır. Tek Örnekli Öğrenme, bilgisayarlı görü (CV) sistemlerinin tek bir "kusursuz" referans parçanın temsilini öğrenmesini sağlar. Montaj hattında bu referanstan önemli ölçüde uzak bir gömme vektörü üreten herhangi bir parça, anomali tespiti için işaretlenir. Bu, binlerce kırık parça görüntüsüne ihtiyaç duymadan anında kalite güvencesi sağlar ve süreç Ultralytics Platformu üzerinden yönetilip dağıtılabilir.
Zorluklar ve Geleceğe Bakış#
Güçlü olmasına rağmen Tek Örnekli Öğrenme gürültüye karşı hassastır; tek referans görüntüsü bulanık, engellenmiş veya temsili değilse modelin o sınıfı tanıma yeteneği önemli ölçüde azalır. Araştırmacılar, model kararlılığını ve genelleme yeteneğini geliştirmek için sıklıkla meta öğrenmeyi veya "öğrenmeyi öğrenmeyi" kullanır. Mimariler geliştikçe YOLO26 gibi daha yeni modeller, tek örnekli çıkarımı daha hızlı ve doğru hâle getiren daha güçlü özellik çıkarıcıları kullanmaya başlıyor; bu da daha uyarlanabilir ve akıllı uç yapay zekâ cihazlarının önünü açıyor.









