KAN Kolmogorov-Arnold Networks MLP sinir ağı mimarisi B-spline yorumlanabilir AI bilimsel AI

Kolmogorov-Arnold Networks (KAN) Nedir? MLP Alternatifi

Orta
person Yapay Zeka Uzmanı
list_altİçindekilerexpand_more
  1. 01Kolmogorov-Arnold Temsil Teoremi
  2. 02MLP ile KAN: Temel Mimari Fark
  3. 03B-Spline Aktivasyon Fonksiyonları Nedir?
  4. 04KAN’ın Güçlü Yanları
  5. 05Yorumlanabilirlik
  6. 06Parametre Verimliliği
  7. 07Sembolik Regresyon
  8. 08KAN’ın Sınırlamaları
  9. 09Eğitim Yavaşlığı
  10. 10Büyük Ölçekte Soru İşaretleri
  11. 11Ekosistem Olgunluğu
  12. 12KAN 2.0 ve Güncel Gelişmeler
  13. 13Kullanım alanları: bilimsel AI, PDE çözme, fizik simülasyonu
  14. 14PyKAN ile Pratik Örnek
  15. 15LLM Entegrasyonu: KAN + Transformer Mümkün mü?

1958’de Frank Rosenblatt perceptronu tanıttığında kimse bu temel yapının 60 yılı aşkın süre değişmeyeceğini tahmin etmemişti. Düğümlerde sabit aktivasyon fonksiyonları, kenarlarda öğrenilen ağırlıklar. 2024 baharında MIT ve Caltech’ten araştırmacıların yayımladığı “KAN: Kolmogorov-Arnold Networks” makalesi tam bu ön kabulü sorguladı. Milyonlarca parametreli devleri hedef almıyor. Onun yerine şunu soruyor: aktivasyon fonksiyonları da öğrenilebilir olsaydı ne değişirdi?

Kolmogorov-Arnold Temsil Teoremi

KAN mimarisinin matematiksel dayanağı, 1950’lerin sonunda Andrei Kolmogorov ve Vladimir Arnold tarafından ayrı ayrı geliştirilen bir teoreme uzanıyor. Teoreme göre her sürekli çok değişkenli fonksiyon, tek değişkenli sürekli fonksiyonların belirli bir bileşimi olarak yazılabilir:

f(x₁, …, xₙ) = Σⱼ₌₀²ⁿ Φⱼ( Σᵢ₌₁ⁿ φᵢⱼ(xᵢ) )

Dış fonksiyonlar Φⱼ ve iç fonksiyonlar φᵢⱼ öğrenilebilir olarak tanımlandığında, çok boyutlu bir fonksiyonu tek boyutlu fonksiyonların toplamına indirgemek mümkün. “Çok değişkenli karmaşıklık” sorununu “tek değişkenli fonksiyon öğrenme” sorununa dönüştüren bu teorik sıkıştırma, KAN’ın neden mümkün olduğunu açıklıyor.

MLP (Multilayer Perceptron) da evrensel yaklaşım teoremini karşılar: yeterli gizli katman ve nöronla herhangi bir fonksiyon yaklaşık olarak temsil edilebilir. Fark şu ki MLP bu gücü ağırlık matrislerinde saklıyor; ReLU ya da sigmoid gibi aktivasyon fonksiyonları değişmez. KAN ise aktivasyon fonksiyonlarının kendisini öğrenilebilir kılıyor.

MLP ile KAN: Temel Mimari Fark

İki mimariyi yan yana koyduğumuzda fark şu:

MLP’de her katman şöyle çalışır. Girdi vektörü öğrenilen bir ağırlık matrisiyle çarpılır, ardından sabit bir doğrusal olmayan fonksiyon uygulanır. Bilgi ağırlık matrisindedir. Aktivasyon her katmanda aynı kalır.

