1 puan yazan GN⁺ 2024-12-21 | 1 yorum | WhatsApp'ta paylaş
  • Graf sinir ağları (GNN), düğüm, kenar, küresel bağlam ve bağlantı yapısını birlikte ele alan modellerdir; düğüm sırası değişse bile aynı grafı aynı anlamla işlemesi gereken veriler için uygundur
  • Moleküller, sosyal ağlar ve atıf ağlarının yanı sıra, görüntülerin piksel ızgaraları ve metin token dizileri de grafik olarak görülebilir; ancak grafiklerin boyutu ve bağlantıları farklı farklı olduğundan genel dizi girdileri gibi ele alınmaları zordur
  • GNN tahmin problemleri, tüm grafik, düğüm ve kenar düzeyi olarak ayrılır; aynı model ailesi, girdi yapısını korurken farklı düzeylerdeki etiketleri tahmin edebilir
  • Temel işlem, komşu düğüm ve kenarların bilgisini toplayıp güncelleyen mesaj iletimi (message passing) işlemidir; birden çok katman üst üste konduğunda daha uzaktaki k-hop komşuların bilgisi de temsile yansır
  • Gerçek performans; katman derinliği, gömme boyutu, toplama fonksiyonu ve düğüm, kenar, küresel temsil arasındaki mesaj akışına bağlıdır; parametre ya da derinliği artırmak her zaman en iyi sonucu vermez

Grafik verisi ve GNN'in temel kavramları

  • Grafik, varlıkları temsil eden düğümlerden (node) ve düğümler arasındaki ilişkileri temsil eden kenarlardan (edge) oluşur
  • Düğümlerde, kenarlarda ve tüm grafikte ek bilgiler saklanabilir
    • Düğümlere atom türü, piksel RGB değeri veya belge gömmesi gibi özellikler eklenebilir
    • Kenarlara bağ türü ya da ilişki türü gibi bilgiler eklenebilir
    • Tüm grafik için küresel bağlam tutulabilir
  • Kenarlar yönlü directed edge veya yönsüz undirected edge olarak ifade edilebilir
  • GNN, düğüm, kenar ve küresel bağlamı öğrenilebilir biçimde dönüştürürken, düğüm sırası değişse bile aynı grafik yapısını aynı anlamla işlemesi gerekir

Grafik olarak ifade edilebilen veriler

  • Görüntüler genellikle 244×244×3 gibi dizilerle ifade edilir; ancak her piksel bir düğüm olarak düşünülüp komşu pikseller kenarlarla bağlandığında bir düzenli grafik olarak da görülebilir
    • Sınırda olmayan piksellerin tam olarak 8 komşusu vardır
    • Her düğümde RGB değerlerini temsil eden 3 boyutlu bir vektör bulunur
  • Metin, karakterleri, kelimeleri veya token'ları düğüm; bir sonraki token'a giden bağlantıları kenar olarak alan bir yönlü grafik olarak görülebilir
    • Bu, RNN'lerin token dizisi temsiliyle ilişkilidir
    • Transformer, token'lar arasındaki ilişkileri öğrenen tam bağlı bir grafik olarak görülebilir
  • Görüntü ve metin yapıları çok düzenli olduğundan, grafik temsili gereksiz ölçüde tekrarlı olabilir
    • Görüntünün komşuluk matrisi, ızgara bağlantısı nedeniyle bant benzeri bir yapı taşır
    • Metnin komşuluk matrisi, her kelime yalnızca önceki ve sonraki kelimeyle bağlı olduğu için diyagonal yapıya yakındır
  • Moleküller, atomları düğüm ve kovalent bağları kenar alan grafiklerle ifade etmek için elverişlidir
    • Tekli bağ, çift bağ gibi bağ türleri nedeniyle atom çiftleri arasındaki mesafeler farklıdır
  • Sosyal ağlar, insanları, kurumları ve organizasyonları düğüm; ilişkileri kenar olarak modellendirir
  • Atıf ağları, makaleleri düğüm ve bir makalenin başka bir makaleye yaptığı atfı yönlü kenar olarak ifade eder
    • Her makale düğümüne özetin kelime gömmeleri gibi bilgiler eklenebilir
  • Bilgisayarlı görüdeki sahne nesneleri, makine öğrenmesi modelleri, programlama kodu ve matematiksel denklemler de değişkenleri veya nesneleri düğüm; işlemleri ya da ilişkileri kenar alan grafiklerle ifade edilebilir

