Random Osborne: a simple, practical algorithm for Matrix Balancing in near-linear time

04/06/2020
by   Jason M. Altschuler, et al.
0

We revisit Matrix Balancing, a pre-conditioning task used ubiquitously for computing eigenvalues and matrix exponentials. Since 1960, Osborne's algorithm has been the practitioners' algorithm of choice, and is now implemented in most numerical software packages. However, the theoretical properties of Osborne's algorithm are not well understood. Here, we show that a simple random variant of Osborne's algorithm converges in near-linear time in the input sparsity. Specifically, it balances K∈R_≥ 0^n× n after O(mϵ^-2logκ) arithmetic operations, where m is the number of nonzeros in K, ϵ is the ℓ_1 accuracy, and κ=∑_ijK_ij/(min_ij:K_ij≠ 0K_ij) measures the conditioning of K. Previous work had established near-linear runtimes either only for ℓ_2 accuracy (a weaker criterion which is less relevant for applications), or through an entirely different algorithm based on (currently) impractical Laplacian solvers. We further show that if the graph with adjacency matrix K is moderately connected–e.g., if K has at least one positive row/column pair–then Osborne's algorithm initially converges exponentially fast, yielding an improved runtime O(mϵ^-1logκ). We also address numerical precision issues by showing that these runtime bounds still hold when using O(log(nκ/ϵ))-bit numbers. Our results are established through a potential argument that leverages a convex optimization perspective of Osborne's algorithm, and relates the per-iteration progress to the current imbalance as measured in Hellinger distance. Unlike previous analyses, we critically exploit log-convexity of the potential. Our analysis extends to other variants of Osborne's algorithm: along the way, we establish significantly improved runtime bounds for cyclic, greedy, and parallelized variants.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/07/2019

Near-linear time approximation schemes for Steiner tree and forest in low-dimensional spaces

We give an algorithm that computes a (1+ϵ)-approximate Steiner forest in...
research
04/08/2021

Linear and Sublinear Time Spectral Density Estimation

We analyze the popular kernel polynomial method (KPM) for approximating ...
research
07/30/2021

Near-Optimal Spanners for General Graphs in (Nearly) Linear Time

Let G = (V,E,w) be a weighted undirected graph on |V| = n vertices and |...
research
04/07/2020

Approximating Min-Mean-Cycle for low-diameter graphs in near-optimal time and memory

We revisit Min-Mean-Cycle, the classical problem of finding a cycle in a...
research
08/26/2023

Spanning Adjacency Oracles in Sublinear Time

Suppose we are given an n-node, m-edge input graph G, and the goal is to...
research
10/30/2020

A Combinatorial Cut-Based Algorithm for Solving Laplacian Linear Systems

Over the last two decades, a significant line of work in theoretical alg...
research
04/04/2023

Chasing Positive Bodies

We study the problem of chasing positive bodies in ℓ_1: given a sequence...

Please sign up or login with your details

Forgot password? Click here to reset