Finn Sherry

Flow Matching on Lie Groups

In "Flow Matching on Lie Groups" (arXiv, code), we develop a new technique for generative modelling on Lie groups, generalising Flow Matching by Lipman et al. As the name implies, this works by flowing data from an initial to a target distribution. Here are some nice videos of this in action.

In this first example, we perform flow matching on the special Euclidean group of roto-translations, SE(2). Since SE(2) is diffeomorphic to the space of planar positions and orientations, we can represent any roto-translation as a position and orientation, i.e. an arrow on the plane.

We add a bit of noise to both distributions such that their supports are homotopic. This is necessary since flows are always homotopies: it is therefore impossible to learn a flow between distributions whose supports aren't homotopic.

For the next example, we perform flow matching on the special orthogonal group of rotations, SO(3). Like SE(2), SO(3) is diffeomorphic to a space of positions and orientations; now it is the space of spherical positions and orientations. Hence, we can represent rotations with an arrow on the sphere.

Flow Matching can be performed on Lie groups with a surjective exponential map. On matrix groups, the implementation is particularly straightforward, since then the required group operations are simply given by their matrix equivalents. It is also easy to work with (direct) products of Lie groups: the exponential curves can simply be computed on the subgroups and combined.