Grafik tahmin problemlerinin üç düzeyi

  • Graph-level task, tüm grafik için tek bir özelliği tahmin eder
    • Bir molekül grafiğinin nasıl koktuğunu ya da hastalıkla ilişkili bir reseptöre bağlanıp bağlanmayacağını tahmin etmek buna örnektir
    • Görüntü sınıflandırma ya da cümle duygu analizi gibi, tüm girdiye tek bir etiket verilir
  • Node-level task, grafik içindeki her düğümün özelliğini veya rolünü tahmin eder
    • Zach'in karate club veri kümesi, politik bir çatışmadan sonra kişilerin hangi kulübe sadık kalacağını düğüm bazında sınıflandıran bir problemdir
    • Görüntü segmentasyonunda her pikselin rolünü etiketleme ya da cümledeki her kelimenin sözcük türünü tahmin etme ile benzerdir
  • Edge-level task, kenarın özelliğini ya da var olup olmadığını tahmin eder
    • Görüntü sahnesi anlamada nesneleri düğüm olarak alıp nesneler arasında ilişki olup olmadığını tahmin etmek buna örnektir
    • Tüm düğüm çiftleri başlangıçta tam bağlı kabul edilip, tahmin sonucuna göre kenarlar kaldırılarak seyrek bir grafik elde edilebilir
  • Grafik üretimi ya da grafik tahmininin açıklanması da ilgili araştırma alanlarıdır

Grafiği sinir ağı girdisi haline getirmenin zorlukları

  • Tipik makine öğrenmesi modelleri dikdörtgen ya da ızgara biçimli dizi girdilerine göre tasarlandığı için, grafiklerin bağlantı yapısını doğrudan vermek zordur
  • Bir grafikte en fazla dört tür bilgi bulunur
    • düğümler
    • kenarlar
    • küresel bağlam
    • bağlantısallık
  • Düğüm, kenar ve küresel bağlam özellik matrislerine dönüştürülebilir; ancak bağlantısallığın temsili daha zordur
  • Komşuluk matrisi tensörleştirmesi kolay olsa da sınırlamaları vardır
    • Grafikteki düğüm sayısı milyonlara çıkabilir
    • Düğüm başına kenar sayısı çok değişebilir
    • Komşuluk matrisi çok seyrek hale gelir ve alan verimliliği düşer
    • Aynı grafik bağlantısı birden fazla komşuluk matrisiyle temsil edilebilir; bu yüzden sinir ağının her zaman aynı sonucu vereceği garanti değildir
  • Komşuluk listesi, seyrek grafikler için daha uygundur
    • e_k kenarının n_i ile n_j düğümlerini bağladığı bilgi (i, j) ikilisi olarak saklanır
    • Komşuluk matrisindeki O(n_nodes^2) yerine, kenar sayısıyla orantılı O(n_edges) temsil mümkündür
  • Gerçek tensör temsilinde düğüm, kenar ve küresel değerler skaler değil vektördür
    • Düğüm tensörü [n_nodes] değil, [n_nodes, node_dim] biçimindedir

GNN katmanları ve pooling

  • En basit GNN, henüz grafik bağlantısını kullanmadan düğüm, kenar ve küresel bağlamın her birine ayrı birer MLP uygulayarak yeni gömmeler öğrenir
    • Her düğüm vektörü aynı şekilde güncellenir
    • Her kenar vektörü de güncellenir
    • Küresel bağlam vektörü de tek bir gömme olarak güncellenir
  • GNN, giriş grafiğinin bağlantı yapısını değiştirmez
    • Çıktı grafiği aynı komşuluk listesini ve aynı sayıda özellik vektörünü korur
    • Değişen şey, düğüm, kenar ve küresel bağlam gömmeleridir
  • Tahmin için pooling kullanılır
    • Toplanacak temsiller gather edilip bir matriste birleştirilir
    • Toplanan temsiller genellikle sum gibi bir işlemle aggregate edilir
  • Düğüm tahmininde düğüm bilgisi zaten varsa, her düğüm gömmesine doğrusal bir sınıflandırıcı uygulanabilir
  • Düğüm tahmini için gereken bilgi yalnızca kenarlardaysa, kenar bilgisi düğümlere pooling ile aktarılmalıdır
  • Kenar tahmini için gereken bilgi yalnızca düğümlerdeyse, düğüm bilgisi kenarlara toplanarak tahminde kullanılır
  • Tüm grafik tahmininde, tüm düğüm veya kenar bilgileri toplanıp küresel bir temsile dönüştürülür
    • Bu, CNN'deki Global Average Pooling ile benzer bir rol oynar
    • Molekülün toksik olup olmadığı ya da belirli bir kokuya sahip olup olmadığı tahmini buna örnektir

