{'fraction_non_alphanumeric': 0.03790598105782122, 'fraction_numerical': 0.01321195346624573, 'mean_word_length': 4.438264346190028, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 2, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 5, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
VolterraNet: A higher order convolutional network with group equivariance for homogeneous manifolds

Convolutional neural networks have been highly successful in image-based learning tasks due to their translation equivariance property. Recent work has generalized the traditional convolutional layer of a convolutional neural network to non-Euclidean spaces and shown group equivariance of the generalized convolution operation. In this paper, we present a novel higher order Volterra convolutional neural network (VolterraNet) for data defined as samples of functions on Riemannian homogeneous spaces. Analagous to the result for traditional convolutions, we prove that the Volterra functional convolutions are equivariant to the action of the isometry group admitted by the Riemannian homogeneous spaces, and under some restrictions, any non-linear equivariant function can be expressed as our homogeneous space Volterra convolution, generalizing the non-linear shift equivariant characterization of Volterra expansions in Euclidean space. We also prove that second order functional convolution operations can be represented as cascaded convolutions which leads to an efficient implementation. Beyond this, we also propose a dilated VolterraNet model. These advances lead to large parameter reductions relative to baseline non-Euclidean CNNs. To demonstrate the efficacy of the VolterraNet performance, we present several real data experiments involving classification tasks on spherical-MNIST, atomic energy, Shrec17 data sets, and group testing on diffusion MRI data. Performance comparisons to the state-of-the-art are also presented.


INTRODUCTION
CNNs were introduced in the 1990s by Lecun [1] and gained enormous popularity in the past decade especially after the demonstration of the significant success on Imagenet data by Krizhevsky et al. [2]. At the heart of CNNs success is its ability to learn a rich class of features from data using a combination of convolutions and nonlinear operations such as ReLU or softmax functions. The success of CNNs however is achieved at the expense of a large number of parameters that need to be learned and a computational burden in the training time. It is well known now that a multi-layer perceptron can approximate any function to the desired level of accuracy with a finite number of neurons in the hidden layer. It is therefore natural to consider parameter efficiency as one of the network design goals to strive for in a deep netowrk. The higher order Volterra series can capture a richer class of features and hence significantly reduce the total number of parameters while maintaining comparable or better classification accuracy relative to the baseline models.
In computer vision and medical imaging, many applications deal with data domains that are non-Euclidean. For instance, the n-sphere (n ≥ 2), the manifold of symmetric positive definite matrices, the Grassmannian, Stiefel manifold, flag manifolds etc. Most of these manifolds belong to the class of (Riemannian) homogeneous spaces (mani-folds). Thus, our goals here are to 1) Introduce a principled framework for defining CNNs on general homogeneous Riemannian manifolds. 2) Introduce a novel higher order convolution layer using Volterra theory [3] on homogeneous Riemannian manifolds which provides significant parameter-efficiency improvements for non-Euclidean CNNs. 3) Establish empirical evidence demonstrating the applicability of our homogeneous Riemannian manifold CNNs and the performance boost provided by the Volterra convolutions.
Much of the recent work in this problem domain has focused on generalizing CNNs to homogeneous spaces by exploiting the weight sharing that the symmetries of the underlying manifold allow. The 2-sphere is a particularly important example. In the recent past, CNNs have been reported in literature [4], [5], [6] which are designed to handle data that are samples of functions defined on a 2sphere and hence are equivariant to 3D rotations which are members of the SO(3) group. The spherical convolution 1 network presented in [5], [7] is named Spherical CNN. Recently, Kondor et al. in [8] proposed the Clebsch-Gordan net by replacing the repeated forward and backward Fourier transform operations used in [5]. They showed that by using the Clebsch-Gordan transform as the source of nonlinearity, better performance can be achieved by avoiding the repetitive forward and inverse Fourier transform operations. In [9], authors present polar transformer networks, which are equivariant to rotations and scaling transformations. 1. As has been pointed out several times in the literature, the convolution operation in CNNs is actually a correlation and not a convolution. Hence, in this paper, we will use the term convolution and correlation interchangeably but always imply correlation.

