F (ω) − ˆF (ω)
2
dω + 1 2
J
X
j=1
µjβj2, (3.23)
where µj is the user-specified weight of the j-th basis coefficients. As a result, the right-most term of the objective function in Equation 3.23 favors small values for basis coefficients, and thus reduces their variations. By following the same approach as in the derivation of Equation 3.22, the solution to Equation 3.23, when the center and bandwidth parameters are constant, is
f = A + A0+
gF, (3.24)
where A0 ∈ RJ ×J is a diagonal matrix whose j-th diagonal entry is µj.
3.4 Scattered Univariate SRBF Representation
3.4.1 Fitting Algorithm
Although a univariate spherical function F (ω) can be approximated by adopting a set of uniform univariate SRBFs as in Section 3.3, the power of univariate SRBFs over harmonic functions and wavelets mostly lies in the additional degrees of freedom which come from the center and bandwidth parameters. We therefore take a step further to obtain a compact set of scattered univariate SRBFs for approximating F (ω), where the center and bandwidth of each univariate SRBF are adaptive to F (ω). This implies that all the parameters in Equation 3.5 should be solved by a non-linear optimization process.
Instead of solving all the three sets of parameters at the same time, we propose an iterative alternating least-squares algorithm that optimizes only one set of parameters at each step, while leaving the others unchanged. This scheme often yields better results, since the three sets of parameters are highly coupled with each other. Algorithm 3.1 summarizes the pseudo-code of the overall fitting process for our scattered univariate SRBF representation. During each
Algorithm 3.1: Fitting algorithm for the scattered univariate SRBF representation.
Procedure: UniSRBFOptimize(F (ω), J, ˜F )
Input: A univariate spherical function F (ω) on Sm, the number of univariate SRBFs J , and the initial guess ˜F =βj, ξj, λj
J j=1. Output: The optimized parametersβj, ξj, λj J
j=1in Equation 3.5.
begin repeat
Update basis coefficient set {βj}Jj=1 Update center set {ξj}Jj=1
Update bandwidth set {λj}Jj=1 until convergence
Update all parameters to obtain a locally optimal solution to Equation 3.5 end
iteration, we apply the L-BFGS-B solver [16, 212] to separately update the three sets of pa-rameters. In our current implementation, the gradient computation is performed on GPUs using NVIDIA Compute Unified Device Architecture (CUDA) [128]. The computed results are then transferred from GPUs to host memory for the L-BFGS-B solver to update model parameters on CPUs. Since the gradient computation is one of the main performance bottlenecks in the proposed fitting algorithm, this approach can reduce the computation time by a factor of 2 ∼ 5.
Note that the basis coefficients also can be obtained by using ordinary least-squares projection (or regularized least-squares projection if Equation 3.23 is considered instead).
A special advantage of our univariate SRBF representation is that an incremental fitting al-gorithm is straightforward. One can always take the residual function F0(ω) = F (ω) − ˆF (ω) as the input univariate spherical function to Algorithm 3.1, and obtain the parameters of addi-tional univariate SRBFs. Moreover, the above process can be further iteratively performed until a desired fitting error is reached.
3.4.2 Initial Guess
Overview
Since the approximation results significantly depend on the initial seeds of SRBF parameters, we propose a heuristic method to automatically determine a reasonable initial guess in the hope of achieving smaller approximation errors and reducing the computational costs. Experimental results indicate that this heuristic guess of initial parameters generally works better than taking a set of uniform univariate SRBFs to initialize the optimization process, and decreases the computation time by a factor of 2 ∼ 4.
Given a univariate spherical function F (ω), we first estimate the coverage of each direction
in a dense set of unit directions Ω = {ωi ∈ Sm}Ii=1Ω , where IΩ denotes the total number of sam-pling directions in Ω. A priority queue is then constructed with respect to the derived coverage of each direction. To prevent the initial SRBF centers from concentrated in local regions, af-ter selecting a direction ωi as an initial SRBF center, all the directions which locate within the coverage of ωi are marked so that they will not be chosen in subsequent steps. This process continues until all the initial SRBF centers are selected. If all directions are marked before all the SRBF centers are determined, we reduce the coverage of each direction in Ω and the se-lected centers, update the marks, and re-loop over the priority queue to choose the remaining centers. Finally, the initial SRBF bandwidths are derived from the coverage of the selected cen-ters, and the initial basis coefficients are set to the function values of the corresponding selected centers. If univariate Gaussian SRBFs are employed, a preconditioning process based on the mixture model of von Mises-Fisher distributions can be additionally performed to update the initial centers and bandwidths without using non-linear optimization.
Coverage and Bandwidth Estimation
The coverage of a direction ωiis estimated from its resemblance to nearby sampling directions, and can be computed by a heuristic approach. At first, we loop over the directions ωi0 in Ω, in the order from the nearest to the farthest direction with respect to ωi, until
F (ωi) − F (ωi0)
2
exceeds a user-defined threshold or ωi· ωi0 < 0. These nearby directions, which satisfy the above criteria, form a cone-shaped region centered on ωi. The coverage of ωiis then defined as the geodesic distance between ωi and the farthest ωi0 within this cone. Based on the coverage of each direction, the priority queue is constructed by sorting the coverage-weighted function value of each sampling direction.
The remaining problem is to compute the initial bandwidth of a univariate SRBF from the coverage of a selected center. A key observation is that this coverage is indeed related to the variance of a univariate SRBF (Figure 5.5.1 in [44]). Specifically, let φξbe the derived coverage of a selected initial SRBF center ξ. We determine the initial bandwidth of a univariate SRBF by correlating φξto the variance of the univariate SRBF and solving the following equation:
sin φξ=
For univariate Abel-Poisson SRBFs, Equation 3.25 has an analytic solution. From Equation 4.27 in [123], it is easy to verify that the initial bandwidth is
λ = s
1 − sin φξ
1 + sin φξ. (3.26)
Nevertheless, a closed-form solution to Equation 3.25 usually does not exist for most univari-ate SRBFs, for example, univariunivari-ate Gaussian SRBFs. For these univariunivari-ate SRBFs, we instead
approximate the initial bandwidth by a gradient decent approach.
Preconditioning
Remark 3.3 suggests that the estimation techniques for von Mises-Fisher distributions may be applicable to the parameter estimation of the univariate Gaussian SRBF representation. Accord-ing to the experiments, we have found that the von Mises-Fisher clusterAccord-ing algorithm [6, 55], or the mixture model of von Mises-Fisher distributions, indeed improves the initial guess of centers and bandwidths of univariate Gaussian SRBFs. However, there are two principal is-sues that should be noted. First, the mixture model of von Mises-Fisher distributions aims at representing a probability distribution on Sm, while the target of the univariate Gaussian SRBF representation is an arbitrary univariate spherical function on Sm. Second, the relation described in Remark 3.3 only holds for univariate Gaussian SRBFs with non-negative bandwidths. For initial guess preconditioning, the second issue can be easily overcome by constraining the initial bandwidth to be non-negative when solving Equation 3.25, but the von Mises-Fisher clustering algorithm should be slightly modified to address the first issue.
Specifically, our key concept is to regard the function value of a sampling direction as its weight. The overall effect thus is equivalent to transforming the univariate spherical function F (ω) into a discrete probability distribution of sampling directions before applying the cluster-ing algorithm. Based on this concept, Algorithm 3.2 summarizes the modified soft von Mises-Fisher clustering algorithm for preconditioning the initial centers and bandwidths of univariate Gaussian SRBFs. We omit the derivations of Equations in Algorithm 3.2, since it is easy to ver-ify them by following the same approach as in the appendix of [6]. Note that the main purpose of Algorithm 3.2 is to improve the initial guess of centers and bandwidths. The initial basis coefficients are set to the function values of the corresponding SRBF centers at the end of the preconditioning process.