Source-linked AI summary
HexaConv
Emiel Hoogeboom, Jorn W. T. Peters, Taco S. Cohen, Max Welling
TL;DR
Standard translational CNNs cannot exploit rotation symmetry, and broader group convolutions can require interpolation to rotate filters. G-HexaConv implements convolution on hexagonal lattices, where 60-degree filter rotations need no interpolation. On AID, it reports lower error than a Z2-ResNet and considerably outperforms other methods.
Problem
Standard translational convolutions cannot exploit rotation symmetry, while rotating filters for broader group convolutions can require interpolation.
Source: §1 · pp. 1–2Method
G-HexaConv uses hexagonal lattices for 60-degree filter rotations without interpolation, factoring group convolution into filter transformation and planar hexagonal convolution.
Source: §1 · p. 2, §2.1 · p. 4Results
On AID, error fell from 19.3% on a Z2-ResNet to 8.6% on a p6-ResNet, and G-HexaConv outperformed other methods considerably.
Source: §5.2 · p. 8, §7 · p. 9Takeaways & Limitations
For the tested aerial-scene task, the authors report improved performance from reduced anisotropy in hexagonal filters and from symmetry equivariance and invariance in group convolutions.
Source: §7 · p. 9In the axial system, rectangular storage requires extra padding, and axial filters need their array corners zeroed by a mask.
Source: §3.1 · p. 5
Abstract
from arXiv · showhide
The effectiveness of Convolutional Neural Networks stems in large part from their ability to exploit the translation invariance that is inherent in many learning problems. Recently, it was shown that CNNs can exploit other invariances, such as rotation invariance, by using group convolutions instead of planar convolutions. However, for reasons of performance and ease of implementation, it has been necessary to limit the group convolution to transformations that can be applied to the filters without interpolation. Thus, for images with square pixels, only integer translations, rotations by multiples of 90 degrees, and reflections are admissible. Whereas the square tiling provides a 4-fold rotational symmetry, a hexagonal tiling of the plane has a 6-fold rotational symmetry. In this paper we show how one can efficiently implement planar convolution and group convolution over hexagonal lattices, by re-using existing highly optimized convolution routines. We find that, due to the reduced anisotropy of hexagonal filters, planar HexaConv provides better accuracy than planar convolution with square filters, given a fixed parameter budget. Furthermore, we find that the increased degree of symmetry of the hexagonal grid increases the effectiveness of group convolutions, by allowing for more parameter sharing. We show that our method significantly outperforms conventional CNNs on the AID aerial scene classification dataset, even outperforming ImageNet pre-trained models.
1 INTRODUCTION
Standard CNNs exploit translation equivariance but cannot directly exploit rotation symmetry, while filter rotations for broader groups can require interpolation. Hexagonal convolutions enable 60-degree rotations without interpolation, and the paper reports accuracy gains from both hexagonal filters and larger symmetry groups.
1 INTRODUCTION
- Hexagonal lattices permit filter rotations by multiples of 60 degrees without interpolation, enabling group convolutions for p6 and p6m.The paper identifies interpolation for filter rotation as a practical hurdle for continuous groups.Source: §1 · p. 2
- With equal parameter counts, small approximately round hexagonal filters with 7 parameters work better than square 3 × 3 filters.The paper relates this result to hexagonal pixelation's reduced anisotropy and other isotropic properties.Source: §1 · p. 2
- On a hexagonal lattice, p6-convolution outperforms p4-convolution, which outperforms ordinary translational convolution.The authors attribute the greater effectiveness of hexagonal group convolution to increased weight sharing from higher rotational symmetry.Source: §1 · p. 2
- Hexagonal CNNs require resampling square-lattice images and indexing schemes that support efficient convolution and filter transformation.The paper describes reusing highly optimized square convolution routines for some hexagonal indexing schemes.Source: §1 · pp. 2–3
- On CIFAR-10 and AID, group convolutions systematically improve performance, outperforming an ImageNet-pretrained baseline and comparable architectures with the same parameter count.Aerial-image labels are expected to be rotation invariant.Source: §1 · p. 3
2 GROUP EQUIVARIANT CNNS
Ordinary convolution is translation equivariant, but not rotation equivariant; group convolution extends the transformations over which convolution operates. The section explains how G-convolution remains equivariant and can be implemented through filter transformation followed by planar convolution.
2 GROUP EQUIVARIANT CNNS
- Translation followed by ordinary convolution equals convolution followed by translation, whereas ordinary convolution is not rotation equivariant.For a rotated image, the corresponding convolution uses an inversely rotated filter.Source: §2 · p. 3
- G-convolution replaces shifting a filter over an image with transformations from a larger group G.The input can be a square or hexagonal lattice, and the output feature map is indexed by transformations in G.Source: §2 · p. 3
- Group convolution is equivariant to transformations in G, and that symmetry propagates through the network for group-convolutional weight sharing.Its outputs are indexed by transformations in G; in higher layers, feature maps and filters are functions on G.Source: §2 · p. 3
- Figure 2 compares four hexagonal-grid coordinate systems, which differ in memory efficiency, square-kernel reuse, and ease of rotations and flips.The cube system uses three integer indices; axial and cube coordinates may be negative with a top-left origin.Source: Figure 2 · p. 4
2.1 IMPLEMENTATION OF GROUP CONVOLUTIONS
- A practical G-convolution separates into filter transformation over H followed by planar convolution over translations Z2.The first layer maps a planar image to a feature map on G; later layers take and produce feature maps on G.Source: §2.1 · p. 4
- Filter transformation applies each output-group element to each learnable filter using a precomputed static index array, then convolves the input with the transformed filterbank.The two steps are implemented as indexing and planar convolution; the section points to later sections for hexagonal planar convolution and the G-HexaConv indexing array.Source: §2.1 · p. 4
3 HEXAGONAL COORDINATE SYSTEMS
Hexagonal coordinate systems trade off memory efficiency, reuse of rectangular convolution routines, and ease of applying transformations. No system is ideal in every respect.
3 HEXAGONAL COORDINATE SYSTEMS
- Coordinate systems differ in memory use, rectangular-convolution reuse, and ease of rotations and flips; some require padding or cannot use a single planar convolution.The section compares four systems against these practical criteria.Source: §3 · p. 4
3.1 AXIAL
- Axial coordinates map lattice points to integer pairs and permit rectangular convolution, but rectangular image regions require padded memory.Axial filters also need their array corners zeroed by a mask.Source: §3.1 · p. 5
3.2 CUBE
- Cube coordinates embed the hexagonal grid in 3D, making rotations and reflections simple but using memory inefficiently.The paper uses cube coordinates for transformations and other systems for image storage.Source: §3.2 · p. 5, Figure 5 · p. 6
3.3 DOUBLE WIDTH
- Double-width coordinates enable rectangular convolution through checkerboard arrays and masked filters, but double image and filter size.The paper recommends this inefficient scheme only for preliminary experiments.Source: §3.3 · p. 6
3.4 OFFSET
- Offset coordinates store rectangular images without padding, but even- and odd-row filters differ, requiring two convolution calls and a strided copy.A custom HexaConv kernel would remove these difficulties and make offset coordinates ideal for memory efficiency.Source: §3.4 · p. 6
4 IMPLEMENTATION
The implementation uses axial coordinates to reuse rectangular convolution routines for hexagonal convolution. Group convolution transforms filters before planar convolution and masks padded values after each convolution and parameter update.
4 IMPLEMENTATION
- Axial coordinates let the implementation perform hexagonal convolution with a rectangular convolution kernel, while padding requires explicit masking.Feature maps and filters are masked after every convolution and parameter update so padding values remain zero.Source: §4 · pp. 6–7
- Hexagonal group convolution transforms a learnable filter bank, then computes group convolution using one or more planar convolutions.The transformation is implemented as indexing with a constant array determined by the group structure.Source: §4 · pp. 6–7
- The implementation section includes performance comparisons for CIFAR-10 and AID, but the supplied passages provide no table values.The table captions identify the datasets and comparison scope.Source: Table 1 · p. 7, Table 2 · p. 7
5 EXPERIMENTS
Experiments on CIFAR-10 and AID compare hexagonal and square lattices and networks using different symmetry groups. Group convolutions improve performance, with especially strong results on AID.
5 EXPERIMENTS
- Across CIFAR-10 and AID, the experiments compare hexagonal G-HexaConvs with p4/p4m group networks and standard Z2 networks.They also test HexaConv without group convolutions to assess the hexagonal lattice itself.Source: §5 · p. 7
5.1 CIFAR-10
- CIFAR-10 images are bilinearly resampled onto the hexagonal lattice, and the authors report no degradation in HexaConv classification performance from the interpolation.Figure 6 shows CIFAR-10 and AID examples sampled from Cartesian to hexagonal axial coordinates; zero padding enlarges the images in axial systems.Source: §5.1 · p. 7, Figure 6 · p. 8
- On CIFAR-10, HexaConv outperforms the standard CNN, and p6- and p6m-ResNets outperform their p4- and p4m-ResNet counterparts.Across the tested models, performance consistently improves with groups containing more symmetries.Source: §5.1 · p. 7
5.2 AID
- AID comparisons use repeated random 80%/20% train/test splits shared across models, and the Xia et al. baseline is re-evaluated on those splits.This differs from the baseline paper’s 50%/50% split.Source: §5.2 · p. 8
- AID models use resized 64-by-64 inputs, and pooling over spatial and orientation dimensions makes the network orientation invariant.The ResNets use two blocks per stage and are widened for the larger number of classes.Source: §5.2 · p. 8
- AID error falls from 19.3% on a Z2-ResNet to 8.6% on a p6-ResNet; adding mirror symmetry has little effect.The p4m and p6m errors are 10.2% and 9.3%, respectively; the reported baseline was ImageNet-pretrained, while the paper’s models were trained from random initialization.Source: §5.2 · p. 8
6 RELATED WORK
Related work spans hexagonal image lattices, invariant features, and equivariant CNNs. The approaches include transforming filters or feature maps, steerable filters, and warping representations.
6 RELATED WORK
- Prior work studied hexagonal lattices as alternatives to square sampling, citing their geometric properties and advantages in some applications.The cited work discusses hexagon isoperimetry and uniform lattice connectivity, as well as application-specific superiority.Source: §6 · p. 8
- Hand-crafted invariant features used pose normalization and plane-to-sphere projections (Kondor, 2007); data augmentation offers approximate invariance (Van Dyk & Meng, 2001).Recent CNN approaches sought equivariant or invariant representations for specified data transformations.Source: §6 · p. 8
- Several CNN methods obtain equivariance by rotating filters or feature maps and permuting channels (Cohen & Welling, 2016; Dieleman et al., 2016; Zhou et al., 2017; Li et al., 2017).Cohen & Welling (2017) present a steerable-filter framework for discrete and continuous groups that includes group convolutions; Harmonic Networks approximate continuous-rotation equivariance (Worrall et al., 2016).Source: §6 · pp. 8–9
- Other approaches include sparse high-dimensional feature maps, vector-field features from rotated filters (Marcos et al., 2016), and architectural parameter sharing (Ravanbakhsh et al., 2017).Source: §6 · p. 9
- Spatial Transformer Networks and related warping methods produce invariant models, but their dependence on global input transformations limits them to global data symmetries (Jaderberg et al., 2015; Esteves et al., 2017; Henriques & Vedaldi, 2016).Source: §6 · p. 9
7 CONCLUSION
The paper introduces G-HexaConv for convolutions on hexagonal pixelations. It reports improved performance from reduced filter anisotropy and from exploiting hexagonal symmetry.
7 CONCLUSION
- G-HexaConv extends group convolutions to hexagonal pixelations and describes coordinate systems and implementations for hexagonal group convolution.Source: §7 · p. 9
- Hexagonal grids permit six-fold rotations without interpolation, while their filters have reduced anisotropy compared with square filters.Source: §7 · p. 9
- On an aerial scene dataset expected to have rotation-invariant labels, hexagonal group convolutions outperform other methods considerably.Source: §7 · p. 9
A IMPLEMENTATION DETAILS
The implementation expresses filter transformation as array indexing. It maps array indices into group elements, applies the inverse rotation, then maps back to an index.
A IMPLEMENTATION DETAILS
- The mathematical filter ψ is represented by an array Ψ through an invertible indexing map ι between the domain and valid array indices.The paper distinguishes planar domains from group domains, using two-dimensional versus three-dimensional arrays, respectively.Source: A IMPLEMENTATION DETAILS · pp. 10–11
- To transform a filter, the implementation maps an index to its group element, composes with the inverse rotation, and maps the result back to an array index.Source: A IMPLEMENTATION DETAILS · p. 11
- The resulting index array is precomputed so that the transformed filter can be applied as a single indexing operation, Ψ[I].Source: A IMPLEMENTATION DETAILS · pp. 10–11
- For p6, rotations are encoded as integers from 0 to 5 and compose modulo 6; translations use axial coordinates, with cube coordinates used for rotating translations.Source: A IMPLEMENTATION DETAILS · p. 11