arXiv:2106.15301v1 [cs.CV] 5 Jun 2021
By combining them with the spatial transformer [10], they achieved the required equivariance to translations as well. Recently, the equivariance of convolutions to more general classes of group actions has been reported in literature [11], and later in [12]. In [7], Esteves et al. used the correlation defined in [13] to propose an SO(3) equivariant operator and in turn define a spherical convolution. In this paper, we will define correlations and the Volterra series on a homogeneous manifold and show that the equivariance property holds for both.
Volterra kernels were first proposed in image classification literature in [14], [15]. In [15], authors learn the kernels in a data driven fashion and formulate the learning problem as a generalized eigenvalue problem. Volterra theory of nonlinear systems was applied more than two decades ago to a single hidden layer feed-forward neural network with a linear output layer and a fully dynamic recurrent network in [16]. Most recent use of Volterra kernels in deep networks was reported in [17], where, authors presented a single layer of Volterra kernel based convolutions followed by conventional CNN layers. They however did not explore equivariance properties of the network or consider non-Euclidean input domains.
In this paper, we define a Volterra kernel to replace traditional convolution kernels. We present a novel generalization of the convolution group-equivariance property to higher order convolutions expressed using Volterra theory of functional convolution on non-Euclidean domains, specifically, the Riemannian homogenous spaces [18] referred to earlier. Most of these manifolds are commonly encountered in mathematical formulations of various computer vision tasks such as action recognition, covariance tracking etc., and in medical imaging for example, in diffusion magnetic resonance imaging (dMRI), elastography etc. By generalizing traditional CNNs in two possible ways, 1) to cope with data domains that are non-Euclidean and 2) to higher order convolutions expressed using Volterra series, we expect to extend the success of CNNs in yet unexplored ways.
We begin with a significant extension of prior work by the authors of [19], where the authors defined a correlation operation for homogeneous manifolds. Specifically, our extension consists of a proof that not only is the correlation operation group equivariant, but additionally any linear group equivariant function can be written as a correlation on the manifold (Banerjee et al. [19] only showed the first fact). We present experiments to demonstrate better performance of the proposed VolterraNet on spherical-MINST and the Shrec17 data with less number of parameters than previously shown in literature for the Spherical-CNN and the Clebsch-Gordan net. We then present a dilated convolution model based on the VolterraNet and demonstrate its efficacy in group testing on diffusion magnetic resonance data acquired from patients with movement disorders. The domain of this data is another example of a Riemannian homogeneous space.
In summary, our key contributions in this paper are: 1) A principled method for choice of basis in designing a deep network architecture on a Riemannian homogeneous manifold M. 2) A proof of a generalization of the classical linear shift invariance (in our terminology, equivariance) characterization theorem for correlation operations on Rieman-nian homogeneous manifolds. 3) A novel generalization of convolution operations to higher order Volterra series on non-Euclidean domains specifically, Riemannian homogeneous manifolds which are often encountered both in computer vision and medical imaging applications. 4) A generalization of the classical non-linear shift invariance (in our terminology, equivariance) characterization theorem for Volterra convolution operations on Riemannian homogeneous manifolds. 5) Experiments on real data sets that are publicly available such as the spherical-MNIST, atomic energy and Shrec17. For these real data, we present comparisons to the state-of-theart methods. 6) An extension of the VolterraNet to Dilated VolterraNet and demonstrate its efficiency via group testing on diffusion MRI brain scans from controls (normal subjects) and movement disorder patients. Further, ablation studies on VolterraNet to demonstrate the usefulness of the higher order convolution operations.
The rest of the paper is organized as follows: In section 3.3 we define the correlation operation on homogenous manifolds and prove a generalization of the Euclidean linear shift invariance (LSI) theorem for this correlation operation. Then, in section 3.4 we present a framework for principled choice of basis in representing functions on a Riemmanian homogeneous manifold. In section 4.1, we define the Volterra higher-order convolution operation and prove a generalization of the non-linear shift invariance theorem for this Volterra operation. Following this, we present a detailed description of the proposed VolterraNet architecture in 5 and a description of the proposed dilated VolterraNet in 6. Finally, section 7 contains the experimental results and section 8 the conclusions.

LIST OF NOTATIONS
We now summarize the list of notations that will be used throughout this paper.

M
Riemannian homogeneous space (manifold) G a group SO(n) n-dimensional special orthogonal group of matrices Action of g ∈ G on x ∈ M gh/L g (h) Action of g ∈ G on h ∈ G g · f /L * g −1 (f ) Action of g ∈ G on f : M → R and is given by x → f (g −1 · x) S n n-sphere R + Space of positive reals

SPACES
In this section, we define a correlation operation which generalizes the Euclidean convolution layer to arbitrary Riemannian homogeneous spaces. Further, we prove a generalization to Riemannian homogeneous spaces of the linear shift-invariant system (LSI) characterization of Euclidean convolutions. Similar theorems were first proved in [11] and later in [12]. This result is not meant to be novel but to motivate the analogous result for higher order convolutions on Riemannian homogeneous spaces that we prove subsequently.

Background
We will briefly review the differential geometry of Riemannian homogeneous spaces from an informal perspective. Formal definitions will be deferred to the appendix for conceptual clarity.
As mentioned earlier, Riemannian homogeneous spaces are Riemannian manifolds which 'look' the same locally at each point with respect to some symmetry group G, meaning that the action of G on M is transitive. We will specifically consider Riemannian manifolds with a transitive action of the isometry group I(M). For the rest of the paper, we use G = I(M) unless mentioned otherwise. For example, the 2-sphere is a homogeneous space with G = SO (3). An important fact about homogeneous spaces is that they can be identified as a quotient space. In general, if M is a homogeneous space with group G acting on it, and H x is some stabilizer (see definition in Appendix A) of of a point x ∈ M then M G/H x . Returning to the 2-sphere example, if we take H to be the stabilizer of the north pole, a subgroup of SO(3) isomorphic to SO(2), then G/H SO(3)/SO(2) S 2 . For a detailed exposition on these concepts, we refer the reader to [18].