Mesaj iletimiyle bağlantı yapısından yararlanmak

  • Basit GNN, katman içinde grafik bağlantısını kullanmaz; bağlantıyı yalnızca tahminden hemen önce yapılan pooling aşamasında kullanır
  • Daha güçlü GNN'ler, katman içinde mesaj iletimi (message passing) yaparak bağlantı yapısını gömme güncellemelerine yansıtır
  • Mesaj iletimi üç adımda çalışır
    • Her düğüm, komşu düğümlerin gömmelerini ya da mesajlarını gather eder
    • Mesajlar sum gibi bir toplama fonksiyonuyla aggregate edilir
    • Toplanan mesajlar, öğrenilebilir bir güncelleme fonksiyonundan geçirilir
  • Mesaj iletimi, standart evrişime benzer
    • Görüntülerde piksel, sabit sayıda komşu piksel bilgisini toplar
    • Grafiklerde düğüm, değişken sayıda komşu düğüm bilgisini toplar
  • Birden fazla GNN katmanı üst üste konduğunda daha uzaktaki düğümlerin bilgisi de yansıtılır
    • 3 katmandan sonra bir düğüm, kendisinden 3 adım uzaktaki düğümlerin bilgisini içerebilir
  • Mesaj iletimi yalnızca düğümler arasında değil; kenarlar arasında ve düğümlerle kenarlar arasında da yapılabilir

Kenar temsilleri ve küresel temsiller

  • Veri kümesi her zaman düğüm, kenar ve küresel bağlam bilgisinin tümünü içermeyebilir
  • Yalnızca kenar bilgisi olup düğüm tahmini gerekiyorsa, kenar bilgisi pooling ile düğümlere aktarılabilir
  • Düğüm ve kenar bilgileri boyut ya da biçim açısından farklı olabilir; bu nedenle birleştirme biçimi tasarım kararıdır
    • Kenar uzayından düğüm uzayına ya da tersine doğrusal eşleme öğrenilebilir
    • İki temsil birleştirilip ardından güncelleme fonksiyonuna verilebilir
  • Hangi grafik özelliğinin hangi sırayla güncelleneceği GNN tasarımının bir parçasıdır
    • Önce düğümler, sonra kenarlar güncellenebilir
    • Önce kenarlar, sonra düğümler güncellenebilir
    • node-to-node, edge-to-edge, node-to-edge, edge-to-node temsillerini birleştiren weave yaklaşımı da mümkündür
  • Birbirinden uzakta olan düğümler arasında, birkaç kez mesaj iletilse bile verimli bilgi aktarımı zor olabilir
    • k katmanda bilgi en fazla k adım yayılabilir
  • Küresel temsil U, master node ya da bağlam vektörü gibi tüm düğüm ve kenarlara bağlı bir rol üstlenebilir
    • Uzak düğüm ve kenarlar arasında bilgi aktarımı için köprü görevi görür
    • Tüm grafik için daha zengin bir temsil oluşturabilir
  • Yeni düğüm gömmesi, komşu düğümler, bağlı kenarlar ve küresel bilgiler birleştirilerek koşullandırılabilir
    • Doğrusal eşlemeden sonra toplama ya da feature-wise modulation uygulanması da mümkündür

GNN Playground ve moleküler koku tahmini örneği

  • GNN Playground, küçük molekül grafiklerinde graph-level tahmin problemlerini ele alır
  • Veri, Leffingwell Odor Dataset'tir ve moleküller ile koku algısı etiketlerini içerir
  • Deney, molekül grafiğinin “pungent” kokup kokmadığını tek bir ikili etiketle sınıflandırır
    • pungent, güçlü ve belirgin bir kokuyu ifade eder
    • allyl alcohol içerebilen sarımsak ve hardal ile, peppermint-flavored candy içinde kullanılan piperitone buna örnektir
  • Moleküller, atomları düğüm ve bağları kenar olarak ifade eder
    • Düğümler, Carbon, Nitrogen, Oxygen ve Fluorine atom kimliğini one-hot encoding ile taşır
    • Kenarlar, single, double, triple, aromatic bağ türlerini one-hot encoding ile taşır
  • Model şablonu, art arda gelen GNN katmanlarının ardından sigmoid aktivasyonlu doğrusal bir model eklenmesi biçimindedir
  • Tasarım seçenekleri dört eksende kontrol edilir
    • GNN katman sayısı, yani derinlik
    • Her özelliğin gömme boyutu
    • Pooling için toplama fonksiyonu: max, mean, sum
    • Düğüm, kenar ve küresel temsillerden hangilerinin güncelleneceği ve mesaj iletimine katılacağı
  • Tarayıcıda çalışan Playground, tfjs üzerinde çalışır
  • Yüksek boyutlu graph embedding, PCA ile 2D'ye indirgenerek karar sınırı çevresindeki temsiller görselleştirilir

