Graph Neural Networks (GNN)

Graph Neural Networks (GNN) - Guida Completa

🔗 Graph Neural Networks (GNN)

Le Graph Neural Networks (GNN) sono un'architettura avanzata di deep learning progettata per lavorare con dati strutturati in forma di grafo. Esse combinano i concetti di apprendimento profondo con la teoria dei grafi, permettendo di modellare relazioni complesse tra entità.

🏗️ Architettura delle GNN

Le GNN sfruttano un meccanismo chiamato Message Passing in cui ogni nodo nel grafo passa messaggi e apprende le informazioni dai suoi vicini per aggiornare la propria rappresentazione.

Si usano degli embedding che contengono tutta la conoscenza del grafo come:

  • Caratteristiche del nodo
  • Caratteristiche dei nodi vicini
  • Informazioni sulle connessioni
  • Carattetistiche dei bordi

📊 Matrici di Adiacenza

Un concetto fondamentale nelle GNN è l'uso delle matrici di adiacenza, che rappresentano la struttura del grafo. La matrice di adiacenza A è una matrice quadrata dove l'elemento A_{ij} indica la connessione tra il nodo i e il nodo j.

Possiamo pensare ad un immagine come un tipo speciale di grafo con una struttura regolare a griglia.
Le Gnn usare le caratteristiche dei vicini e le proprie e le combinano.
Questo avviene perche' le gnn si addrestrano facendo si che ogni nodo scambi informazioni con il proprio vicino.
Quando ho piu' strati imparo le informazioni dei vicini dei vicini.

Rappresentare dati come grafici offre una grande flessibilita' ed una prospettiva diversa. ad esempio anziche' operare a livello di pixel possiamo usare i superpixel che condividono caratteristiche come colore, intensita' o texture.


Commenti

Post popolari in questo blog

SSD (Single Shot MultiBox Detector)

Instance Segmentation: Cos'è e Come Funziona

U-Net: Architettura per la Segmentazione di Immagini