Grafovska neuronska mreža

**Grafovske neuronske mreže** ( **GNN, Graph Neural Network** ) su specijalizirane veštačke neuronske mreže dizajnirane za zadatke čiji su ulazni podaci grafovi.

Jedan istaknuti primjer je molekularni dizajn lijekova. Svaki ulazni uzorak je grafički prikaz molekule, gdje atomi formiraju čvorove, a hemijske veze između atoma formiraju grane.Osim grafičkog prikaza, ulazni podaci sadrže i poznata hemijska svojstva svakog atoma.. Uzorci iz skupa podataka stoga se mogu razlikovati po dužini, što odražava različite brojeve atoma u molekulama i različiti broj veza između njih. Zadatak je predvidjeti efikasnost date molekule za određenu medicinsku primjenu, poput eliminacije bakterije *E. coli* .

Ključni element dizajna GNN-ova je korištenje *parnog prenošenja poruka*, tako da čvorovi grafa iterativno ažuriraju svoje reprezentacije razmjenjujući informacije sa svojim susjedima. Predloženo je nekoliko GNN arhitektura, koje implementiraju različite vrste prenošenja poruka, počevši od rekurzivnih
mini|Osnovni komponente grafovske neuronske mreže (GNM). (1) Permutacijsko ekvivarijantni sloj. (2) Lokalni sloj združivanja. (3) Sloj globalnog združivanja (ili očitavanja). Boje označavaju karakteristike .
U širem kontekstu "geometrijskog dubokog učenja", određene postojeće arhitekture neuronskih mreža mogu se interpretirati kao GNN-ovi koji rade na odgovarajuće definiranim grafovima.  društvene mreže,  citatne mreže,  molekularnu biologiju, hemiju, fiziku  i NP-teške probleme kombinatorne optimizacije.

Biblioteke otvorenog koda koje implementiraju GNN-ove uključuju PyTorch Geometric  ( PyTorch ), TensorFlow GNN ( TensorFlow ), Deep Graph Library (nezavisna od okvira), jraph ( Google JAX ) i GraphNeuralNetworks.jl /GeometricFlux.jl ( Julia, Flux ).

## Arhitektura 
Arhitektura generičkog GNN-a implementira sljedeće osnovne slojeve :

# Permutacijsko ekvivarijantni sloj : permutacijsko ekvivarijantni sloj preslikava reprezentaciju grafa u ažuriranu reprezentaciju istog grafa. U literaturi, permutacijski ekvivarijantni slojevi se implementiraju putem parnog prijenosa poruka između čvorova grafa.  i grupiranje samo-pažnje.
# Globalno grupiranje: sloj globalnog grupiranja, također poznat kao sloj *za očitavanje*, pruža reprezentaciju cijelog grafa fiksne veličine. Sloj globalnog grupiranja mora biti invarijantan u odnosu na permutacije, tako da permutacije u redoslijedu čvorova i grana grafa ne mijenjaju konačni izlaz. Primjeri uključuju zbir po elementima, srednju vrijednost ili maksimum.

Dokazano je da GNN-ovi ne mogu biti izražajniji od Weisfeiler-Lemanovog testa izomorfizma grafova. U praksi, to znači da postoje različite strukture grafova (npr. molekule s istim atomima, ali različitim vezama ) koje GNN-ovi ne mogu razlikovati. Mogu se dizajnirati moćniji GNN-ovi koji djeluju na geometrijama viših dimenzija, kao što su simplicijalni kompleksi. Prema podacima iz 2022,  da li će buduće arhitekture prevazići primitivnost prenosa poruka, ostaje nejasno.  i prekomjernog zgnječenja. Prekomjerno zaglađivanje se odnosi na problem nerazlučivosti reprezentacija čvorova. Prekomjerno zgnječenje se odnosi na problem koji nastaje stiskanjem dugodometnih zavisnosti u reprezentacije fiksne veličine. Protivmjere poput preskakanja veza (kao u rezidualnim neuronskim mrežama ), pravila ažuriranja sa zatvaračima i preskakanje znanja mogu ublažiti prekomjerno zaglađivanje. Modificiranje konačnog sloja da bude potpuno susjedni sloj, tj. razmatranjem grafa kao kompletni graf, može ublažiti prekomjerno zgnječenje u problemima gdje su potrebne dugodometne zavisnosti. i mreže pažnje grafova, Međutim, nedavni rad je identificirao netrivijalni skup skupova podataka gdje performanse GNN-a u poređenju s NN-ovima nisu zadovoljavajuće. Heterofilija, tj. niska homofilija, smatra se glavnim uzrokom ovog empirijskog zapažanja.  Ljudi su počeli preispitivati i ponovo procjenjivati većinu postojećih modela grafova u scenariju heterofilije na različitim vrstama grafova, npr. heterogenim grafovima, vremenskim grafovima i hipergrafovima . Štaviše, utvrđeno je da su brojne primjene vezane za grafove usko povezane s problemom heterofilije, npr. otkrivanje prevare/anomalija na grafovima, napadi i robusnost na grafovima, privatnost, federirano učenje i segmentacija oblaka tačaka, klasterovanje grafova, sistemi preporuka, generativni modeli, predviđanje veza, klasifikacija i bojenje grafova itd. U posljednjih nekoliko godina, značajan napor je uložen u proučavanje i rješavanje problema heterofilije u učenju grafova.

