The sparse Fourier transform (SFT) is a kind of
discrete Fourier transform
In mathematics, the discrete Fourier transform (DFT) converts a finite sequence of equally-spaced Sampling (signal processing), samples of a function (mathematics), function into a same-length sequence of equally-spaced samples of the discre ...
(DFT) for handling
big data
Big data primarily refers to data sets that are too large or complex to be dealt with by traditional data processing, data-processing application software, software. Data with many entries (rows) offer greater statistical power, while data with ...
signals. Specifically, it is used in
GPS
The Global Positioning System (GPS) is a satellite-based hyperbolic navigation system owned by the United States Space Force and operated by Mission Delta 31. It is one of the global navigation satellite systems (GNSS) that provide geol ...
synchronization, spectrum sensing and
analog-to-digital converter
In electronics, an analog-to-digital converter (ADC, A/D, or A-to-D) is a system that converts an analog signal, such as a sound picked up by a microphone or light entering a digital camera, into a Digital signal (signal processing), digi ...
s.:
The
fast Fourier transform
A fast Fourier transform (FFT) is an algorithm that computes the discrete Fourier transform (DFT) of a sequence, or its inverse (IDFT). A Fourier transform converts a signal from its original domain (often time or space) to a representation in ...
(FFT) plays an indispensable role on many scientific domains, especially on signal processing. It is one of the top-10 algorithms in the twentieth century. However, with the advent of big data era, the FFT still needs to be improved in order to save more computing power. Recently, the sparse Fourier transform (SFT) has gained a considerable amount of attention, for it performs well on analyzing the long sequence of data with few signal components.
Definition
Consider a sequence ''x''
''n'' of
complex number
In mathematics, a complex number is an element of a number system that extends the real numbers with a specific element denoted , called the imaginary unit and satisfying the equation i^= -1; every complex number can be expressed in the for ...
s. By
Fourier series
A Fourier series () is an Series expansion, expansion of a periodic function into a sum of trigonometric functions. The Fourier series is an example of a trigonometric series. By expressing a function as a sum of sines and cosines, many problems ...
, ''x''
''n'' can be written as
:
Similarly, ''X''
''k'' can be represented as
:
Hence, from the equations above, the mapping is
.
Single frequency recovery
Assume only a single frequency exists in the sequence. In order to recover this frequency from the sequence, it is reasonable to utilize the relationship between adjacent points of the sequence.
Phase encoding
The phase ''k'' can be obtained by dividing the adjacent points of the sequence. In other words,
:
Notice that
.
An aliasing-based search

Seeking phase ''k'' can be done by
Chinese remainder theorem
In mathematics, the Chinese remainder theorem states that if one knows the remainders of the Euclidean division of an integer ''n'' by several integers, then one can determine uniquely the remainder of the division of ''n'' by the product of thes ...
(CRT).
Take
for an example. Now, we have three relatively prime integers 100, 101, and 103. Thus, the equation can be described as
:
By CRT, we have
:
Randomly binning frequencies
Now, we desire to explore the case of multiple frequencies, instead of a single frequency. The adjacent frequencies can be separated by the scaling ''c'' and modulation ''b'' properties. Namely, by randomly choosing the parameters of ''c'' and ''b'', the distribution of all frequencies can be almost a uniform distribution. The figure ''Spread all frequencies'' reveals by randomly binning frequencies, we can utilize the single frequency recovery to seek the main components.
:
where ''c'' is scaling property and ''b'' is modulation property.
By randomly choosing ''c'' and ''b'', the whole spectrum can be looked like
uniform distribution. Then, taking them into
filter bank
In signal processing, a filter bank (or filterbank) is an array of bandpass filters that separates the input signal into multiple components, each one carrying a sub-band of the original signal. One application of a filter bank is a graphic equal ...
s can separate all frequencies, including Gaussians, indicator functions, spike trains, and Dolph-Chebyshev filters.
Each bank only contains a single frequency.
The prototypical SFT
Generally, all SFT follows the three stages
Identifying frequencies
By randomly bining frequencies, all components can be separated. Then, taking them into filter banks, so each band only contains a single frequency. It is convenient to use the methods we mentioned to recover this signal frequency.
Estimating coefficients
After identifying frequencies, we will have many frequency components. We can use Fourier transform to estimate their coefficients.
:
Repeating
Finally, repeating these two stages can we extract the most important components from the original signal.
:
Sparse Fourier transform in the discrete setting
In 2012, Hassanieh, Indyk, Katabi, and Price
proposed an algorithm that takes
samples and runs in the same running time.
Sparse Fourier transform in the high dimensional setting
In 2014, Indyk and Kapralov proposed an algorithm that takes
samples and runs in nearly linear time in
. In 2016, Kapralov proposed an algorithm that uses sublinear samples
and sublinear decoding time
. In 2019, Nakos, Song, and Wang introduced a new algorithm which uses nearly optimal samples
and requires nearly linear time decoding time. A dimension-incremental algorithm was proposed by Potts, Volkmer based on sampling along rank-1 lattices.
Sparse Fourier transform in the continuous setting
There are several works about generalizing the discrete setting into the continuous setting.
Implementations
There are several works based on
MIT
The Massachusetts Institute of Technology (MIT) is a private research university in Cambridge, Massachusetts, United States. Established in 1861, MIT has played a significant role in the development of many areas of modern technology and sc ...
,
MSU,
ETH
Eth ( , uppercase: ⟨Ð⟩, lowercase: ⟨ð⟩; also spelled edh or eð), known as in Old English, is a letter used in Old English, Middle English, Icelandic, Faroese (in which it is called ), and Elfdalian.
It was also used in Sca ...
and University of Technology Chemnitz
UC Also, they are free online.
MSU implementationsMIT implementationsGitHubTUC implementations
Further reading
*
References
{{reflist
Fourier analysis
Big data