Deneylerde görülen GNN tasarım eğilimleri

  • Performans; veri, grafiğin nasıl kurulduğu ve özelliklerin nasıl çıkarıldığına göre değişir
  • Parametre sayısı arttıkça performansla bir ilişki görülse de, GNN'lerde az sayıda parametreyle de yüksek performanslı modeller bulunabildi
    • Yaklaşık 3k parametreyle bile yüksek performanslı modeller bulundu
  • Gömme boyutu arttıkça ortalama performansın ve alt sınır performansının iyileştiği görüldü; ancak en iyi model küçük boyutlarda da çıkabildi
  • Katman sayısı arttıkça ortalama performans yükselme eğilimindeydi; ancak en iyi model 3 ya da 4 katmanda değil, 2 katmanda elde edildi
    • 4 katmanda performansın alt sınırı düştü
    • Daha fazla katman, bilginin daha uzağa yayılmasını sağlasa da düğüm temsillerinin tekrar tekrar seyrelmesi riskini taşır
  • Toplama fonksiyonlarında sum, ortalama performansta çok az daha iyi görünse de max ve mean ile de aynı derecede iyi modeller üretilebildi
  • Düğüm, kenar ve küresel özellikler arasında mesaj aktarımı arttıkça ortalama model performansının yükselme eğiliminde olduğu görüldü
    • Bu görev küresel temsil ağırlıklı olduğundan, küresel özelliğin açıkça öğrenilmesi performansı artırma eğilimindeydi
    • Düğüm temsilleri, kenar temsillerinden daha faydalı görünüyordu; çünkü daha fazla bilgi düğüm özelliklerinde bulunuyordu

Daha karmaşık grafikler ve batch eğitimi

  • Mesaj iletimi çerçevesi, daha karmaşık grafik yapılarına da uygulanabilir
  • Multigraph yapısında aynı düğüm çifti birden fazla türde kenar paylaşabilir
    • Sosyal ağlarda acquaintance, friend, family gibi ilişki türleri kenar türü olabilir
    • Her kenar türü için farklı mesaj iletimi adımları tanımlanabilir
  • nested graph yapısında bir düğüm yeniden bir grafiği temsil edebilir
    • Molekül ağlarında düğüm bir molekülü, kenar ise bir molekülü başka bir moleküle dönüştüren reaksiyonu temsil edebilir
    • Molekül düzeyindeki GNN ile reaksiyon ağı düzeyindeki GNN dönüşümlü olarak eğitilebilir
  • hypergraph yapısında bir kenar iki değil, birden fazla düğüme bağlanabilir
    • Düğüm toplulukları belirlenip tüm topluluğa bağlı bir hyper-edge tanımlanabilir
  • Grafiklerde düğüm ve kenar sayısı sabit olmadığından, tipik sabit boyutlu mini-batch eğitimi zordur
  • Grafik batch eğitiminin özü, büyük grafiğin önemli özelliklerini koruyan alt grafikler (subgraph) oluşturmaktır
    • Atıf ağlarında alt grafik örnekleme doğal olabilir
    • Moleküllerde ise alt grafik, yeni ve daha küçük bir molekül anlamına geleceğinden güçlü bir müdahale olabilir
  • Büyük grafik belleğe sığmadığında grafik örnekleme özellikle önemlidir
    • Cluster-GCN ve GraphSaint gibi yapılar ve eğitim stratejileri bununla ilişkilidir

