Fork me on GitHub

src/arraymancer/nn/layers/gcn

  Source Edit

Types

GCNGate[TT] {.final.} = ref object of Gate[TT]
  Source Edit
GCNLayer[T] = object
  weight*: Variable[Tensor[T]]
  bias*: Variable[Tensor[T]]
  Source Edit

Procs

proc forward[T](self: GCNLayer[T]; input, adjacency: Variable[Tensor[T]]): Variable[
    Tensor[T]]
  Source Edit
proc gcn[TT](input, adjacency, weight: Variable[TT]; bias: Variable[TT] = nil): Variable[
    TT]
Input:

Return:

  • (AX)W+b
  Source Edit
proc init[T](ctx: Context[Tensor[T]]; layerType: typedesc[GCNLayer[T]];
             numInput, numOutput: int): GCNLayer[T]
Initializes a graph convolutional layer with num_input input features and num_output output features. Using Kaiming He initialisation for weights to provide decent performance in most cases. Biases are set to zero.   Source Edit
func inShape[T](self: GCNLayer[T]): seq[int]
  Source Edit
func outShape[T](self: GCNLayer[T]): seq[int]
  Source Edit
Arraymancer Technical reference Tutorial Spellbook (How-To's) Under the hood