Assumptions
For the remainder of this paper we assume M to be a Riemannian homogeneous space admitting a transitive action of the group G, which we call the symmetries of M. We also assume that G is a locally compact topological group. Further we assume that any function f : where ω M is a suitable volume form on M. As mentioned before, we denote the space of square integrable functions on M by L 2 (M, R).

Euclidean LSI Theorem
We begin this section by recalling the Euclidean Linear Shift Invariant (LSI) theorem. Definition 1. Let F : U → V be a bounded linear operator between spaces U and V consisting of functions R n → R. For f ∈ U ∪ V and x ∈ R n we define τ x (f )(z) = f (z − x). The set {τ x } x∈R n forms a group under composition. We say F is translation equivariant (i.e. shift invariant in the traditional literature) if τ x (F (g)) = F (τ x (g)) for all g ∈ U , x ∈ R n . Theorem 1. Let w : R n → R be a weight kernel, then the operator given as G w : U → V is defined by G w (f ) = f w, where is the Euclidean convolution operation which is a bounded, linear, and translation equivariant operator. Further, if F is any bounded linear translation equivariant operator, then there exists w : Thus, Euclidean convolutions with a weight kernel have an interesting and powerful characterization as linear shift invariant operators. Next we show that the correlation operation on any Riemannian homogeneous manifolds satisfy a generalization of the aforementioned LSI theorem.

Generalizing Convolutions and the LSI Theorem to Riemannian homogeneous spaces
We begin by defining the correlation operation for arbitrary homogeneous Riemannian manifolds. Some equivalent definitions have been made several times in the literature, first for specific manifolds as in [5], [7], then in more generality such as in [11] and later in [12]. We then state a generalization of the LSI theorem for this correlation operation, which we call the Linear Group Equivariant (LGE) theorem. Note that similar theorems were first proved in [11] and later in [12]. We present this theorem not as a novel result, but as motivation for a non-linear version of the theorem which we will prove in section 4. Regardless, we present a much simpler proof (compared to [11], [12]) of the result in the appendix.

Definition 2 (Correlation).
The correlation between f : M → R and w : M → R is given by, (f w) : G → R defined as follows: The correlation between f : G → R and w : G → R is given by, (f w) : G → R defined as follows: where µ G is the Haar measure on G (which is guaranteed to exist based on our assumption that G is a locally compact topological group). Please see the discussion at the end of this subsection for details.
Equation 1 is described in words as follows: the weight kernel w is "shifted" using the action of the symmetry group, and the point-wise product of the shifted weight kernel and the function f is integrated over the manifold. A similar interpretation can be given to the correlation on groups in Eq. 2. This generalizes the work on the 2-sphere presented in [5], [7] for an arbitrary Riemannian homogeneous space M.
We show that this correlation operation is equivariant to the isometry group G of the underlying homogeneous space M. In order to state this theorem, we first formally define equivariance.

Definition 3 (Equivariance)
. Let X and Y be sets and G be a group acting on X and Y (in literature these sets are termed as G sets [20]). Then, F : X → Y is said to be equivariant to the action of G if for all g ∈ G and all x ∈ X.
We are now ready to state the following theorems: Theorem 2. Let S and U be L 2 (M, R) or L 2 (G, R) and F : S → U be a function given by f → (f w). Then F is equivariant with respect to the pullback action of G, i.e.
This constitutes the forward direction of the LGE theorem. Now we show the converse statement, namely, every linear group equivariant function is a correlation. Theorem 3. Let S and U be L 2 (M, R) or L 2 (G, R) and F : S → U be a linear equivariant function with respect to the pullback action of I(M). Then, ∃w ∈ S such that, (F (f )) (g) = (f w) (g), for all f ∈ S and g ∈ G.
Proof. See appendix B.
Together with these two theorems, we can generalize the LSI theorem to homogeneous spaces using the correlation defined in Def. 2 .
A NOTE ON VOLUME FORMS / MEASURES In Def. 2, we specify the Haar measure for integration of a function on G. If f and w are functions on G, then the Haar measure µ G has several desirable properties. For example, the Haar measure is invariant to "translations", i.e. if S ⊂ G is measurable then µ G (S) = µ G (gS) for any g ∈ G. Further, using the Haar measure provides a convolution theorem which makes correlation a simple multiplication under the generalized Fourier transform for groups. This particular property is vital for efficient implementations. Note that on the other hand, we do not specify a specific volume form ω M for integration of function on M in definition 2. In many cases, the Haar measure on G will induce a G-invariant volume form on M G/H, but stating the exact conditions for this to be possible requires some work. Instead, we define the correlation using an arbitrary volume form. In the next section we will give a construction which induces such a G-invariant volume form on M.