Grafiğe uygun tümevarımsal önyargı

  • Modeller, verideki simetri ve düzenlilikten yararlanacak şekilde tasarlandığında daha iyi tahmin performansı, daha kısa eğitim süresi, daha az parametre ve daha iyi genelleme sağlayabilir
  • Görüntü modelleri, nesnenin görüntünün neresinde olduğundan bağımsız olarak aynı nesne kalması özelliğinden yararlanmak için çeviri değişmez (translation invariant) evrişimler kullanır
  • Metinde token sırası önemli olduğundan, RNN'ler veriyi sıralı işler; Transformer tabanlı modeller ise cümlenin farklı bölümlerine dikkat edebilir
  • Grafiklerde kenar, düğüm ve küresel öğeler arasındaki ilişkiler önemli olduğundan ilişkisel tümevarımsal önyargı gerekir
    • Komşuluk yapısı gibi açık ilişkiler korunmalıdır
    • Grafik simetrisi olan permütasyon değişmezliği korunmalıdır
    • Düğüm veya kenar sırasından bağımsız çalışmalı ve değişken sayıda girdiyi işleyebilmelidir

Toplama işleminin seçimi

  • Komşu düğüm ve kenar bilgisini pooling ile toplamak, güçlü GNN mimarilerinin temel adımlarından biridir
  • Her düğümün komşu sayısı farklıdır ve giriş sırasından bağımsız olmak gerekir; bu yüzden türevlenebilir ve permütasyon değişmez bir toplama fonksiyonu gerekir
  • Yaygın adaylar sum, mean, max fonksiyonlarıdır
    • Üçü de değişken sayıda girdi alır ve girdi sırasından bağımsız çıktı üretir
  • Belirli bir işlem her zaman en iyisi değildir
    • mean, komşu sayıları çok değiştiğinde veya yerel komşu özelliklerine normalize bir bakış gerektiğinde faydalıdır
    • max, yerel komşuluk içindeki baskın tek bir özelliği vurgulamak gerektiğinde faydalıdır
    • sum, yerel özellik dağılımını gösterirken normalize edilmediği için aykırı değerleri de vurgulayabilir
  • Uygulamada sıkça sum kullanılır
  • Principal Neighborhood Aggregation, birden çok toplama işlemini yan yana bağlar ve bağlantı derecesine göre değişen bir ölçekleme fonksiyonu ekler
  • Tetrahedral Chirality gibi alan-özgü toplama işlemleri de tasarlanabilir

GCN, matris çarpımı ve grafik dolaşımı

  • k katmanlı ve 1-degree komşu taramasına sahip bir GCN veya MPNN, boyutu k olan alt grafik gömmeleri üzerinde çalışan bir sinir ağı olarak görülebilir
    • Bir düğümün güncellenmiş temsili, k uzaklık içindeki komşu bilgisini sınırlı biçimde yansıtır
    • Kenar temsili de aynı şekilde yorumlanabilir
  • Komşuluk matrisi A ile düğüm özellik matrisi X çarpımı olan AX, sum toplaması kullanan basit mesaj iletimini gerçekleştirir
    • A_i,k pozitifse, node_i ile node_k arasında bir kenar vardır
    • Matris çarpımı, komşu düğümlerin belirli özellik boyutlarındaki değerlerini toplama işlemi olarak görülebilir
  • Seyrek A durumunda, tüm sıfır terimleri toplamak gerekmediğinden komşuluk listesi daha verimlidir
  • Komşuluk listesi tabanlı uygulama, sum dışındaki toplama işlemlerini kullanmak için de avantajlıdır
  • Komşuluk matrisinin kuvvetleri olan A^K, uzunluğu K olan yürüyüşlerle ilişkilidir
    • A^2_ij, node_i ile node_j arasında uzunluğu 2 olan yürüyüşlerin sayısını verir
    • Bu sezgi A^3'ten A^k'ye kadar devam eder