KAN’da ise her kenar kendi öğrenilen aktivasyon fonksiyonunu taşır. Düğümler yalnızca toplama yapar. Ağırlık kavramının yerini “aktivasyon şekli” alır ve her kenar üzerinde ayrı bir tek değişkenli fonksiyon öğrenilir.

ÖzellikMLPKAN
Aktivasyon fonksiyonuSabit (ReLU, Sigmoid…)Kenar bazında öğrenilebilir
Parametre konumuKenar ağırlıklarıAktivasyon eğrileri
YorumlanabilirlikDüşükYüksek
Eğitim hızıHızlıYavaş (~10x)
Parametre verimliliğiOrtaYüksek (küçük ağlar için)

Bu mimari kararın iki pratik sonucu var. Öğrenilen fonksiyon grafiksel olarak görselleştirilebilir. Ve küçük ağlarda MLP’ye kıyasla daha az parametreyle benzer başarım elde edilebilir.

B-Spline Aktivasyon Fonksiyonları Nedir?

KAN’ın her kenarı bir B-spline (Basis Spline) fonksiyonuyla parametrize ediliyor. B-spline’lar, belirli kontrol noktaları arasında pürüzsüz geçişler üreten parçalı polinomlardır.

Somut bir örnek üzerinden gidersek: bir sin fonksiyonunu modellemeniz gerekiyor. MLP, birçok ReLU aktivasyonunu üst üste koyarak bu şekle yaklaşmaya çalışır. KAN ise tek bir kenarda kontrol noktalarını güncelleyerek doğrudan bu eğriyi öğrenir.

Teknik formülasyon şöyle yazılıyor:

φ(x) = Σₖ cₖ · Bₖ(x)

Burada Bₖ(x) önceden belirlenmiş temel fonksiyonlar (basis functions), cₖ ise eğitimde öğrenilen katsayılar. Eğitim sırasında ızgara (grid) çözünürlüğü artırılabiliyor. Düşük çözünürlükle başlanıp öğrenilmiş katsayılar daha ince ızgaraya aktarılarak doğruluk kademeli olarak yükseltiliyor. Bu prosedüre “grid extension” deniyor.

Her kenar, giriş aralığındaki herhangi bir sürekli şekli temsil edebilecek esnek bir eğri taşıyor. Bu esneklik hem gücü hem de eğitim yükünü açıklıyor.

KAN’ın Güçlü Yanları

Yorumlanabilirlik

Mekanik yorumlanabilirlik araştırmacıları, bir modelin nasıl karar verdiğini anlamak için genellikle dolaylı yöntemlere başvurmak zorunda kalıyor. Attention head analizi, probing deneyleri, saliency map’ler bunların hepsi model davranışını dışarıdan anlamlandırmaya çalışıyor.

KAN’da bu yol değişiyor. Her kenarın aktivasyon eğrisi doğrudan görselleştirilebiliyor. Hangi girdi değişkeninin çıktıyı nasıl etkilediği o eğrinin şeklinden okunuyor. 2024 makalesinde araştırmacılar, küçük KAN ağlarının öğrendiği fonksiyonları grafiksel olarak inceleyip bunları sin, log, gibi sembolik ifadelere dönüştürebildiklerini gösteriyor. Yani bir KAN ağı, “bu değişkeni karekök aldıktan sonra diğeriyle çarp” gibi okunabilir kurallar üretebiliyor. Teorik fizik ve kimya için bu tür içgörü, kör tahmin gücünden daha kullanışlı.

Parametre Verimliliği

Orijinal KAN makalesindeki deneylerde benzer test hatası için KAN ağları MLP’ye kıyasla daha az parametre kullandı. Knowledge distillation gerektirmeden küçük KAN ağları yeterli sonuçlar üretebildi. Bu kazanım düzenli yapılı bilimsel veride belirgin. Düzensiz büyük veri kümelerinde ise avantaj daralıyor.

Sembolik Regresyon