Basis functions for L 2 -functions on homogeneous spaces
Our goal in this section is to induce a natural basis on L 2 (M, R) from the canonical basis on L 2 (G, R) where G is the group acting on the homogeneous manifold M. The basis on G consists of matrix elements of irreducible unitary representations, which provides a Fourier transform on G (for more details reader is referred to [21]). We show that this construction matches the commonly used basis for specific manifolds, e.g. the spherical harmonics and Wigner-D functions in [5]. This construction can be used to induce basis on arbitrary Riemannian homogeneous spaces.
To induce a basis on L 2 (M, R), we use the principal fiber bundle structure of the homogeneous manifold M. A fiber bundle is a space that locally looks like a product space. It is expressed as a base space B with the fibers making up a fiber space F , and their union being the total space denoted by E. There is a projection map π : E → B mapping fibers to their "base point" on B. A principal fiber G-bundle is a fiber bundle with a continuous (right) action of a group G, such that the action of G is free, transitive and preserves the fibers. For more details on fiber bundle theory see [22]. As mentioned in 3.1, M can be identified with G/H for G the group action on M and H the stabilizer of a point x ∈ M, usually called the "origin". It is well known that this identification induces a principal fiber G-bundle structure on M via the projection map.  Moreover, a section is a continuous right inverse of π, which is denoted by σ : B → E. In literature [18], a zero section (denoted by S ⊂ G) is the section containing the identity element of H. Let σ 0 : S → M be a diffeomorphism. Given {v α : G → R} be the set of basis of L 2 (G, R). Then, we can get the induced basis on . A schematic of an example fiber bundle is shown in Fig. 1.

HIGHER ORDER CORRELATION ON RIEMANNIAN HOMOGENEOUS SPACES
In this section, we define a higher order correlation operator on Riemannian homogeneous spaces using the Volterra series, state a theorem demonstrating it's symmetry equivariance and show how to compute it efficiently using first order correlation operations. Further, we prove that the set of functions which can be written as sums of products of linear operators and are G-equivariant can be expressed as a Volterra series. This partially generalizes the non-linear shift equivariance characterization of Volterra expansions in Euclidean space.

Volterra Series on Homogenous Spaces
We now generalize the Volterra Series to Riemannian homogeneous spaces.

Definition 4 (Volterra series expansion).
We define the Volterra expansion of a function f : where µ G is the Haar measure on G (which again, is guaranteed to exist based on our assumption that G is a locally compact topological group).
One can easily see that, Definition 2 is a special case of definition 4 when n = 1. When n > 1, we will call it the n th order Volterra expansion. Higher order terms of the Volterra expansion express polynomial relationships between function values. An illustration of the second order Volterra kernel is provided in Figure 2. As we can see, the second order Volterra kernel has a regular correlation weight kernel at each location on the manifold M. The results of applying these weight kernels get multiplied together to get the output of f 2 w 2 . A biological motivation is provided in [17] for the (Euclidean) Volterra series. Now, we prove that F as defined in Definition 4 is equivariant to the symmetry group actions admitted by a homogeneous space. Proof. Observe that the sum of equivariant operators is equivariant. Hence, we only need to check that f n w n is equivariant for all n. Let g, h ∈ G, let n ∈ N. Then, , · · · , (h −1 g) · y n ω M (y 1 ) · · · ω M (y n ) ) (see appendix for details), since, g, h ∈ G and n are arbitrary F is equivariant.  , φ)). The coordinates above each grid represent the first entry w 2 (x, ·), and within each grid the gray-scale value represents the weight of the associated kernel w 2 (x, y).
In the other direction, we also show that for the aforementioned set of functions, every G-equivariant function can be written as a Volterra series.
Theorem 5. Let S and U be L 2 (M, R) or L 2 (G, R) and F : S → U be a non-linear G-equivariant function which can be written as F = i∈I F i , where each F i is a product of two linear functions, i.e., , for all f ∈ S and g ∈ G.
Proof. It suffices to show that for each term . But by the previous theorem, there exists w i,k such that F i,k = f w i,k , completing the proof.
These results partially generalize the well know nonlinear shift equivariance characterization of Volterra expansions in Euclidean space and justifies the use of the Volterra series as a higher-order generalization of the correlation operation Definition 2.

Efficient Computation of the Second-Order Volterra Kernel
The Volterra series presented in the previous definition is significantly more expressive than the correlation operation defined in Definition 2 since it captures higher order relationships between inputs, but it requires the computation of iterated integrals and does not have an efficient GPU implementation. Note that for separable second order kernel w 2 , (f 2 w 2 ) (g) can be factored as ((f w 2 ) (g)) ((f w 2 ) (g)).
Thus, we can compute the second order Volterra series with separable kernel as a product of traditional correlation operations. In general, we can use a convex combination of first order and second order terms of the Volterra series to define second order Volterra network. A schematic diagram for the second order Volterra correlation operator is shown in Fig. 3. This representation of a second order kernel using product of two separable kernels is analogous to tensor product approximation of a function and can be shown to achieve approximation error of an arbitrary precision [23]. The separability assumption on the kernels leads to efficient computation which is especially valuable in the network setting where these operations are performed numerous times.

ARCHITECTURE
We now present the basic modules for implementing our correlation and higher-order Volterra operations as layers in a deep network.

