pub trait MessagePassing {
// Required methods
fn message(
&self,
x_src: &Tensor,
x_tgt: &Tensor,
edge_index: &AdjacencyMatrix,
) -> Tensor;
fn aggregate(
&self,
messages: &Tensor,
edge_index: &AdjacencyMatrix,
num_nodes: usize,
) -> Tensor;
fn update(&self, x: &Tensor, aggregated: &Tensor) -> Tensor;
// Provided method
fn propagate(&self, x: &Tensor, edge_index: &AdjacencyMatrix) -> Tensor { ... }
}Expand description
Message Passing Neural Network base trait.
Defines the generic message passing framework that underlies all GNN layers.
Required Methods§
Sourcefn message(
&self,
x_src: &Tensor,
x_tgt: &Tensor,
edge_index: &AdjacencyMatrix,
) -> Tensor
fn message( &self, x_src: &Tensor, x_tgt: &Tensor, edge_index: &AdjacencyMatrix, ) -> Tensor
Compute messages from source to target nodes.
Provided Methods§
Sourcefn propagate(&self, x: &Tensor, edge_index: &AdjacencyMatrix) -> Tensor
fn propagate(&self, x: &Tensor, edge_index: &AdjacencyMatrix) -> Tensor
Full message passing forward.