Showing posts with label fft. Show all posts
Showing posts with label fft. Show all posts

Friday, January 16, 2015

A robust sub-linear time R-FFAST algorithm for computing a sparse DFT

Here is a new algorithm using the fact that the underlying signal is sparse in order to perform faster operations such as DFT in this case ( the faster FFTs are listed under the FFT tag ).


A robust sub-linear time R-FFAST algorithm for computing a sparse DFT by Sameer Pawar, Kannan Ramchandran
The Fast Fourier Transform (FFT) is the most efficiently known way to compute the Discrete Fourier Transform (DFT) of an arbitrary n-length signal, and has a computational complexity of O(n log n). If the DFT X of the signal x has only k non-zero coefficients (where k < n), can we do better? In [1], we addressed this question and presented a novel FFAST (Fast Fourier Aliasing-based Sparse Transform) algorithm that cleverly induces sparse graph alias codes in the DFT domain, via a Chinese-Remainder-Theorem (CRT)-guided sub-sampling operation of the time-domain samples. The resulting sparse graph alias codes are then exploited to devise a fast and iterative onion-peeling style decoder that computes an n length DFT of a signal using only O(k) time-domain samples and O(klog k) computations. The FFAST algorithm is applicable whenever k is sub-linear in n (i.e. k = o(n)), but is obviously most attractive when k is much smaller than n.
In this paper, we adapt the FFAST framework of [1] to the case where the time-domain samples are corrupted by a white Gaussian noise. In particular, we show that the extended noise robust algorithm R-FFAST computes an n-length k-sparse DFT X using O(klog ^3 n) noise-corrupted time-domain samples, in O(klog^4n) computations, i.e., sub-linear time complexity. While our theoretical results are for signals with a uniformly random support of the non-zero DFT coefficients and additive white Gaussian noise, we provide simulation results which demonstrates that the R-FFAST algorithm performs well even for signals like MR images, that have an approximately sparse Fourier spectrum with a non-uniform support for the dominant DFT coefficients.  
 
 
Join the CompressiveSensing subreddit or the Google+ Community and post there !
Liked this entry ? subscribe to Nuit Blanche's feed, there's more where that came from. You can also subscribe to Nuit Blanche by Email, explore the Big Picture in Compressive Sensing or the Matrix Factorization Jungle and join the conversations on compressive sensing, advanced matrix factorization and calibration issues on Linkedin.

Thursday, August 07, 2014

sFFT-DT: Sparse Fast Fourier Transform for Exactly and Generally K-Sparse Signals by Downsampling and Sparse Recovery

Performing FFT using the fact that the underlying signal is sparse has been an item of great interest and several researchers are trying to get the faster algorithm they can ( see the FFT tag) . The following paper is trying to push the envelope. I cannot see an implementation of it listed though. Let us note the use of this approach to perform better localization for the GPS signal.




Fast Fourier Transform (FFT) is one of the most important tools in digital signal processing. FFT costs O(N log N) for transforming a signal of length N. Recently, researchers at MIT have proposed Sparse Fast Fourier Transform (sFFT) [1][2] as a breakthrough with computational complexity O(K log N) and O(K log N log N/K) for exactly K-sparse signal (with only K non-zero frequency grids) and generally K-sparse signal (with K significant frequency grids), respectively, to outperform classic FFT.
In this paper, a new sparse Fast Fourier Transform by downsampling in the time domain (sFFT-DT) is proposed, based on the assumption that the distribution of the non-zero frequency grids is uniform. The idea behind sFFT-DT is to downsample the original input signal at the beginning; then, subsequent processing operates under downsampled signals, where signal lengths are proportional to O(K). Downsampling, however, possibly leads to "aliasing". By the shift property of DFT, we recast the aliasing problem as a "moment-preserving problem (MPP)," which is solvable. We prove two theorems related to initializing the downsampling factors under different conditions to have computational complexity, O(K log K) and O(K^(5/4) log K). Moreover, for generally K-sparse signals, solutions to the MPP are inaccurate due to interference from non-significant frequency grids. We observe that significant frequency grids in aliasing are "sparse". This property is exploited, and a new sparse signal recovery algorithm in the context of compressive sensing is presented to refine the solution to MPP. The computational complexity still costs O(K log K) but requires a larger Big-O constant compared to the case of exactly K-sparse signals. We conduct theoretical complexity analyses and simulations to demonstrate that our method (sFFT-DT) outperforms classic FFT and MIT's sFFT.
Join the CompressiveSensing subreddit or the Google+ Community and post there !
Liked this entry ? subscribe to Nuit Blanche's feed, there's more where that came from. You can also subscribe to Nuit Blanche by Email, explore the Big Picture in Compressive Sensing or the Matrix Factorization Jungle and join the conversations on compressive sensing, advanced matrix factorization and calibration issues on Linkedin.