KAN’ın en özgün yönlerinden biri sembolik regresyonla doğrudan entegrasyonu. Öğrenilen aktivasyon eğrileri bir sembolik kütüphanedeki ifadelerle karşılaştırılıp “en yakın” kapalı-form ifadeye dönüştürülebiliyor. Model, veriden gizli bir fizik denklemini keşfedebiliyor. Orijinal makalede bazı kıyaslama veri kümelerinde bilinen diferansiyel denklemlerin yeniden türetildiği gösterildi. Bu, bilimsel AI için somut bir olanak.

KAN’ın Sınırlamaları

Eğitim Yavaşlığı

Orijinal uygulamada KAN, benzer boyuttaki MLP’ye kıyasla yaklaşık 10 kat daha yavaş eğitiliyor. Bunun nedeni her kenar için ayrı B-spline ızgara hesaplamalarının yapılması zorunluluğu. Mevcut GPU mimarisi matris çarpımı için optimize edilmiş. Parçalı eğri hesaplamaları bu donanım paralelliğinden tam yararlanamıyor. EfficientKAN ve benzeri varyantlar bu açığı kapatmaya çalışıyor ama MLP ile eşdeğer hız henüz yakalanamamış.

Büyük Ölçekte Soru İşaretleri

Transformer mimarisi milyarlarca parametreyle ölçeklendiğinde anlamlı kazanımlar sunuyor. KAN henüz bu ölçekte kapsamlı biçimde test edilmemiş. Büyük dil modellerinde KAN’ın tüm katmanlarına uygulanmasının yorumlanabilirlik ve verimlilik avantajlarını koruyup korumayacağı açık bir araştırma sorusu olarak duruyor.

Ekosistem Olgunluğu

PyTorch ve TensorFlow’un MLP için onlarca yıl boyunca biriktirdiği optimizasyon, kütüphane desteği ve topluluk birikimi KAN için mevcut değil. PyKAN aktif geliştirilmeye devam ediyor; ancak büyük ölçekli üretim kullanımına hazır değil. Kütüphane açıkları, pratik projelerde KAN’ı denemek isteyenlerin önündeki somut bir engel.

KAN 2.0 ve Güncel Gelişmeler

Orijinal makale yayımlandıktan kısa süre sonra araştırmacılar çeşitli varyantlar üzerinde çalışmaya başladı.

Liu ve ekibinin 2024 ortasında yayımladığı KAN 2.0, yorumlanabilirlik araçlarını genişletti. Ağların sembolik ifadelere dönüştürülmesini otomatikleştiren “KAN bilim modu” eklendi.

EfficientKAN, spline tabanlı aktivasyonları daha hesaplama-dostu temsillere çevirerek eğitim yavaşlığını azaltmayı hedefliyor. Günümüz GPU’larının matris işlemleriyle daha iyi çalışıyor. WaveKAN ise B-spline yerine dalgacık (wavelet) temel fonksiyonlarını kullanıyor ve özellikle frekans bilgisi taşıyan verilerde daha kararlı sonuçlar veriyor.

FourierKAN, Fourier temel fonksiyonlarıyla oluşturulan bir varyant ve periyodik yapılı veride avantaj sunuyor. MultKAN ise toplama düğümleri yerine çarpma işlemlerini de kapsayan genişletilmiş versiyon; daha geniş bir fonksiyon sınıfını temsil edebiliyor.

Kullanım alanları: bilimsel AI, PDE çözme, fizik simülasyonu

KAN’ın asıl hedefi büyük dil modellerini geride bırakmak değil. Yapısal bilimsel veride yorumlanabilir model öğrenmek.

PDE (kısmi diferansiyel denklem) çözücüler için öğrenilen fonksiyonun yorumlanabilir olması büyük avantaj. Hangi operatörün hangi bileşeni taşıdığını açıkça görmek, modelin doğruluğunu bağımsız olarak doğrulamayı kolaylaştırıyor.

