(Note: The following content is mainly excerpted from the reference [1] , [2] and [3] listed at the bottom.)
To construct a subspace that captures the action of a matrix, that is, developing an algorithm for constructing low-rank approximation to the original matrix. The most common method is using the randomized projection method, as the following algorithm, named Randomized range finder [1].
Algorithm1: Randomized range finder
Input:
A
∈
R
m
×
n
A \in R^{m\times n}
A∈Rm×n and an integer
l
l
l;
Output: An orthonormal matrix
Q
∈
R
m
×
l
Q\in R^{m\times l}
Q∈Rm×l whose range approximates the range of
A
A
A
Steps:
Here, the entries of the random matrix Ω \Omega Ω obey the Gaussian distribution, thus Ω \Omega Ω is a dense matrix.
The bottleneck in the above algorithm is the computation of the matrix product A Ω A\Omega AΩ. When Ω \Omega Ω is standard Gaussian, the cost of this multiplication is O ( m n l ) O(mnl) O(mnl), the same as a rank-revealing QR algorithm.
The Key idea is to use a structured random matrix that allow us to compute the product in O ( m n log ( l ) ) O(mn\log(l)) O(mnlog(l)) flops.
[4] proposed a subsampled random Fourier transform (SRFT), which is perhaps the simplest example of a structured random matrix that meets the above goals.
Specifically, an SRFT is an
n
×
l
n\times l
n×l matrix of the following form
Ω
=
n
l
D
F
R
,
(1)
\Omega = \sqrt{\frac{n}{l}} DFR, \tag{1}
Ω=lnDFR,(1)
where
Then we can compute the sample matrix Y = A Ω Y=A\Omega Y=AΩ using O ( m n log ( l ) ) O(mn\log(l)) O(mnlog(l)) flops via a subsampled FFT [4]. Then form the basis Q Q Q by orthonormalizing the columns of Y Y Y. See the following algorithm for details.
Algorithm2: Fast Randomized range finder
Input:
A
∈
R
m
×
n
A \in R^{m\times n}
A∈Rm×n and an integer
l
l
l;
Output: An orthonormal matrix
Q
∈
R
m
×
l
Q\in R^{m\times l}
Q∈Rm×l whose range approximates the range of
A
A
A
Steps:
[2] proposed another sparse randomzied maritx named sparse embedding matrix (SEM).
Consider the random linear map S = Φ D S=\Phi D S=ΦD, where S ∈ R k × n S\in R^{k\times n} S∈Rk×n, such that for h : { 1 , ⋯ , n } → { 1 , ⋯ , k } h:\{1,\cdots, n\}\rightarrow \{1,\cdots,k\} h:{1,⋯,n}→{1,⋯,k}, a random map such that for each i ∈ { 1 , ⋯ , n } i\in \{1,\cdots,n\} i∈{1,⋯,n}, h ( i ) = t ′ h(i)=t' h(i)=t′ for t ′ ∈ { 1 , ⋯ , k } t'\in \{1,\cdots,k\} t′∈{1,⋯,k}, with probability 1 / t 1/t 1/t, for a parameter t ∈ N t\in N t∈N we have
A matrix S S S that satisfies 1 & 2 1\&2 1&2 is referred to as a sparse embedding matrix (SEM).
(Refer to Reference [2] for details.)
References:
[1] N.Halko, P.G.Martinsson, J.A.Tropp. Finding structure with randomness: Probabilistic algorithms for constructing approximate matrix decompositions. SIAM Review, 2(53):217-288, 2011.
[2] Yariv Aizenbuda, Gil Shabatb, Amir Averbuchb. Randomized LU decomposition using sparse projections. Computers & Mathematics with Applications, 9(72): 2525-2534, 2016.
[3] 殷术亨. 矩阵 LU 分解及 Cholesky 分解的随机算法研究[D], 重庆大学, 2020.
[4] F. Woolfe, E. Liberty, V. Rokhlin, and M. Tygert. A fast randomized algorithm for the approximation of matrices, Appl. Comput. Harmon, Anal., 25: 335-366, 2008.