Friday, October 25, 2013

Sparse FFT implementation: FFAST, Fast Fourier Aliasing-based Sparse Transform

ClickThroughs on an implementation mentioned here on Nuit Blanche


Think of Nuit Blanche as a crossroad. Often times, I request access to implementations so that you can become a rockstar (Nobody Cares About You and Your Algorithm ), Back in May, I asked Kannan Ramchandran and Sameer Pawar about whether an implementation of their paper 

"Kannan t[old] me ...that an implementation should be out by the end of the summer. woohoo! "
Sameer  and Kannan followed through on that e-mail this week with:
 Dear Igor,  
It's been a while since we communicated. At our end, we have made some development towards making the implementation of FFAST accessible to the people. Although we promised a summer- release of the code, it took us more time to get C++ implementation ready than we estimated. To release the FFAST code to general public still needs some more work in terms of web/user interface. But to get started we thought we can at least release it to you. So for now, we have created a guest login account to one of our servers at Berkeley. You can login remotely as follows:....
Unfortunately, I don't have much time to kick the tires on this implementation but Kannan let me know that if you want to have access to the FFAST implementation as is, you can do so by directly contacting Sameer directly at: spawar@eecs.berkeley.edu

Related: 

Wednesday, August 14, 2013

Slides: SPARC 2013, Coding, Complexity, and Sparsity Workshop

Anna Gilbert let me know that the slides of the SPARC 2013 meeting are up (Thank you to Anna Gilbert, S. Muthukrishnan, Hung Q. Ngo, Ely Porat, Atri Rudra, Martin Strauss for making the slides available)


Mary WoottersHigh dimensional probability in theoretical computer science

Abstract Recently, techniques from probability in Banach spaces and geometric functional analysis have found applications in compressed sensing, coding theory, and other areas of theoretical computer science. In this tutorial, I will go over some useful tricks and techniques, with examples.
Slides are available here.

Swastik KoppartyPolynomials and Complexity Theory

Abstract This tutorial will discuss some of the amazing and unexpected applications of polynomials in complexity theory.
Slides are available here.

Jin-Yi CaiDichotomy for Counting Problems

Abstract Emil Post initiated the study of whether there are problems whose Turing degrees of computability are stirctly between Decidable and the Halting Problem. The famous solution came independently from Friedberg and Muchnik, who invented the finite injury priority argument. I would like to revisit Post's Problem, in the context of the complexity of counting probems. I will survey a number of recent dichotomy theorems which have the general flavor that, in a broad class of counting problems within #P, there are really only two levels of complexity: one is tractable, the other is complete. This is philosophically an anti-Friedberg-Muchnik theory, and the frameworks considered include (1) Graph Homomorphisms,(2) Counting, and (3) Holant Problems. http://arxiv.org/abs/0903.4728 http://arxiv.org/abs/1008.0683 http://arxiv.org/abs/1204.6445
Slides are available here.

Jelani NelsonOSNAP: Faster numerical linear algebra algorithms via sparser subspace embeddings

Abstract Let E be a d-dimensional linear subspace of R^n. A subspace embedding for E is a linear map that preserves the l_2 norms of all vectors in E up to 1+eps. We improve a recent result of [Clarkson-Woodruff, STOC'13] and with a much simpler proof: i.e. we show that the Thorup-Zhang sketch (a random sign matrix with one non-zero per column) is a subspace embedding with good probability when the number of rows is O(d^2/eps^2). Once the theorem is formulated the right way, the proof is a simple second moment computation. We then show our main result: that when one has m rows and s non-zeroes per column (the sparse Johnson-Lindenstrauss matrices of [Kane-Nelson, SODA'12]), one can take m = O(d^{1.01}/eps^2), s = O(1/eps). These are the first subspace embeddings to have m = o(d^2) with s = o(d). Our bounds imply improved running times for several numerical linear algebra problems, including approximating leverage scores, least squares regression, l_p regression for p in [1, infty), and low-rank approximation.  
Slides are available here.
Andrew McGregorHomomorphic Sketches: Shrinking Big Data without Sacrificing Structure