Correlation on homogeneous spaces
Using definition 2 we can define: be the input function and w ∈ L 2 (M, R) be the mask. Then, using definition 2, Corr M (f, w) is defined as (f w) : G → R. We have shown in Theorem 2, that Corr M (f, w) is equivariant to the action of G. Hence, we can use Corr G layer as the next layer.
Correlation on G -Corr G (f, w): Let f ∈ L 2 (G, R) be the input function and w ∈ L 2 (G, R) be the mask. Then analogous to Corr M , we can define Corr G (f, w) as f w : G → R using definition 2. We have used Theorem 2 to show that Corr G (f, w) is equivariant to the action of G. Since this is an operation equivariant to G, we can cascade Corr G .

Volterra on homogeneous spaces
We can see that because the basic architecture of second order Volterra series consists of the following modules: We have shown in Theorem 4, that Corr M 2 (f, w 1 , w 2 ) is equivariant to the action of G. Hence, we can use Corr G 2 (f, w 1 , w 2 ) layer as the next layer. Second order Volterra on G -Corr G 2 (f, w 1 , w 2 ): Let f ∈ L 2 (G, R) be the input function and w 1 : G → R and w 2 : (G) ⊕2 → R be the kernels. Then, Corr G 2 (f, w 1 , w 2 ) := 2 j=1 (f j w j ) : G → R. We have used Theorem 4 to show that Corr G 2 (f, w 1 , w 2 ) is equivariant to the action of G. Since this is an operation equivariant to G, we can cascade Corr G 2 (f, w 1 , w 2 ).

Other Layers
Activation function: Since the outputs of all the above layers are functions from G to R, we will use the standard activation operation on R.

Invariant last layer:
As both layers, Corr M 2 and Corr G 2 are equivariant to the action of G, so are the cascaded layers. Since, if the input signal is transformed by a group element g ∈ G, so is the output of Corr M 2 as this layer is equivariant. Thus the output of Corr M 2 is transformed by the same group element g. Hence, the input of Corr G 2 is transformed by g and due to the equivariance so is the output of Corr G 2 . This justifies that the cascaded layers are equivariant to the action of G. Hence, after the cascaded correlation layers, the output f ∈ L 2 (G, R) lies on a G set. Similar to the Euclidean CNN, we want the last layer to be G invariant. Hence, we will integrate f on the domain G and return a scalar. Note that in the experiment, we learn multiple channels analogous to the Euclidean CNN, where in each channel, we learn a G equivariant f ∈ L 2 (G, R). Thus, after the integration, we have c scalars, where c is the number of channels, which will be input to the softmax fully connected layer similar to the Euclidean CNN. We abbreviate this last layer as iL (invariant layer).
A schematic diagram of our proposed VolterraNet is shown in Fig. 4.

DILATED VOLTERRANET
In this section, we propose a dilated VolterraNet framework which is suitable for sequential data. Sequential data here refers to a sequence of data points (signal measurements at voxels) along the neuronal fiber tracts that are extracted from diffusion MRI data sets. Neuronal fiber tracts in certain regions of the brain are disrupted by movement disorders such as Parkinsons disease. The sensory motor area tract (pathway) in the brain is one such neuronal pathway where the disease caused changes are expected to be observed. By treating this pathway as a sequence of points where diffusion sensitized MR signal is acquired, we propose to apply the dilated VolterraNet (described below) to analyze this data.
It is known that the sequential data should involve recurrent structure [24], but as pointed out in [25], convolutional architectures often outperform recurrent models in sequential data analysis. Furthermore, recurrent models are computationally more expensive than the convolutional models. But, note that in order to mimic the infinite memory capabilities of a recurrent model, one needs to increase the receptive field by using the dilated convolutions. We will first recap the definition of Euclidean dilated convolution [25] and then describe the proposed dilated VolterraNet.

Euclidean Dilated Convolution:
Given a one-dimensional input sequence x : N → R n and a kernel w : {0, · · · , k − 1} → R, the dilated convolution function (x d w) : N → R n is defined as, where N is the set of natural numbers and k and d are the kernel size and the dilation factor respectively. Note that with d = 1, we get the normal convolution operator. In a dilated CNN, the receptive field size will depend on the depth of the network as well as on the choice of k and d.

Dilated VolterraNet
Now we present a dilated VolterraNet model by combining the VolterraNet with the dilated CNN model. Given a onedimensional input sequence {f i : M → R}, we will first apply Corr M 2 and cascaded Corr G 2 layers to each point in the sequence independently. The output of a Corr G 2 layer is a function G → R. Let the output of the last Corr G 2 layer be {g i : G → R}. Then, we discretize the group G, to represent each g i by a vector x i (as shown in Fig. 5). The steps of discretization, i.e., length of x i , are chosen via grid search in the experimental section. This is analogous to the standard practice in literature [5], [7]. Polar coordinates on G are used to discretize G and then we use the dilated CNN by treating each sample as a vector. This essentially amounts to choosing a uniform grid in the parameter space using Rodrigues vectors [26], although more sophisticated techniques can be employed in this context [27]. Now, we input {g i } to the Euclidean dilated CNN (since the components of g i are real) to construct a dilated VolterraNet framework. In Fig. 5, we present a schematic of dilated VolterraNet with input {f i } followed by Corr M 2 →ReLU → Corr G 2 → ReLU → Corr G 2 . A self explanatory schematic diagram of the dilated VolterraNet architecture is shown in Fig. 5.