Attention, açıklanabilirlik ve üretici modeller

  • Graph Attention Networks, komşu bilgisini basitçe toplamak yerine ağırlıklı toplam ile bir araya getirir
    • f(node_i, node_j) skor fonksiyonu, merkez düğüm ile komşu düğüm arasındaki ilişkiyi hesaplar
    • softmax ile ağırlıklar normalize edilerek görev için önemli komşulara daha yüksek ağırlık verilebilir
    • Çift bazlı skor hesaplaması, permütasyon değişmezliğini korur
  • Transformer, attention mekanizmasına sahip bir GNN olarak görülebilir
    • Karakter token'ları gibi öğeleri tam bağlı bir grafiğin düğümleri olarak modeller
    • Attention, her düğüm çifti için kenar gömmesi ve ağırlık hesaplar
    • Fark, GNN'in seyrek bağlantı desenini varsayması, Transformer'ın ise tüm bağlantıları modellemesidir
  • GNN açıklanabilirliği; model güvenilirliği, hata ayıklama ve bilimsel keşif açısından önemli olabilir
    • Moleküllerde belirli bir alt grafiğin varlığı önemli olabilir
    • Atıf ağlarında bir makalenin bağlantı düzeyi önemli olabilir
    • GNNExplainer, görev için önemli ilgili alt grafikleri çıkarmaya odaklanan bir yaklaşımdır
    • Attribution teknikleri, grafiğin bazı parçalarına önem sıralaması verir
  • Grafik üretim modelleri, öğrenilen dağılımdan yeni grafikler örnekleyebilir ya da verilen başlangıç noktasından grafiği tamamlayabilir
    • Belirli özelliklere sahip yeni molekül grafikleri tasarlayarak ilaç adayı üretme uygulamaları vardır
  • Grafik üretimindeki temel zorluk, grafik topolojisini modellemektir
    • Topoloji büyük ölçüde değişebilir ve N_nodes^2 terimi içerebilir
    • Komşuluk matrisi, bir görüntü gibi autoencoder ile doğrudan modellenebilir
    • Yalnızca var olan kenarlar ve var olmayan kenarların bir kısmı tahmin edilerek N_nodes^2 yükü azaltılabilir
    • Başka bir yaklaşım ise düğüm ve kenar ekleme/silme gibi ayrık eylemleri yineleyerek grafiği sıralı şekilde oluşturmaktır

Özet

  • Grafikler, görüntü ve metinden farklı güçlü yönlere ve kısıtlara sahip yapısal bir veri türüdür
  • GNN'ler, grafiklerin düğüm, kenar ve küresel bağlamını güncellerken bağlantı yapısını ve permütasyon değişmezliğini ele alır
  • Pooling, mesaj iletimi, kenar temsilleri, küresel temsiller ve toplama fonksiyonu seçimi GNN tasarımının temel bileşenleridir
  • Gerçek performans; derinlik, boyut ve parametre sayısının yanı sıra, hangi grafik özelliklerinin birbiriyle mesajlaştığına ve grafiğin nasıl kurulduğuna da büyük ölçüde bağlıdır