## Primjene 
### Savijanje proteina 
Grafovske neuronske mreže su jedan od glavnih gradivnih blokova AlphaFolda, programa veštačke inteligencije koji je razvio Google-ov DeepMind za rješavanje problema savijanja proteina u biologiji . AlphaFold je osvojio prvo mjesto na nekoliko CASP takmičenja.

### Društvene mreže 
Društvene mreže su glavna domena primjene GNN-ova zbog njihove prirodne reprezentacije kao društveni grafovai. GNN-ovi se koriste za razvoj sistema preporuka zasnovanih i na društvenim odnosima i na odnosima među elementima.

### Kombinatorna optimizacija 
GNN-ovi se koriste kao osnovni gradivni blokovi za nekoliko kombinatornih optimizacijskih algoritama. Primjeri uključuju izračunavanje najkraćih puteva ili Eulerovih kola za dati graf, i poboljšanje pravila grananja koje su dizajnirali stručnjaci u metodi grananja i ograničavanja.

### Kibernetička sigurnost 
Kada se posmatra kao graf, mreža računara može se analizirati pomoću GNN-ova radi otkrivanja anomalija. Anomalije unutar grafova porijekla često su u korelaciji sa zlonamjernim aktivnostima unutar mreže. GNN-ovi su korišteni za identifikaciju ovih anomalija na pojedinačnim čvorovima  i unutar putanja radi otkrivanja zlonamjernih procesa ili na nivou grane radi otkrivanja lateralnog kretanja .

### Mreže za distribuciju vode 
Sistemi distribucije vode mogu se modelirati kao grafovi, što je onda jednostavna primjena GNN-a. Ova vrsta algoritma primijenjena je za predviđanje potražnje za vodom, međusobno povezujući područja okružnog mjerenja (DMA, District Metered Areas) radi poboljšanja kapaciteta predviđanja. Druga primjena ovog algoritma na modeliranje distribucije vode je razvoj metamodela.

### Računarski vid 
Da bi se slika predstavila kao graf, slika se prvo dijeli na više dijelova, od kojih se svaki tretira kao čvor u grafu. Grane se zatim formiraju povezivanjem svakog čvora sa njegovim najbližim susjedima na osnovu prostorne sličnosti ili sličnosti karakteristika. Ova reprezentacija zasnovana na grafu omogućava primjenu modela učenja grafova na vizualne zadatke. Relaciona struktura pomaže u poboljšanju ekstrakcije karakteristika i poboljšanju performansi razumijevanja slike.

### Tekst i NLP 
Grafovski prikaz teksta pomaže u hvatanju dubljih semantičkih odnosa između riječi. Mnoge studije su koristile grafovske mreže za poboljšanje performansi u raznim zadacima obrade teksta kao što su klasifikacija teksta, odgovaranje na pitanja, prevođenje neuronskih mašina (NMT), izdvajanje događaja, provjera činjenica itd.

## Reference 
* Kratak uvod u grafovske neuronske mreže

Kategorija:Grafovski algoritmi
Kategorija:Veštačke neuronske mreže
Kategorija:Učenje bez nadzora
Kategorija:Učenje sa nadzorom
Kategorija:Polunadzirano učenje
Kategorija:Arhitektura neuronskih mreža