GNN (Çizge Sinir Ağı)

Düğümler ve kenarlardan oluşan graf verisi üzerinde mesaj geçişiyle öğrenen derin öğrenme mimarisi.

GNN (Graph Neural Network — Çizge Sinir Ağı), düğümler (nodes) ve kenarlar (edges) ile temsil edilen graf yapısındaki veriler üzerinde çalışmak üzere tasarlanmış derin öğrenme mimarileridir. Görüntülerdeki piksel ızgarası veya metindeki dizi yapısının aksine, graflar değişken boyutlardaki düzensiz yapıları doğal olarak ifade edebilir: sosyal ağlar, moleküler yapılar, bilgi grafikleri (knowledge graphs) ve öneri sistemleri bu yapıların başlıca örnekleridir. GNN'lerin temel çalışma mekanizması mesaj geçişi (message passing) adı verilen yinelemeli bir süreçtir. Her katmanda her düğüm, komşu düğümlerden "mesaj" toplayarak kendi temsilini günceller; birden fazla katman uygulandığında her düğüm giderek daha uzak komşuların bilgisini kümüle etmiş olur. Böylece düğümün yerel yapısal konumu ve komşu özellikleri bir arada öğrenilmiş gömmeler (embeddings) halinde kodlanır. GNN'nin önemli türleri arasında Graf Evrişim Ağları (GCN), Graf Dikkat Ağları (GAT) ve GraphSAGE sayılabilir. GCN'ler, evrişim işlemini graflar üzerine genelleştirirken GAT'lar her kenar için ayrı bir dikkat katsayısı öğrenerek farklı komşulara farklı ağırlık verir. GraphSAGE ise ölçeklenebilir büyük graf öğrenmesi için düğüm komşuluklarını örnekleyerek çalışır. 2026 itibarıyla GNN'ler; ilaç keşfi (moleküler etkileşim tahmini), trafik akışı tahmini, sahtekârlık tespiti ve öneri sistemi sıralaması gibi alanlarda aktif olarak kullanılmaktadır. Transformer mimarisi ile GNN'yi birleştiren hibrit yaklaşımlar (Graph Transformer) de giderek yaygınlaşmaktadır.

account_tree GNN Nasıl Çalışır?

GNN'lerin çekirdeğinde mesaj geçişi çerçevesi (message passing framework) yer alır. Her katmanda her düğüm şu üç adımı uygular: 1. **Mesaj üretimi:** Her komşu düğüm, kendi özellik vektörüne ve kenar özelliklerine göre bir mesaj oluşturur. 2. **Toplama:** Düğüm, komşularından gelen tüm mesajları bir fonksiyonla (toplam, ortalama veya maksimum) bir araya getirir. 3. **Güncelleme:** Düğüm, mevcut özellik vektörünü ve toplanan mesajları birleştirerek yeni bir temsil (embedding) hesaplar. Bu süreç k katman boyunca tekrarlandığında her düğüm, k adım uzaklığındaki komşularının bilgisini kapsayan bir temsil edinir. Graf sınıflandırma görevlerinde ise tüm düğüm temsillerinin havuzlanması (graph pooling) ile graf düzeyinde tek bir vektör elde edilir.

Başlıca GNN Türleri

blur_on GCN

Graf Evrişim Ağı — komşu düğüm özelliklerini normalize edilmiş ortalama ile birleştiren temel GNN mimarisi. CNN'nin resimden grafa genelleştirilmesidir.

visibility GAT

Graf Dikkat Ağı — her komşuya öğrenilmiş dikkat katsayısı atar; önemli komşular daha büyük katkı sağlar. Transformer'daki öz-dikkat mekanizmasının graf versiyonudur.

shuffle GraphSAGE

Milyonlarca düğümlü büyük graflar için ölçeklenebilir çerçeve — komşuları örnekleyerek mini-batch eğitimi mümkün kılar.

merge_type Graph Transformer

GNN ve Transformer dikkat mekanizmasını birleştiren hibrit mimari. Uzun menzilli bağımlılıkları daha iyi yakaladığı gösterilmiştir.

quiz Sıkça Sorulan Sorular

  • check_circle GNN ile CNN arasındaki temel fark nedir?: CNN, düzenli piksel ızgaraları üzerinde sabit boyutlu yerel filtreler uygularken GNN, düzensiz topolojilere sahip graflar üzerinde mesaj geçişi yoluyla çalışır. CNN'ler görüntü ve ses gibi Öklid uzayı verilerinde verimlidir; GNN'ler ise sosyal ağlar, moleküller ve bilgi grafikleri gibi ilişkisel yapılar için tasarlanmıştır.
  • check_circle GNN'ler büyük grafları işleyebilir mi?: Standart GNN'ler tüm komşuluğu bellekte tuttuğundan milyonlarca düğümlü graflar sorun çıkarabilir. GraphSAGE, ClusterGCN ve GraphSAINT gibi ölçeklenebilir yöntemler komşuları örnekleyerek veya grafı alt grafları bölerek bu sorunu çözmektedir.
  • check_circle GNN'ler hangi kütüphanelerle kullanılır?: PyTorch tabanlı PyTorch Geometric (PyG) ve DGL (Deep Graph Library) en yaygın çerçevelerdir. PyG, akademik araştırmalarda yaygınken DGL hem PyTorch hem TensorFlow backend'ini destekler.