EXPERIMENTS
In this section, we present experiments on spherical MNIST, atomic energy and Shrec17 data sets respectively. We present comparisons of performance of our VolterraNet to Spherical CNN by Cohen et al. [5] and Clebsch-Gordan net by Kondor et al. [8]. Further, we also present a separate comparison with the spherical CNN presented most recently in [7] on the shrec17 data set. The separate comparison was necessary due to the fact that the loss function used in [7] was distinct from the one used in [5], [8]. Finally, we extend the VolterraNet to a dilated version, a higher order analogue of the dilated CNN and use it to demonstrate its efficacy in group testing on diffusion MRI (dMRI) data acquired from movement disorder patients. The data in this example reside in a product space, S 2 × R + , which is a Riemannian homogeneous space distinct from S 2 . This experiment serves as an example demonstrating the ability of VolterraNet to cope with manifolds other than the sphere.
Choice of basis: In our experiments, we have three examples of manifolds, S 2 , S 2 × R + and P 3 . For SO (3), we use the Weigner basis and for S 2 SO(3)/SO (2), we use the induced basis, i.e., the Spherical Harmonics basis. For S 2 × R + , we use the product basis of each of the spaces, i.e., Spherical Harmonics for S 2 and the canonical basis for R + . Since P 3 can be written as GL (3) In all the experiments we compare the VolterraNet architecture to the state of the art models, and additionally compare it to an architecture which we call Homogeneous CNN (HCNN) which replaces the Volterra non-linear convolutions/correlations with the correlation operations from definition 2. We have released an implementation of the VolterraNet architecture with the Spherical MNIST experiment which can be found at, https://github.com/cvgmi/volterra-net.

Synthetic Data Experiment: Classification of data on P 3
In this section, we first describe the process of synthesizing functions f : P 3 → [0, 1]. In this experiment, we generated data samples drawn from distinct Gaussian distributions defined on P 3 [28]. Let X be a P 3 valued random variable that follows N (M, σ), then, the p.d.f. of X is given by [28]: where, d(., .) is the affine invariant geodesic distance on P 3 as given by d(M, X) = trace (logm (M −1 X)) 2 .
We first chose two sufficiently spaced apart location parameters M 1 and M 2 and then for the i th class we generate Gaussian distributions with location parameters that are perturbations of M i and with variance 1. This gives us two clusters in the space of Gaussian densities on P 3 , which we will classify using HCNN and VolterraNet. In this case, the HCNN network architecture is given by: Corr P3 → ReLU → Corr GL(3) → ReLU → Corr GL(3) → ReLU → iL → FC. and for VolterraNet the correlation operations are replaced with the corresponding Volterra convolutions.  The data consists of 500 samples from each class, where each sample is drawn from a Gaussian distribution on P 3 . The classification accuracies in a ten-fold partition of the data are shown in Table 1. In most deep learning applications, one is used to seeing a high classification accuracy, but we believe that this can be achieved here as well by increasing the number of layers and possibly overfitting the data. The purpose of this synthetic experiment was not to seek an "optimal" classification accuracy but to provide a flexible framework which if "optimally" tuned can yield a good testing accuracy for data whose domain is a non-compact Riemannian homogeneous space.

Spherical MNIST Data Experiment
The spherical MNIST data are generated using the scheme described in [5]. There are two instances of this data, one in which we project MNIST digits on the northern hemisphere (denoted by 'NR') and the other where we apply random rotation afterwards (denoted by 'R'). The spherical signal is discretized using a bandwidth of 60.
We selected the same baseline model as was chosen in [5], which is a Euclidean CNN with 5 × 5 filters and 32, 64, 10 channels with a stride of 3 in each layer. This CNN is trained by mapping the digits from the northern hemisphere onto the plane. The Spherical CNN model [5] we used has the following architecture (as was reported in [5]), Corr S 2 → ReLU → Corr SO(3) → ReLU → FC with bandwidths 20, 12 and the number of channels 20, 40 respectively. We used the same architecture for Clebsch-Gordan net as was reported in [8].
For our method, we used a second order Volterra network with the following architecture: Corr S 2 2 → ReLU → iL → FC with bandwidth 30, 20 respectively and number of features 25, 10 respectively. We chose a batchsize of 32 and learning rate of 5 × 10 −3 with ADAM optimization [29].
We performed three sets of experiments: non rotated training and test sets (denoted by 'NR/NR'), non rotated training and randomly rotated test sets (denoted by 'NR/R') and randomly rotated both training and test sets (denoted by 'R/R'). The comparative results in terms of classification accuracy are shown in Table 2 We can see that the VolterraNet performed better than all the three competing networks for both the 'R/R' and 'NR/R' cases. Note that in terms of number of parameters, VolterraNet used 46010, while Spherical CNN used 58550 and Clebsch-Gordan net used 342086. The baseline CNN used 68000 parameters. Thus in comparison, we have approximately an 86% reduction in parameters over the Clebsch-Gordan net with almost equal or better classification accuracy. In comparison to the Spherical CNN, we have approximately a 21% reduction in the parameters over the Spherical CNN while achieving significantly better performance. This clearly depicts the usefulness of our proposed VolterraNet in comparison to existing networks used in processing this type of data in a non-Euclidean domain.

