Deflation as a Method of Variance Reduction for Estimating the Trace of a Matrix Inverse
Arjun Singh Gambhir, Andreas Stathopoulos, Kostas Orginos · SIAM Journal on Scientific Computing · 2017
Many fields require computing the trace of the inverse of a large, sparse matrix. Since dense matrix methods are not practical, the typical method used for such computations is the Hutchinson method, which is a Monte Carlo (MC) averaging over matrix quadratures. To improve its slow convergence, several variance reduction techniques have been proposed. In this paper, we study the effects of deflating the near null singular value space. We make two main contributions: one theoretical, and one by engineering a solution to a real-world application. First, we analyze the variance of the Hutchinson method as a function of the deflated singular values and vectors. By assuming additionally that the singular vectors are random unitary matrices, we arrive at concise formulas for the deflated variance that include only the variance and the mean of the singular values. In this case, we make the remarkable observation that deflation may increase variance for Hermitian matrices but not for non-Hermitian ones. The theory can be used as a model for predicting the benefits of deflation. Experimentation shows that the model is robust even when the singular vectors are not random. Second, we use deflation in the context of a large scale application of “disconnected diagrams” in lattice quantum chromodynamics. On lattices, hierarchical probing (HP) has previously provided significant variance reduction over MC by removing “error” from neighboring nodes of increasing distance in the lattice. Although deflation used directly on MC yields a limited improvement of 30% in our problem, when combined with HP they reduce variance by a factor of about 60 over MC. We explain this synergy theoretically and provide a thorough experimental analysis. One of the important steps of our solution is the precomputation of 1000 smallest singular values of an ill-conditioned matrix of size 25 million. Using the state-of-the-art packages PRIMME and a domain-specific algebraic multigrid preconditioner, we solve this large eigenvalue computation on 32 nodes of a Cray Edison in about 1.5 hours and at a fraction of the cost of our trace computation.