Moleküler dinamik, kuantum kimya ve akışkanlar mekaniğinde KAN’ın küçük ağlarda okunabilir temsil üretmesi işe yarıyor. Klinik karar destek sistemlerinde “model neden bu tahminde bulunuyor?” sorusu ise standart bir gereksinim. Orada KAN’ın her kenarı incelenebilir aktivasyon eğrisi taşıyor ve bu soruya kısmen yanıt veriyor.

Düzenli yapılı zaman serilerinde de benzer bir fayda var. Öğrenilen periyodik aktivasyon eğrileri, hangi bileşenin tahmine katkı sağladığını görünür kılıyor.

PyKAN ile Pratik Örnek

Basit bir KAN ağını kurup eğitmek birkaç satır kod gerektiriyor:

pip install pykan
import torch
from kan import KAN

# 2 girdi, 1 gizli katman (5 nöron), 1 çıktı
model = KAN(width=[2, 5, 1], grid=5, k=3)

# Rastgele eğitim verisi
x = torch.rand(100, 2)
y = torch.sin(x[:, 0]) + x[:, 1] ** 2

dataset = {'train_input': x, 'train_label': y.unsqueeze(1)}

# Eğitim
model.train(dataset, opt='LBFGS', steps=200, lamb=0.01)

# Aktivasyon eğrilerini görselleştir
model.plot()

# Sembolik ifadeye dönüştür
model.auto_symbolic(lib=['sin', 'x^2', 'exp', 'log'])
print(model.symbolic_formula())

model.plot() her kenarın öğrendiği aktivasyon eğrisini görselleştiren bir grafik üretiyor. auto_symbolic() ise bu eğrileri bilinen fonksiyonlarla eşleştirip sin(x₁) + x₂² gibi kapalı-form bir ifade döndürüyor. Klasik makine öğrenmesi iş akışlarında bu adım mevcut değil; modelin ne öğrendiği genellikle kara kutu olarak kalıyor.

LBFGS optimizasyonunun kullanılması dikkat çekici: MLP standart olarak Adam ya da SGD tercih ederken KAN, B-spline parametrelerinin güncellenmesinde ikinci dereceden yöntemlere daha iyi yanıt veriyor.

LLM Entegrasyonu: KAN + Transformer Mümkün mü?

2024-2025 boyunca birkaç araştırma grubu KAN katmanlarını transformer bloklarına entegre etmeyi denedi.

En yaygın yaklaşım dikkat bloğundaki MLP alt katmanını KAN katmanıyla değiştirmek. Bu hibrit yapı bazı bant daraltılmış görevlerde parametre açısından daha verimli sonuçlar verdi. Büyük ölçek deneyleri henüz sınırlı; eğitim stabilitesi de tartışmalı olmaya devam ediyor.

Daha temkinli bir konum ise KAN’ı transformer’a rakip değil tamamlayıcı olarak görmek: dikkat mekanizması token ilişkilerini yakalamaya devam eder, KAN katmanları ise belirli ara temsilleri yorumlanabilir biçimde dönüştürür. Mamba SSM ile benzer bir diyalog yaşandı; orada da soru “transformer’ın rakibi mi, yoksa tamamlayıcısı mı?” diye sorulmuştu.

Büyük dil modeli bağlamında KAN’ın gerçek katkısı eğer gerçekleşirse tam bağımsız bir dil modeli mimarisi biçiminde değil, model iç dünyasını yorumlanabilir kılan ara temsil katmanlarında ortaya çıkacak.

Teorik zemin kırk yıllık bir matematiğe dayanıyor. Henüz çözülmemiş olan ise ölçek, hız ve ekosistem sorunları. Bu üçü aşılmadan KAN’ın bilimsel AI dışında geniş bir kullanım alanı bulması zor görünüyor.

Kolmogorov-Arnold Networks (KAN) kapak görseli