3D Shape Recognition Experiment
We now report results for shape classification using the Shrec17 dataset [30] which consists of 51300 3D models spread over 55 classes. This dataset is divided into a 70/10/20 split for train/validation/test. Following the method in [5], we perturbed the dataset using random rotations. We processed the dataset as in [5]. Basically, we represented each 3D model by a spherical signal using a ray casting scheme. For each point on the sphere, a ray towards the origin is sent which collects the ray length, cosine and sine of the surface angle. Additionally, the convex hull of the 3D shape gives 3 more channels, which results in 6 input channels. The spherical signal is discretized using Discoll-Healy grid [13] grid with a bandwidth of 128.
The Spherical CNN model [5] we used has the following architecture (as was reported in [5]): with bandwidths 32, 22 and 7 and the number of channels 50, 70 and 350 respectively. We used the same architecture for Clebsch-Gordan net as was reported in [8].
In our method, we used a second order Volterra network with the following architecture: → BN → ReLU → iL → FC with bandwidths 10, 8, 8 respectively and number of features 60, 80, 100 respectively. We chose a batch size of 100 and a learning rate of 5 × 10 −3 with ADAM optimization [29]. Table 3 summarizes comparison of VolterraNet with other existing deep network architectures that reported results on this data in literature. From this table, it is evident that VolterraNet almost always yields classification accuracy results within the top three methods, while having the best parameter efficiency.
Comparison with Esteves et al. [7]: We also compared our VolterraNet with recent work of Esteves et al. [7] using an extra in-batch triplet loss [34] (as used in Esteves et al. [7]). We show the comparison results in Table 3 (last two rows), which clearly shows that, (a) The VolterraNet outperforms the network in [7] (which is the state-of-the-art algorithm in terms of parameter efficiency). (b) The triplet loss boosts the performance of VolterraNet relative to the baseline loss of cross entropy.

Regression Experiment: Prediction of Atomic Energy
Here, we report the application of our VolterraNet to the QM7 dataset [35], [36], where the goal is to regress over atomization energies of molecules given atomic positions (p i ) and charges (z i ). Each molecule consists of at most   [37] 5.96 LGIKA (RF) [38] 10.82 RBF Kernels/ Random CM [37] 11.42 RBF Kernels/ Sorted CM [37] 12. 59 MLP/ Sorted CM [37] 16.06 Spherical CNN [5] 8.47 Clebsch-Gordan net [8] 7.97 Ours (VolterraNet) 5.92 (1st)  We use the Coulomb Matrix (CM) representation proposed by [36], which is rotation and translation invariant but not permutation invariant. We used a similar experimental setup to that described in [5] for this regression problem. We define a sphere S i around p i for each i th atom. We define the potential functions for every z and for every x on the sphere S i . This yields a spherical signal consisting of 5 features which were discretized using the Discoll-Healy grid [13] with a bandwidth of 20. For the VolterraNet, we used one S 2 and SO(3) second order Volterra block with bandwidths 12, 8, 8, 4 and number of features 8, 10, 20, 50 respectively. We compute the loss and report it in Table 4. We can see that VolterraNet performs better than the competing methods. For Spherical CNN [5] and Clebsch-Gordan net [8], we used similar architectures as described in the respective papers. Spherical CNN [5] and Clebsch-Gordan net [8] use 1.4M and 1.1M parameters respectively, while the VolterraNet used 128460, nearly an order of magnitude reduction of parameters, while achieving the best classification accuracy. This illustrates the parameter efficiency gains that we get from using a higher order correlation, a richer feature, in the VolterraNet.

Network architecture for dMRI data Using Dilated VolterraNet
Diffusion MRI (dMRI) is an imaging modality that noninvasively measures the diffusion of water molecules in tissue samples being imaged. It serves as an interesting example of our framework since dMRI data can naturally be described by functions on a Riemannian homogeneous space. In this section we describe the dMRI data and its processing using the framework presented in this paper, which will help the reader understand the results of the following subsections.
In each voxel of a dMRI data set, the signal magnitude is represented by a real number along each gradient magnetic field over a hemi-sphere of directions in 3D. Hence, in each voxel, we have a function f : S 2 × R + → R. The proposed network architecture has two components: intra-voxel layers and inter-voxel layers. The intra-voxel layers extract features from each voxels, while the inter-voxel layers use dilated convolution to capture the interaction between extracted features. In our application in the next section we extract a sequence of voxels lying along a nerve fiber bundle in the brain known to be affected in Parkinson disease. Hence we have a sequence of functions along the fiber bundle {f i : S 2 × R + → R}, making the application of the dilated VolterraNet in section 6.2 appropriate.