1 yorum

 
GN⁺ 2024-12-21
Hacker News yorumları
  • Fizik simülasyonlarında (ör. hesaplamalı akışkanlar dinamiği) GNN kullanan çok sayıda makale var. Bunun nedeni, bu tür uygulamalarda problem uzayını ayrıklaştıran yapılandırılmamış meshlerin grafik yapısına çok iyi uyması
    Pratikte ise her mesh/grafik çoğu zaman tek bir belirli problemi çözmek için bir kez kullanılıyor; bu yüzden belirli bir grafiğe özel GNN eğitmenin çok da anlamı yok. Buna rağmen çoğu makalenin bunu yapmasının nedeni, farklı mesh/grafiklere ve simülasyon parametrelerine iyi uyum sağlayan GNN’leri nasıl yapacağımızı hâlâ bulamamış olmamız gibi görünüyor. Bu tür genelleştirmeyi mümkün kılacak atılımın yakında gelip gelmeyeceğini merak ediyorum

    • Bir cümlenin içindeki ve çevresindeki kelimeler de başka kelimelere referans veren ya da kendilerine referans verilen yaprak düğümler gibi davranarak bir tür grafik oluşturuyor gibi görünüyor. Modern LLM’lerde attention mekanizmasının başarılı olduğunu görünce, LLM’leri gerçek grafik işleme için eğitsek ne kadar iyi olacaklarını merak ediyorum
      En iyi performans için muhtemelen farklı bir tokenizer gerekir
    • Genel amaçlı grafik çözücü, genel zeka olmak zorunda olurdu. Çünkü kategori teorisini bile başarılı biçimde modelleyebilirdi
  • Çalışmanın kalitesi çok yüksek, ama distill.pub’ın sürdürülebilir bir yol bulamamış olması üzücü [1]
    GNN’lerin daha az konuşulmasının nedenlerinden biri veri kümesi eksikliği olabilir [2]. Bu, semantik web alanını da etkilemiş bir sorundu
    [1] https://distill.pub/2021/distill-hiatus/
    [2] https://huggingface.co/datasets?task_categories=task_categor...

    • Kişisel bir yöntem olarak, bilmediğim bir alandaki makalelere doğrudan dalmadan önce YouTube’da “ explained” diye aratıyorum
      Alan popülerse, kısa ve sürükleyici videolar üretmek için teşviki olan çok insan oluyor; bu yüzden oldukça soyut matematik düzeylerinde bile kalite çoğu zaman iyi oluyor. Görseller, soyut kavramlara dair sezgi geliştirmede gerçekten yardımcı oluyor ve 3Blue1Brown bunu zaten kanıtladı. GNN konusunda da 10 dakikadan kısa birkaç iyi video izlemek, literatüre girmek için bir basamak sağlıyor
    • Dürüst olmak gerekirse, bunun ana sayfaya çıktığını görünce distill’in ilerlemek için bir yol bulduğunu sanıp heyecanlanmıştım, ama öyle değilmiş
  • GNN’ler beni kişisel olarak oldukça hayal kırıklığına uğrattı. Araştırmalarımda birkaç kez uygulamayı denedim ama hiç gerçekten iyi sonuç alamadım
    Uzun süre boyunca GNN’ler, CNN’lerin bir genellemesi gibi sunuldu; ama CNN’ler daha güçlü, çünkü “komşu ağırlıkları” daha anlamlı. Bunun nedeni göreli konum ilişkilerini öğrenmeleri. GNN’ler ise genelde burada açıklandığı gibi pooling’e dayanıyor. CNN’ler görüntü üretebilir, ama GNN ile grafik üretmek kolay değil. Topoloji hâlâ önceden belirlenmek zorunda ve bazen eğitim sırasında da belirlenmesi gerekiyor. Son darbeyi ise performans vuruyor. GNN’ler, CNN’lere kıyasla inanılmaz derecede yavaş
    Bugünlerde bu nedenlerle attention’ın GNN’lerin yerini büyük ölçüde aldığını hissediyorum. Pooling yerine attention kullanan GNN’ler de yapılabilir, ama çok anlamlı görünmüyor. Genelde grafik sadece mask matrix oluşturmak için dolaşılıyor, geri kalan her şeyde sıradan transformer kullanılıyor. Hatta baştan bir mesafe metriği varsa, grafik komşuluğuna bile ihtiyaç olmayan birçok durum var
    Elbette bir yerlerde birileri için GNN çok faydalıdır, ama benim deneyimimde daha çok çivi arayan bir çekice benziyordu

    • GNN’in faydalı olduğu en az bir durum var. Veri, etkileşimlerin tek bir veri öğesini tanımladığı bir atom kümesiyse; bu küme attention ile kabaca geçiştirilemeyecek kadar büyükse; kümenin içinde etkileşimlerle tanımlanan bir komşuluk/geometrik yapı varsa; bunu korumak veriye permütasyon eşdeğerliği kazandırıyorsa; ama bu geometrik yapıyı örtük olarak ifade etmenin anlamlı bir yolunu bulamıyorsanız. Örneğin yapı her örnekte değişiyorsa, komşuluk/etkileşim yapısını girdi olarak verip öyle işlersiniz
      Neredeyse diğer tüm durumlarda, ek yapıyı kullanarak daha verimli yöntemler kurabilirsiniz. Bir sıra tanımlanabiliyorsa sıralı modeller, Öklidyen/Riemannyen yapı varsa CNN ya da manifold farkındalıklı modeller, küresel durum gerekmiyorsa point cloud ağları, açık bir hiyerarşi varsa o modalitenin U-Net türü bir sürümü gibi
      GNN’leri ilginç kılan şey, 1) ilişki kavramının kendisini kodlamaları ve 2) tamamen genel ayrıklaştırılmış diferansiyel denklemlerle iyi bir ilişkiye sahip olmaları. Karmaşık sistemler/dinamik sistemler tarafından bakan biri için bu ilginç, ama özelleştirme mümkünse daha kolay yöntemler yine var
    • Vision gibi düzenli verilerle mi uğraşıldığını merak ediyorum
      Saydığınız nedenlerden dolayı, GNN’lerin recommendation gibi alanlarda — yani alan modelinin kendisinin zaten grafik gibi hissettirdiği yerlerde — daha popüler olması tesadüf değil bence. Bu tür alanlarda faydalı bir topolojiye sıçrama daha küçük oluyor
      Benim için daha da sinir bozucu olan, bu grafik benzeri alanların çoğunun log gibi davranış tabanlı makine/insan verisi olması ve çok sayıda kategorik boyut içermesi. Grafik kısmı yardımcı oluyor, ama kategorik boyutları iyi yakalamak da aynı derecede önemli ve bunu iyi yapmak için çoğu zaman random forest gibi model dışı yöntemlere kayılıyor. Bunlarla başlamak daha kolay ve GNN kısmı “biraz daha iyi iyileştirme” uğruna iş yükünü çok artırıyor
      Tabii bu sizin temel işinizse ve işin ucunda milyonlarca dolar varsa, bu haklı görülebilir. Yine de çoğu operasyon ekibi için zor. Gerçekte ise pygraphistry kullanıcılarıyla konuşup xgboost + umap gibi şeyler yapıp geçildiğini sık görüyorum. Sadece RGCN’i iyi çalıştırmak bile epey emek istiyor
    • Google’ın GraphCast modeli bir GNN: https://deepmind.google/discover/blog/graphcast-ai-model-for...
    • Bende de benzer oldu. Sayfa etiket tahmini yaparken HTML yapısını hesaba katmak gibi, daha önce “düz” modellerin kullanıldığı problemlerde GNN önerisini çok gördüm. Kâğıt üstünde gerçekten çok uygun görünen durumlarda bile iyi sonuç vermedi
    • Biyolojide GNN’leri takip ettim ve birkaç alana uygulamayı denedim, ama şu ana kadarki sonuçlar hayal kırıklığı yarattı. Biyolojide başka grafik tabanlı yaklaşımları başarıyla kullandığım için bu biraz şaşırtıcıydı
  • GNN’ler sanki sabit bir topoloji üzerinde çalışıyor gibi görünüyor. Grafik topolojisinin bir dönüşümünü yaklaştırmak istesek ne yapmalıyız? Örneğin grafik yerleşimini öğrenmek ya da bir programın soyut sözdizimi ağacını veri akış grafiğine dönüştürmek gibi durumlarda?

  • GNN'nin özü, “komşu” kavramını topolojiyi belirleyen bir grafik üzerinden açıkça koşullandırarak keyfi topolojilere genellemesidir. Grafik yerleşimi burada denendi ve https://github.com/limbo018/DREAMPlace büyük ilgi gördü, ancak son dönemde bununla ilgili tartışmalar da var https://www.semanticscholar.org/paper/The-False-Dawn%3A-Reev...
    Grafik dönüşümü de araştırılıyor https://arxiv.org/abs/2012.01470. Ancak bunun örtük olarak graf eşleme problemini çözmeyi gerektirmesi nedeniyle zor bir problem.

    • Homoloji işe yarayabilir. Ayrık yapılar için bir tür kalkülüs gibi düşünülebilir; zaman içinde N boyutlu kaç boşluk olduğunu sayma yöntemidir. Sinir ağları konusunda emin değilim ama fMRI'da bu şekilde kullanılabilir.
  • distill'in geri dönmesi güzel olurdu

  • distill.pub'ın artık yeni gönderi kabul etmemesi gerçekten üzücü

  • O interaktif görselleştirme yazılımının ne olduğunu merak ediyorum. D3.js mi?

  • Kendimi fazlasıyla aptal hissediyorum. O sayfada 4 düğümlü (a,b,c,d) bir örnek var ve toplam 24 olası kombinasyon olduğunu gösteriyor
    Düğüm sayısı verildiğinde ve kenarlar da hesaba katıldığında bunu hesaplayan genelleştirilmiş formülün ne olduğunu merak ediyorum. Yazıda açıklanmıyor gibi görünüyor; muhtemelen faktöriyel olabilir diye düşünüyorum.

    • Kombinatorik genellikle faktöriyel ile hızlıca hesaplanabilir. 4 olası seçenek varsa ve her durumda bu 4'ünü de tam olarak birer kez seçiyorsanız, bu 4!'tür. Sezgisel olarak, ilk seçimde 4 seçenek vardır, sonra 3, ardından 2 ve son olarak 1 kalır. Bu yüzden 4 * 3 * 2 * 1 = 24 olur
      Buna daha alışmak istiyorsanız, şu site oldukça iyi bir genel bakış sunuyor gibi görünüyor: https://www.geeksforgeeks.org/mathematics-combinatorics-basi...
    • Bu, binom katsayısı ya da iç içe binom katsayılarıyla hesaplanabilir gibi görünüyor. Örneğin (n choose 4) gibi
      Her kenar ya var olabilir ya da olmayabilir, bu yüzden binom katsayısını 2 ile çarpmak da gerekebilir.