Abstract Fingerprinting is a widely-used technique for efficiently verifying that two large files are identical. More generally, sketching is a form of lossy compression based on random linear projections that, for example, could be used to estimate the Hamming distance between the files. Both techniques are particularly useful for monitoring data streams or minimizing communication in distributed and parallel computing. Many applications have been studied extensively including sparse signal recovery, locality sensitive hashing, and linear regression. Our goal is to extend these popular techniques and design random projections that preserve combinatorial and group-theoretic structure in large data sets. In this talk, we present recent results on analyzing spectral graph properties and fingerprinting misaligned text. Both results rely on developing homomorphic sketches that support operations on the compressed data that correspond to operations on the uncompressed data. Applications include the first sublinear space algorithms for processing dynamic graph streams. Includes joint work with Kook Jin Ahn, Alexandr Andoni, Assaf Goldberger, Sudipto Guha, and Ely Porat.
Slides are available here.

Shubhangi SarafIncidence geometry and applications to theoretical computer science

Abstract The classical theorem of Sylvester-Gallai states the following: given a finite set of points in the Euclidean plane, not all on the same line, there exists a line passing through exactly two of the points. This result has a rich and interesting history in mathematics. Surprisingly in recent years variants of the theorem have been influential in various diverse areas of theoretical computer science. In this talk I will describe several extensions to the Sylvester-Gallai theorem - quantitative versions, high dimensional versions, colorful versions and average case versions. I will also describe some of the applications and connections in theoretical computer science to areas such as polynomial identity testing, and local algorithms for error correcting codes. Based on joint works with Albert Ai, Zeev Dvir, Neeraj Kayal and Avi Wigderson.
Slides are available here.

Ronitt RubinfeldLocal Decompression

Abstract We present a simple adaptation of the Lempel Ziv 78' (LZ78) compression scheme ({\em IEEE Transactions on Information Theory, 1978}) that supports efficient random access to the input string. Namely, given query access to the compressed string, it is possible to efficiently recover any symbol of the input string. The compression algorithm is given as input a parameter $\eps >0$, and with very high probability increases the length of the compressed string by at most a factor of $(1+\eps)$. The access time is $O(\log n + 1/\eps^2)$ in expectation, and $O(\log n/\eps^2)$ with high probability. The scheme relies on sparse transitive-closure spanners. Any (consecutive) substring of the input string can be retrieved at an additional additive cost in the running time of the length of the substring. We also formally establish the necessity of modifying LZ78 so as to allow efficient random access. Specifically, we construct a family of strings for which $\Omega(n/\log n)$ queries to the LZ78-compressed string are required in order to recover a single symbol in the input string. The main benefit of the proposed scheme is that it preserves the online nature and simplicity of LZ78, and that for {\em every} input string, the length of the compressed string is only a small factor larger than that obtained by running LZ78. Joint work with Akashnil Dutta, Reut Levi and Dana Ron.  
Slides are available here.

Piotr IndykSample-Optimal Average-Case Sparse Fourier Transform

Abstract We present the first sample-optimal sub-linear time algorithms for the sparse Discrete Fourier Transform over a two-dimensional sqrt{n} x sqrt{n} grid. Our algorithms are ??analyzed for the average case signals. For signals whose spectrum is exactly sparse, we present algorithms that use O(k) samples and run in O(klogk) time, where k is the expected sparsity of the signal. For signals whose spectrum is approximately sparse, we have an algorithm that uses O(k log n) samples and runs in O(k log^2 n) time, for a wide range of k. All presented algorithms match the lower bounds on sample complexity for their respective signal models. The talk will cover the material from the joint papers with Badih Ghazi, Haitham Hassanieh, Dina Katabi, Eric Price and Lixin Shi. The papers are available at http://groups.csail.mit.edu/netmit/sFFT/  
Slides are available here.

David WoodruffHow Robust are Linear Sketches to Adaptive Inputs?