Extracting intra-voxel features
We extract intra-voxel features (independently) from each voxel. As mentioned before, in each voxel we have a function f : S 2 × R + → R. Since S 2 × R + is a Riemannian homogeneous space (endowed with the product metric), we will use a cascade of the Volterra correlation layers defined earlier (with standard non-linearity between layers) to extract features which are equivariant to the action of SO(3) × (R \ {0}). These features are extracted independently within each voxel. Observe that this equivariance property is natural in the context of dMRI data. Since in each voxel of the dMRI data, the signal is acquired in different directions (in 3D), we want the features to be equivariant to the 3D rotations and scaling.

Extracting inter-voxel features
After the extraction of the intra-voxel features (which are equivariant to the action of G), we seek to derive features based on the interactions between the voxels. Here we use the standard dilated convolution (as described in 6.1) layers to capture the interaction between features extracted from voxels. Now, we are ready to give the details of the data used for the experiment of our proposed Dilated-VolterraNet. For this experiment, we used a second order Dilated-VolterraNet with 3 dilated layers of kernel size (5×5) and dilation factors of 1, 2 and 4 respectively. We first extracted the sensory motor area tracts called M1 fiber tracts (as shown in Fig.6) using the FSL software [40] from both the left ('LM1') and right hemispheres ('RM1'). We applied the Dilated-Volterra to the raw signal measurements along the fiber tracts. Our model was trained on both the control (normal subjects) group and the PD group data sets, i.e., we learned two Dilated VolterraNet models, one each for the control and the PD groups respectively. Using the method from [41] we compute the distance between these two models, denoted by d. Now we permute the class labels between the classes, retrain two models and compute the network distance d j . If there are significant differences between the classes we should expect that d > d j . We repeat this experiment for j = 1, . . . , 1000 and let p be the proportion of experiments for which d ≤ d j . This is a permutation test of the null hypothesis: there is no significant difference between the tract models learned from the two different classes. We also performed ablation studies with regards to the order of the model in the Dilated-VolterraNet to study the effect of higher order convolutions. We used the following architecture Corr and Corr S 2 2 to Corr SO(3) and Corr S 2 respectively in an alternating fashion. The ablation study result is presented in Table 5. The 'N' in Corr SO(3) (Corr S 2 ) indicates that we used second order for the respective convolution operator. The table shows that a second order representation in later layers is very useful and hence a model with Corr SO(3) performs poorly but a model with Corr S 2 and Corr SO(3) 2 performs as good as the model with both second order kernels. Both models reject the null hypothesis with 95% confidence.

Dilated VolterraNet
We compared our dilated VolterraNet with the standard (no dilation) VoletrraNet and as expected we needed ≈ 1.5× parameters in case of standard VolterraNet to achieve pvalues of 0.03 and 0.04 for LM1 and RM1 respectively, which is similar in performance to its dilated counterpart. Additionally, we compared our network's performance to the performance of a similar dMRI architecture (recurrent model) namely, the SPD-SRU [39] and the baseline model used for comparison in [39] (see section 5.2 of [39] for details on the baseline model). We found that the baseline method yielded a p-value of 0.17 and 0.34 respectively for 'LM1' and 'RM1'. Whereas, the SPD-SRU architecture yielded a p-values of 0.01 and 0.032 respectively. We can conclude that both using standard and Dialted VolterraNet we can reject the null  hypothesis with 95% confidence whereas Dilated VoletrraNet can achieve the statistically significant result with ≈ 33% reduction in number of parameters compared to its standard counterpart.

CONCLUSIONS
In this paper, we presented a novel generalization of CNNs to non-Euclidean domains specifically, Riemannian homogeneous spaces. More precisely, we introduced higher order convolutions -represented using a Volterra series -on Riemannian homogeneous spaces. We call our network a Volterra homogeneous CNN abbreviated as VolterraNet. The salient contributions of our work are: (i) A proof of equivariance of higher order convolutions to group actions on homogeneous Riemannian manifolds. Proofs of generalized Linear Shift Invariant (equivariant) and Nonlinear Shift Invariant (eqivariant) theorems for correlations and Volterra series defined on Riemannian homogeneous spaces. (ii) We prove that second order Volterra convolutions can be expressed as a cascade of convolutions. This allows for efficient implementation of second-order Volterra representation used in the VolterraNet. (iii) In support of our conjecture on the reduced number of parameters, real data experiments empirically demonstrate that VolterraNet requires less number of parameters to achieve the baseline accuracy of classification in comparison to both Spherical-CNN and Clebsch-Gordan net. (iv) We also presented a dilated VolterraNet that was shown to be effective on a group testing experiment on movement disorder patients. Our future work will be focused on performing more real data experiments to demonstrate the power of VolterraNet for a variety of data domains that are Riemannian homogeneous spaces.