Linear Probing
Doğrusal sondalama, temsillerin ne kodladığını sınamak için dondurulmuş bir modelin özellikleri üzerinde doğrusal bir sınıflandırıcı eğitir. Nasıl çalıştığı, kod ve ince ayarla karşılaştırması.
Doğrusal yoklama, yalnızca dondurulmuş özelliklerin üzerine doğrusal bir sınıflandırıcı (yoklayıcı) eğiterek önceden eğitilmiş bir modelin temsillerinde ne kadar yararlı bilgi bulunduğunu ölçen bir tekniktir. Kodlayıcının ağırlıkları hiç değişmez: görüntüler veya metinler kodlayıcıdan bir kez geçirilir, elde edilen gömüler sabit girdilere dönüşür ve bir lojistik regresyon modeli ya da tek bir yoğun katman bu girdilerden etiketleri tahmin etmeyi öğrenir. Yüksek yoklama doğruluğu, kodlayıcının örnekleri sınıfları düz bir sınırla ayıracak biçimde zaten düzenlediği anlamına gelir. Veri yapılarında aynı ad, karma tablolardaki çakışmaları sonraki yuvayı kontrol ederek çözmek için kullanılan, ilgisiz bir yöntemi ifade eder.
Doğrusal Sondalama Nasıl Çalışır#
Bir yoklama deneyi, önceden eğitilmiş bir kodlayıcıyı yükler, dondurur, etiketli bir veri kümesinde özellik çıkarımı yapar ve depolanan özellikler üzerinde doğrusal bir sınıflandırıcı eğitir; sonuçlar ayrılmış bir test kümesi üzerinde raporlanır. Yoklayıcının her özellik ve sınıf için bir ağırlığı ve ayrıca bir sapma terimi vardır; bu nedenle yalnızca doğrusal karar sınırları çizebilir, kendi başına yeni özellikler oluşturamaz. Elde ettiği doğruluk, kodlayıcının öğrendiklerini yansıtır. Lojistik regresyon, puanlarına softmax veya sigmoid uygular; ancak özelliklerdeki karar sınırları doğrusal kalır. Yalnızca yoklayıcı eğitildiği için özellikler bir kez hesaplanıp yeniden kullanılabilir; bu da yoklamayı ince ayardan çok daha ucuz kılar.
Ultralytics YOLO26 sınıflandırma modelleri, dondurulmuş özellikleri model.embed() üzerinden sunar. Bu özellik, varsayılan olarak sınıflandırma başlığından önceki katmanın çıktısını her görüntü için tek bir vektörde havuzlar; nano modelinde bu vektör 256 sayıdan oluşur. Aşağıdaki örnek, CIFAR-10 veri kümesindeki kedi ve köpek görüntüleri üzerinde bu özellikleri yoklar. Bunlar, ImageNet üzerinde eğitilmiş modelin hiç görmediği düşük çözünürlüklü görüntülerdir. Örnek ayrıca karşılaştırma için aynı yoklayıcıyı ham piksellere de uydurur:
from pathlib import Path
import numpy as np
from PIL import Image
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from torchvision.datasets.utils import download_and_extract_archive
from ultralytics import YOLO
# 500 cat and 500 dog images from the CIFAR-10 test split
download_and_extract_archive("https://github.com/ultralytics/assets/releases/download/v0.0.0/cifar10.zip", "data")
cats = sorted(Path("data/cifar10/test/cat").glob("*.png"))[:500]
dogs = sorted(Path("data/cifar10/test/dog").glob("*.png"))[:500]
paths, labels = cats + dogs, [0] * 500 + [1] * 500
# Frozen YOLO26 classifier features, and raw pixels as a baseline representation
encoder = YOLO("yolo26n-cls.pt")
features = np.stack([encoder.embed(path, verbose=False)[0].cpu().numpy() for path in paths])
pixels = np.stack([np.asarray(Image.open(path)).ravel() / 255 for path in paths])
# Train the same linear probe on each representation and score it on held-out images
for name, x in [("raw pixels", pixels), ("YOLO26 features", features)]:
x_train, x_test, y_train, y_test = train_test_split(x, labels, test_size=0.3, random_state=0, stratify=labels)
probe = LogisticRegression(max_iter=5000)
probe.fit(x_train, y_train)
print(f"{name}: {probe.score(x_test, y_test):.3f}")Yoklayıcı ham piksellerde 0.573 puan alır; bu, tahmin ederek bulunan 0.5 değerinin biraz üzerindedir. YOLO26 özelliklerinde ise 0.833 puan alır. Aradaki fark, dondurulmuş YOLO26 kodlayıcısının sınıf bilgisini doğrusal olarak ne ölçüde erişilebilir kıldığını gösterir.
Yoklama Ne Gösterir?#
Doğrusal yoklama, bilginin hem mevcut olup olmadığını hem de kolayca okunup okunamadığını sınar. Guillaume Alain ve Yoshua Bengio, tanılama yöntemi olarak doğrusal sınıflandırıcı yoklamalarını "Doğrusal Sınıflandırıcı Yoklamalarıyla Ara Katmanları Anlamak" başlıklı çalışmada önerdi ve inceledikleri ağlarda özelliklerin doğrusal ayrılabilirliğinin derinlik arttıkça monoton biçimde yükseldiğini buldu. Her katmanı bu şekilde yoklamak, ağın bir görevin ihtiyaç duyduğu kavramları nerede oluşturduğunu gösterir. Kendinden denetimli öğrenmede, etiketler olmadan eğitilen kodlayıcıları karşılaştırmak için ImageNet üzerindeki doğrusal yoklama doğruluğu standart yöntem hâline geldi; çünkü yoklayıcının eklediği bilgi, zayıf bir temsilin dayanabileceği neredeyse hiçbir şey sağlamaz. Doğal dil işlemede, bir dil modelinin gizli durumları üzerinde eğitilen yoklayıcılar, modelin sözcük türü, sözdizimi veya bir ifadenin doğru olup olmadığı gibi özellikleri kodlayıp kodlamadığını sınar.
Yoklama sonuçları seçilen katmana, girdi çözünürlüğüne ve ön işlemeye, etiketli veri miktarına, yoklayıcının düzenlileştirmesine ve eğitim ile değerlendirme görüntülerinin ayrılma biçimine bağlıdır. Bu nedenle kodlayıcılar arasındaki karşılaştırmalar ancak tüm bu değişkenler sabit tutulduğunda geçerlidir. Doğrusal yoklama başarısız olduğunda küçük, doğrusal olmayan bir yoklama bazen başarılı olur; bu da bilginin mevcut olduğunu ancak doğrusal olmayan biçimde kodlandığını gösterir.
Doğrusal Yoklama ve İlgili Yöntemler#
- İnce ayar: Başlıkla birlikte kodlayıcı ağırlıklarının bir kısmını veya tamamını günceller; bu da genellikle hedef verilerde daha yüksek doğruluk sağlar. "İnce Ayar, Önceden Eğitilmiş Özellikleri Çarpıtabilir" çalışmasında, 10 veri kümesinde ince ayar, dağılım içi doğrulukta doğrusal yoklamadan ortalama %2 daha yüksek sonuç verdi; ancak dağılım kayması altında doğruluk %7 daha düşüktü. Önce doğrusal yoklama uygulayıp ardından bu başlıktan başlayarak ince ayar yapan LP-FT ise tam ince ayarı dağılım içinde %1, dağılım kayması altında %10 geride bıraktı.
- k en yakın komşu değerlendirmesi: Herhangi bir eğitim yapmadan, her test gömüsünü en yakın eğitim gömülerinin etiketlerine göre sınıflandırır. Bu, kendinden denetimli kodlayıcılar için kullanılan diğer yaygın bir değerlendirme yöntemidir.
- Özellik çıkarımı ve aktarımı öğrenme: Özellik çıkarımı, yoklayıcının kullandığı gömüleri üretir. Dondurulmuş bir omurga üzerinde doğrusal bir başlık eğitmek, aktarımı öğrenmenin en ucuz biçimidir. PyTorch'un aktarımı öğrenme öğreticisi bunu ağı sabit bir özellik çıkarıcı olarak kullanmak şeklinde tanımlar.
Doğrusal Yoklamanın Sınırları#
Doğrusal yoklama, bilginin doğrusal olarak ne ölçüde erişilebilir olduğunu ölçer; bu, uyarlama sonrasında bir temsilin ne kadar yararlı olduğundan farklıdır. Maskeli otomatik kodlayıcıların (MAE) yazarları, doğrusal yoklama ve ince ayar sonuçlarının büyük ölçüde ilişkisiz olduğunu buldu: ViT-L kodlayıcısı doğrusal yoklamada %73.5 ImageNet doğruluğuna ulaştı; yalnızca son transformer bloğuna ince ayar uygulandığında bu oran %81.0'a çıktı. MoCo v3 yoklamada MAE'den daha yüksek sonuç elde etmesine rağmen, kısmi ince ayarın uygulandığı her durumda MAE'nin gerisinde kaldı.