Abstract Linear sketches turn an n-dimensional input into a concise lower-dimensional representation via a linear transformation. In almost any realistic setting a linear sketch faces the possibility that its inputs are correlated with previous evaluations of the sketch. Known techniques no longer guarantee the correctness of the output in the presence of such correlations. We therefore ask: are linear sketches inherently non-robust to adaptively chosen inputs? We give a strong affirmative answer to this question. Specifically, we show that no linear sketch approximates the Euclidean norm of its input to within an arbitrary multiplicative approximation factor on a polynomial number of adaptively chosen inputs. The result remains true even if the dimension of the sketch is d = n - o(n) and the sketch is given unbounded computation time. Our result is based on an algorithm with running time polynomial in d that adaptively finds a distribution over inputs on which the sketch is incorrect with constant probability. Our result implies several corollaries for related problems including lp-norm estimation and l2/l2 compressed sensing in the presence of adaptively chosen inputs. Joint work with Moritz Hardt.
Slides are available here.

Eric PriceSparse Recovery and Fourier Sampling

Abstract The goal of "stable sparse recovery" or "compressive sensing" is to recover a K-sparse approximation x' of a vector x in R^N from M linear measurements of x. This problem has a wide variety of applications, including streaming algorithms, image acquisition, and genetic testing. A related problem is that of computing a "sparse" Fourier transform, which approximates the Fast Fourier Transform in less than N log N time. In this talk I will survey the results in the area and describe general techniques used in solving them.
Slides are available here.

Adam SmithPrivacy and the Analysis of High-Dimensional Data

Abstract I'll explain why the curse of dimensionality takes on new dimensions in the context of private data analysis. After a general introduction, I will discuss recent results on differentially private sparse regression. Our results shed new light on the robustness of common techniques for solving sparse regression problems, such as the L1 regularization. Based on joint work with Dan Kifer (Penn State) and Abhradeep Guha Thakurta (now at MSR and Stanford).  
Slides are available here.

Richard LiptonNew and Old Graph Products

Abstract Graph products take two or more graphs and create a new graph. They have many applications in combinatorics and in theory. For example, the strong graph product plays a central role in the definition of the Shannon Capacity of a graph. In this talk I will discuss some of the classic graph products and then introduce several new ones. These have some interesting properties, have some interesting applications, and remain difficult to understand. I will present what I know about these new products and connect them to some important open problems from complexity theory.  
Slides are available here.


Join the CompressiveSensing subreddit or the Google+ Community and post there !
Liked this entry ? subscribe to Nuit Blanche's feed, there's more where that came from. You can also subscribe to Nuit Blanche by Email, explore the Big Picture in Compressive Sensing or the Matrix Factorization Jungle and join the conversations on compressive sensing, advanced matrix factorization and calibration issues on Linkedin.

Friday, May 17, 2013

Sparse FFT implementations

Dmitry Savostyanov pointed me to the location of an implementation of the other super Fast FFT we mentioned last September. It is on GitHub here as part of the very promising TT-Toolbox. 

Let us note that the sparse FFT "looks" slower than MIT's sFFT and that the MIT sFFT has currently only version 1 and 2 while Piotr mentioned results for version 3 and 4 on Wednsday at the "Big data: theoretical and practical challenges" workshop.

We are waiting for the Berkeley implementation mentioned previously for the end of the summer. The Ann Arbor FFT (AAFFT) is here.  

With regards to the comparison between sFFT [2] and the TT_toolbox version [1]


It looks like sFFT version 3.0 scales better for K sparse signals than the TT_toolvox one which scales as K^3. But I wouldn't mind seeing comparison for compressible signals (I think it is version 4.0 for sFFT) and the TT_toolbox one. An interesting comparison should eventually entail not integer frequencies and higher dimensions as well. 




[1] Superfast Fourier Transform Using QTT Approximation by Sergey Dolgov, Boris Khoromskij and Dmitry Savostyanov.
[2] http://groups.csail.mit.edu/netmit/sFFT/results.html

Monday, March 04, 2013

Slides of the Workshop on Sparse Fourier Transform Etc.

Anna Gilbert, Piotr Indyk, Dina Katabi and Ramesh Raskar organized a meeting on the Sparse Fourier Transform and other related subjects on 17-18 February, 2013. Here is the list of presentations and slides from the meeting's page, enjoy!

