Neural Tangent Kernel (NTK)
Sinir teğet çekirdeği (NTK), ağ tahminlerinin parametre değişikliklerine nasıl tepki verdiğini ölçer ve sinir ağı eğitimini çekirdek yöntemleriyle ilişkilendirir.
Sinir teğet çekirdeği (NTK), iki girdinin sinir ağı çıktılarının model parametrelerindeki aynı küçük değişikliklere nasıl tepki verdiğini ölçen bir benzerlik işlevidir. Parametre gradyanları aynı doğrultuda olan girdilerin tahminleri güçlü biçimde ilişkilidir. Bu yaklaşım, örnekler arasındaki ikili benzerlikleri kullanarak öğrenen çekirdek yöntemleriyle sinir ağı eğitimini ilişkilendirir.
Arthur Jacot, Franck Gabriel ve Clément Hongler bu terimi 2018'de Sinir Teğet Çekirdeği: Sinir Ağlarında Yakınsama ve Genelleme başlıklı çalışmada ortaya atarak eğitim sırasında tahminlerin nasıl değiştiğini incelemek için matematiksel bir çerçeve oluşturdu.
Sinir Teğet Çekirdeği Nasıl Çalışır#
Skaler çıktılı bir sinir ağı için çıktının eğitilebilir her parametreye göre türevini hesapla. Bu türevler, tahminin model ağırlıklarına duyarlılığını gösteren bir gradyan vektörü oluşturur. İki girdi arasındaki NTK, bu gradyan vektörlerinin iç çarpımıdır.
Bir veri kümesinde bu ikili değerler, çekirdek matrisi olarak da adlandırılan bir Gram matrisi oluşturur. Köşegen, her tahminin parametre değişikliklerine duyarlılığını ölçer; köşegen dışındaki girdiler ise farklı örnekler arasındaki ilişkiyi gösterir. Birden fazla çıktı söz konusu olduğunda, her girdi çifti çıktı koordinatları arasındaki etkileşimleri içeren bir blok oluşturur; bu yapı ampirik NTK hesaplamasında kullanılır.
Gradyan inişi sırasında çekirdek, bir örneğin tahmin hatasını azaltmanın başka yerlerdeki tahminleri nasıl değiştireceğini belirler. İlgili gradyanlar ağ çıktılarının türevleridir; türev alma işlemini geri yayılım sağlar. Ardından kayıp işlevi, hatayı düzeltmeye yönelik güncellemelerin yönünü ve gücünü belirler.
Sonsuz Genişlik, Yakınsama ve Genelleme#
Bir ağın genişliği, gizli birimlerinin sayısıdır; evrişimli katmanda ise kanal sayısıdır. NTK parametreleştirmesi ve uygun başlatma ve eğitim varsayımları altında, gizli katmanların genişliğini sonsuza doğru artırmak, eğitim boyunca sabit kalan deterministik bir limit çekirdeği oluşturur. Sonlu bir ağın ampirik NTK değeri, ağın gerçek parametrelerinde hesaplanır ve eğitim ilerledikçe değişebilir.
Sabit çekirdek rejiminde eğitim, ağın başlangıç etrafındaki birinci dereceden yaklaşımını izler. Bu, tahminlerin parametre değişikliklerine doğrusal olarak bağlı olduğu, ancak girdilere bağlı doğrusal olmayan yapıyı koruduğu doğrusallaştırılmış bir ağdır. İlişkili tembel eğitim terimi, teğet özelliklerin çok az değiştiği bir rejimi tanımlar. Özellik öğreniminde ise bu özellikler optimizasyon sırasında önemli ölçüde değişir.
Sabit çekirdekli gradyan akışı altında kare hata kaybı için (küçük gradyan adımlarının sürekli zaman limiti), hatalar daha büyük özdeğerlere sahip çekirdek özvektörleri boyunca daha hızlı azalır. Özvektörler örnekler arasındaki örüntüleri belirler, özdeğerler ise bu örüntülerin öğrenilme hızını belirler. Bu, erken durdurmanın neden düzenlileştirme işlevi gördüğünü açıklar: gürültüyle ilişkili bileşenler ve aşırı uyum dahil olmak üzere yavaş öğrenilen bileşenlere uyum sağlamayı sınırlar. Görülmemiş girdilere yönelik tahminler, bu girdilerin eğitim verileriyle olan çekirdek benzerliklerine bağlıdır.
Uygulamalar ve İlgili Kavramlar#
NTK yöntemleri, çekirdek regresyonunu ve görüntü sınıflandırmasının analizini destekler. Evrişimli sinir teğet çekirdeği (CNTK) bu yapıyı evrişimli sinir ağlarına genişletir. Sanjeev Arora ve çalışma arkadaşları, CIFAR-10 üzerinde sınıflandırma için tam CNTK hesaplamasını kullanarak sonlu evrişimli ağların eğitimine çekirdek tabanlı bir alternatif sundu.
Sinir ağı Gauss süreci (NNGP) çekirdeği, sonsuz genişlik limitinde rastgele başlatılmış ağların çıktıları arasındaki kovaryansı tanımlar. NTK ise gradyanların yön verdiği eğitim dinamiklerini tanımlar. Benzer şekilde, doğrusal sondalama, dondurulmuş temsiller üzerinde doğrusal bir sınıflandırıcı eğitir; NTK doğrusallaştırması ise özellik olarak seçili eğitilebilir parametrelere göre türevleri kullanır.
Bu nedenle parametre seçimi, eğitimi yöneten teğet çekirdeğini değiştirir. Ultralytics YOLO26 ince ayarında, freeze argümanı seçili katmanları sabit tutar; dolayısıyla bu katmanların parametreleri, etkin eğitim çekirdeğine güncelleme yönleri katmaz.
Ampirik NTK Hesaplama#
Bu PyTorch örneği, scikit-learn ile birlikte sunulan rakamlar veri kümesindeki el yazısı iki rakam görüntüsü için çekirdeği hesaplar. Bağımlılıkları pip install torch scikit-learn ile yükle.
import torch
from sklearn.datasets import load_digits
from torch import nn
torch.manual_seed(0)
digits = load_digits()
inputs = torch.tensor(digits.data[:2], dtype=torch.float32) / 16
model = nn.Sequential(nn.Linear(64, 8), nn.Tanh(), nn.Linear(8, 1))
parameters = tuple(model.parameters())
outputs = model(inputs)
# Her Jacobian satırı, bir çıktının parametrelere göre türevlerini içerir.
rows = []
for output in outputs[:, 0]:
gradients = torch.autograd.grad(output, parameters, retain_graph=True)
rows.append(torch.cat([gradient.flatten() for gradient in gradients]))
jacobian = torch.stack(rows)
kernel = jacobian @ jacobian.T
print(kernel)Yazdırılan 2 x 2 matris, iki öz duyarlılığı ve örnekler arası eşleşmeyi içerir. jacobian @ jacobian.T olarak oluşturulması, skaler çıktılı ampirik NTK'nın simetrik ve pozitif yarı tanımlı olmasını sağlar; matrisin rütbesi hem örnek sayısıyla hem de eğitilebilir parametre sayısıyla sınırlıdır.










