Convolution combines nearby values through a local filter or aggregation to produce a representation that makes downstream tasks easier. In images, the filter moves across a fixed pixel grid; in graphs, convolution operates across neighborhoods of nodes. section 3.4.1 section 3.0
A practical convolutional layer can be understood as a short pipeline:
- Apply a learnable filter or kernel to highlight features in the input. section 3.4.1
- Pass the filter output through an activation function for a nonlinear transformation. section 3.4.1
- Optionally pool the result to reduce its size for subsequent learning tasks. section 3.4.1
- Choose a spatial method that slides a filter across graph structure, or a spectral method that filters graph signals. section 3.4.1
Figure 3.11 A convolution of an input image (left). The kernel (middle) is passed over the image of an animal, resulting in a distinct representation (right) of the input image. In a deep learning process, the parameters of the filter (the numbers in the matrix) are learned parameters.
Use the image-and-kernel visualization to see how learned filter weights produce a distinct transformed representation. section 3.4.1
Figure 3.12 A comparison of convolution over grid data (left; e.g., a 2D image) and over a graph (right).
Use the grid-versus-graph comparison to connect pixel neighborhoods with graph neighborhoods. section 3.4.1