Tutorials

Presentations

Looking at Dina Katabi's slides, one wonders if that is going to be a means for companies to go back to FBP in CT systems :









Image Credit: NASA/JPL/Space Science Institute
N00203485.jpg was taken on March 01, 2013 and received on Earth March 03, 2013. The camera was pointing toward HATI, and the image was taken using the CL1 and CL2 filters.


Join the CompressiveSensing subreddit or the Google+ Community and post there !
Liked this entry ? subscribe to Nuit Blanche's feed, there's more where that came from. You can also subscribe to Nuit Blanche by Email, explore the Big Picture in Compressive Sensing or the Matrix Factorization Jungle and join the conversations on compressive sensing, advanced matrix factorization and calibration issues on Linkedin.

Friday, September 21, 2012

Another Super Fast FFT

We propose Fourier transform algorithms using QTT format for data-sparse approximate representation of one- and multi-dimensional vectors (m-tensors). Although the Fourier matrix itself does not have a low-rank QTT representation, it can be efficiently applied to a vector in the QTT format exploiting the multilevel structure of the Cooley-Tukey algorithm. The m-dimensional Fourier transform of an n×⋯×n vector with n=2 d has O(m d2 R3)complexity, where R is the maximum QTT-rank of input, output and all intermediate vectors in the procedure. For the vectors with moderate R and large n and m the proposed algorithm outperforms the O(nm logn) fast Fourier transform (FFT) algorithm and has asymptotically the same log-squared complexity as the superfast quantum Fourier transform (QFT) algorithm. By numerical experiments we demonstrate the examples of problems for which the use of QTT format relaxes the grid size constrains and allows the high-resolution computations of Fourier images and convolutions in higher dimensions without the ‘curse of dimensionality’. We compare the proposed method with Sparse Fourier transform algorithms and show that our approach is competitive for signals with small number of randomly distributed frequencies and signals with limited bandwidth.
No toolbox available. An intriguing aspect of this paper aside from providing a competitor to sFFT is the QTT format mentioned. More on that later.




Liked this entry ? subscribe to Nuit Blanche's feed, there's more where that came from. You can also subscribe to Nuit Blanche by Email, explore the Big Picture in Compressive Sensing or the Matrix Factorization Jungle and join the conversations on compressive sensing, advanced matrix factorization and calibration issues on Linkedin.

Sunday, January 22, 2012

sFFT: Sparse Fast Fourier Transform

Remember the new FFT algorithm out of MIT that uses the sparsity of the signal to perform a Faster FFT ? Well, the authors (Dina Katabi, Piotr Indyk, Haitham Hassanieh, Eric Price), just set up a website that will  now eventually hosts an implementation of it. ( Piotr  tells me it should be up after the news storm has settled down). The KIHP sFFT page currently starts with:

IntroductionWe consider the sparse Fourier transform problem: given a complex vector x of length n, and a parameter k, estimate the k largest (in magnitude) coefficients of the Fourier transform of x. The problem is of key interest in several areas, including signal processing, audio/image/video compression, and learning theory. We propose a new algorithm for this problem. The algorithm leverages techniques from digital signal pro- cessing, notably Gaussian and Dolph-Chebyshev filters. The resulting algorithm is structurally simpler than its predecessors. As a consequence, we are able to extend considerably the range of sparsity, k, for which the algorithm is faster than FFT, both in theory and practice.

Algorithm

Algorithm

Complexity

Sparsity Range

sFFT 1.0 (Non-Iterative Alghorithm)::
sFFT 2.0 (sFFT 1.0 + Heuristic)::
sFFT 3.0 (Exact k Sparse Algorithm)::
sFFT 4.0 (General k Sparse Algorithm)::
Lower Bound::

The figure of deep interest is here I think with a comparison with the Fastest Fourier Transform in the West. (FFTW)




The paper presented at SODA is Simple and Practical Algorithm for Sparse Fourier Transform by  Haitham Hassanieh ,  Piotr Indyk  , Dina Katabi, and  Eric Price. The abstract reads:

 . We consider the sparse Fourier transform problem: given a complex vector x of length n, and a parameter k, estimate the k largest (in magnitude) coefficients of the Fourier transform of x. The problem is of key interest in several areas, including signal processing, audio/image/video compression, and learning theory. We propose a new algorithm for this problem. The algorithm leverages techniques from digital signal processing, notably Gaussian and Dolph-Chebyshev filters. Unlike the typical approach to this problem, our algorithm is not iterative. That is, instead of estimating “large” coefficients, subtracting them and recursing on the reminder, it identifies and estimates the k largest coefficients in “one shot”, in a manner akin to sketching/streaming algorithms. The resulting algorithm is structurally simpler than its predecessors. As a consequence, we are able to extend considerably the range of sparsity, k, for which the algorithm is faster than FFT, both in theory and practice.


Liked this entry ? subscribe to Nuit Blanche's feed, there's more where that came from. You can also subscribe to Nuit Blanche by Email, explore the Big Picture in Compressive Sensing or the Matrix Factorization Jungle and join the conversations on compressive sensing, advanced matrix factorization and calibration issues on Linkedin.

Thursday, January 19, 2012

MIT-FFT: Please think of the marketers, they are people too !


Nuit Blanche has been scooped by TechCrunch! My excuse? I was too busy asking questions at MIA 2012 ( more on that later). So let us provide some context, ever since Empirical Evaluation of a Sub-Linear Time Sparse DFT Algorithm by Mark Iwen, Anna Gilbert and Martin Strauss, I had not seen much activity on one of the cornerstone algorithm of the 20th century seen through the eyes of sparsity, a subject of central interest in compressive sensing. After talking to him, Mark eventually put an implementation of the Ann Arbor FFT (AAFFT) on Sourceforge and according to the site it got about 10,000 downloads. It is a large success in our community but it definitely is not a blockbuster outside of it. The idea is to perform an FFT on a signal known to be sparse (irrespective to where it is sparse) and be computationally more efficient than the current FFT count. A week ago, a different algorithm from MIT appeared on the interwebs. that is an improvement over the AAFFT and is the subject of the TechCrunch story. Without further due here is: Nearly Optimal Sparse Fourier Transform by Haitham Hassanieh, Piotr Indyk, Dina Katabi, Eric Price. The abstract reads:
We consider the problem of computing the k-sparse approximation to the discrete Fourier transform of an n-dimensional signal. We show:
* An O(k log n)-time algorithm for the case where the input signal has at most k non-zero Fourier coefficients, and
* An O(k log n log(n/k))-time algorithm for general input signals.
Both algorithms achieve o(n log n) time, and thus improve over the Fast Fourier Transform, for any k = o(n). Further, they are the first known algorithms that satisfy this property. Also, if one assumes that the Fast Fourier Transform is optimal, the algorithm for the exactly k-sparse case is optimal for any k = n^{\Omega(1)} . We complement our algorithmic results by showing that any algorithm for computing the sparse Fourier transform of a general signal must use at least \Omega(k log(n/k)/ log log n) signal samples, even if it is allowed to perform adaptive sampling.


Folks, you need a name for this algorithm, I know you did the hard work, but please think of the marketers, they are people too! Since we already have the Fastest Fourier Transform in the West. (FFTW), I wonder if FFTE, Faster Fourier Transform in the East, would work since MIT is on the East coast...you know the usual East coast - West coast thingy ... oh well...

Call me a snob but what's interesting to me is that while this new algorithm is certainly a game changer, I am much more interested in this paper who Piotr Indyk also co-wrote which in my mind is certainly more of a 21st century problem: Approximate Nearest Neighbor: Towards Removing the Curse of Dimensionality by Sariel Har-Peled, Piotr Indyk, Rajeev Motwani. The abstract reads:

We present two algorithms for the approximate nearest neighbor problem in high dimensional spaces. For data sets of size n living in IRd , the algorithms require space that is only polynomial in n and d, while achieving query times that are sub-linear in n and polynomial in d. We also show applications to other high-dimensional geometric problems, such as the approximate minimum spanning tree.

 Credit Photo: NASA, Mars from Opportunity's Camera, Sol 2820


Liked this entry ? subscribe to Nuit Blanche's feed, there's more where that came from. You can also subscribe to Nuit Blanche by Email, explore the Big Picture in Compressive Sensing or the Matrix Factorization Jungle and join the conversations on compressive sensing, advanced matrix factorization and calibration issues on Linkedin.

Printfriendly