Discrete Fourier Transform (DFT) Definition Given x ∈ C n , compute Fourier transform � x : x i = 1 � ω − ij x j ω = e τ i / n � for n j Eric Price (MIT) Sparse Recovery and Fourier Sampling 12 / 37
Discrete Fourier Transform (DFT) Definition Given x ∈ C n , compute Fourier transform � x : x i = 1 � ω − ij x j ω = e τ i / n � for n j (where τ is the circle constant 6 . 283 ... ) Eric Price (MIT) Sparse Recovery and Fourier Sampling 12 / 37
Discrete Fourier Transform (DFT) Definition Given x ∈ C n , compute Fourier transform � x : x i = 1 � ω − ij x j ω = e τ i / n � for n j F ij = ω − ij / n � x = F x for (where τ is the circle constant 6 . 283 ... ) Eric Price (MIT) Sparse Recovery and Fourier Sampling 12 / 37
Discrete Fourier Transform (DFT) Definition Given x ∈ C n , compute Fourier transform � x : x i = 1 � ω − ij x j ω = e τ i / n � for n j F ij = ω − ij / n � x = F x for Inverse transform almost identical: (where τ is the circle constant 6 . 283 ... ) Eric Price (MIT) Sparse Recovery and Fourier Sampling 12 / 37
Discrete Fourier Transform (DFT) Definition Given x ∈ C n , compute Fourier transform � x : x i = 1 � ω − ij x j ω = e τ i / n � for n j F ij = ω − ij / n � x = F x for Inverse transform almost identical: � ω ij � x i = x j j ◮ ω → ω − 1 , scale (where τ is the circle constant 6 . 283 ... ) Eric Price (MIT) Sparse Recovery and Fourier Sampling 12 / 37
Discrete Fourier Transform (DFT) Definition Given x ∈ C n , compute Fourier transform � x : x i = 1 � ω − ij x j ω = e τ i / n � for n j F ij = ω − ij / n � x = F x for Inverse transform almost identical: � ω ij � x i = x j j ◮ ω → ω − 1 , scale Lots of nice properties (where τ is the circle constant 6 . 283 ... ) Eric Price (MIT) Sparse Recovery and Fourier Sampling 12 / 37
Discrete Fourier Transform (DFT) Definition Given x ∈ C n , compute Fourier transform � x : x i = 1 � ω − ij x j ω = e τ i / n � for n j F ij = ω − ij / n � x = F x for Inverse transform almost identical: � ω ij � x i = x j j ◮ ω → ω − 1 , scale Lots of nice properties ◮ Convolution ← → Multiplication (where τ is the circle constant 6 . 283 ... ) Eric Price (MIT) Sparse Recovery and Fourier Sampling 12 / 37
Algorithm Simpler case: � x is exactly k -sparse. Eric Price (MIT) Sparse Recovery and Fourier Sampling 13 / 37
Algorithm Simpler case: � x is exactly k -sparse. Theorem We can compute � x in O ( k log n ) expected time. Eric Price (MIT) Sparse Recovery and Fourier Sampling 13 / 37
Algorithm Simpler case: � x is exactly k -sparse. Theorem We can compute � x in O ( k log n ) expected time. Still kind of hard. Eric Price (MIT) Sparse Recovery and Fourier Sampling 13 / 37
Algorithm Simpler case: � x is exactly k -sparse. Theorem We can compute � x in O ( k log n ) expected time. Still kind of hard. Simplest case: � x is exactly 1-sparse. Eric Price (MIT) Sparse Recovery and Fourier Sampling 13 / 37
Algorithm Simpler case: � x is exactly k -sparse. Theorem We can compute � x in O ( k log n ) expected time. Still kind of hard. Simplest case: � x is exactly 1-sparse. Lemma We can compute a 1 -sparse � x in O ( 1 ) time. Eric Price (MIT) Sparse Recovery and Fourier Sampling 13 / 37
Algorithm for k = 1 Lemma a We can compute a 1 -sparse � x in O ( 1 ) time. � x : � a if i = t � x i = t 0 otherwise Eric Price (MIT) Sparse Recovery and Fourier Sampling 14 / 37
Algorithm for k = 1 Lemma a We can compute a 1 -sparse � x in O ( 1 ) time. � x : � a if i = t � x i = t 0 otherwise Then x = ( a , a ω t , a ω 2 t , a ω 3 t , . . . , a ω ( n − 1 ) t ) . Eric Price (MIT) Sparse Recovery and Fourier Sampling 14 / 37
Algorithm for k = 1 Lemma a We can compute a 1 -sparse � x in O ( 1 ) time. � x : � a if i = t � x i = t 0 otherwise Then x = ( a , a ω t , a ω 2 t , a ω 3 t , . . . , a ω ( n − 1 ) t ) . x 0 = a Eric Price (MIT) Sparse Recovery and Fourier Sampling 14 / 37
Algorithm for k = 1 Lemma a We can compute a 1 -sparse � x in O ( 1 ) time. � x : � a if i = t � x i = t 0 otherwise Then x = ( a , a ω t , a ω 2 t , a ω 3 t , . . . , a ω ( n − 1 ) t ) . x 1 = a ω t x 0 = a Eric Price (MIT) Sparse Recovery and Fourier Sampling 14 / 37
Algorithm for k = 1 Lemma a We can compute a 1 -sparse � x in O ( 1 ) time. � x : � a if i = t � x i = t 0 otherwise Then x = ( a , a ω t , a ω 2 t , a ω 3 t , . . . , a ω ( n − 1 ) t ) . x 1 = a ω t x 0 = a x 1 / x 0 = ω t = ⇒ t . Eric Price (MIT) Sparse Recovery and Fourier Sampling 14 / 37
Algorithm for k = 1 Lemma a We can compute a 1 -sparse � x in O ( 1 ) time. � x : � a if i = t � x i = t 0 otherwise Then x = ( a , a ω t , a ω 2 t , a ω 3 t , . . . , a ω ( n − 1 ) t ) . x 1 = a ω t x 0 = a x 1 / x 0 = ω t = ⇒ t . � Eric Price (MIT) Sparse Recovery and Fourier Sampling 14 / 37
Algorithm for k = 1 Lemma a We can compute a 1 -sparse � x in O ( 1 ) time. � x : � a if i = t � x i = t 0 otherwise Then x = ( a , a ω t , a ω 2 t , a ω 3 t , . . . , a ω ( n − 1 ) t ) . x 1 = a ω t x 0 = a x 1 / x 0 = ω t = ⇒ t . � (Related to OFDM, Prony’s method, matrix pencil.) Eric Price (MIT) Sparse Recovery and Fourier Sampling 14 / 37
Algorithm for general k Reduce general k to k = 1. 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. ◮ Sample from time domain of each bucket with O ( log n ) overhead. 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. ◮ Sample from time domain of each bucket with O ( log n ) overhead. ◮ Recovered by k = 1 algorithm 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. ◮ Sample from time domain of each bucket with O ( log n ) overhead. ◮ Recovered by k = 1 algorithm Most frequencies alone in bucket. 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. ◮ Sample from time domain of each bucket with O ( log n ) overhead. ◮ Recovered by k = 1 algorithm Most frequencies alone in bucket. 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. ◮ Sample from time domain of each bucket with O ( log n ) overhead. ◮ Recovered by k = 1 algorithm Most frequencies alone in bucket. 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. ◮ Sample from time domain of each bucket with O ( log n ) overhead. ◮ Recovered by k = 1 algorithm Most frequencies alone in bucket. 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. ◮ Sample from time domain of each bucket with O ( log n ) overhead. ◮ Recovered by k = 1 algorithm Most frequencies alone in bucket. Random permutation 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. ◮ Sample from time domain of each bucket with O ( log n ) overhead. ◮ Recovered by k = 1 algorithm Most frequencies alone in bucket. Random permutation 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. ◮ Sample from time domain of each bucket with O ( log n ) overhead. ◮ Recovered by k = 1 algorithm Most frequencies alone in bucket. Random permutation 1-sparse recovery 1-sparse recovery x x ′ � Permute Filters O ( k ) 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Algorithm for general k Reduce general k to k = 1. “Filters”: partition frequencies into O ( k ) buckets. ◮ Sample from time domain of each bucket with O ( log n ) overhead. ◮ Recovered by k = 1 algorithm Most frequencies alone in bucket. Random permutation 1-sparse recovery 1-sparse recovery x x ′ � Permute Filters O ( k ) 1-sparse recovery Recovers most of � x : 1-sparse recovery Lemma (Partial sparse recovery) x ′ such that In O ( k log n ) expected time, we can compute an estimate � x ′ is k / 2 -sparse. x − � � Eric Price (MIT) Sparse Recovery and Fourier Sampling 15 / 37
Overall outline � x Partial k -sparse recovery 1-sparse recovery 1-sparse recovery x x ′ � O ( k ) Permute Filters 1-sparse recovery 1-sparse recovery Lemma (Partial sparse recovery) x ′ such that In O ( k log n ) expected time, we can compute an estimate � x ′ is k / 2 -sparse. x − � � Eric Price (MIT) Sparse Recovery and Fourier Sampling 16 / 37
Overall outline x ′ x − � � Partial k -sparse recovery 1-sparse recovery 1-sparse recovery x x ′ � O ( k ) Permute Filters 1-sparse recovery 1-sparse recovery Lemma (Partial sparse recovery) x ′ such that In O ( k log n ) expected time, we can compute an estimate � x ′ is k / 2 -sparse. x − � � Eric Price (MIT) Sparse Recovery and Fourier Sampling 16 / 37
Overall outline x ′ x − � � Partial k -sparse recovery 1-sparse recovery 1-sparse recovery x x ′ � O ( k ) Permute Filters 1-sparse recovery 1-sparse recovery Lemma (Partial sparse recovery) x ′ such that In O ( k log n ) expected time, we can compute an estimate � x ′ is k / 2 -sparse. x − � � Repeat, k → k / 2 → k / 4 → · · · Eric Price (MIT) Sparse Recovery and Fourier Sampling 16 / 37
Overall outline x ′ x − � � Partial k -sparse recovery 1-sparse recovery 1-sparse recovery x x ′ � O ( k ) Permute Filters 1-sparse recovery 1-sparse recovery Lemma (Partial sparse recovery) x ′ such that In O ( k log n ) expected time, we can compute an estimate � x ′ is k / 2 -sparse. x − � � Repeat, k → k / 2 → k / 4 → · · · Eric Price (MIT) Sparse Recovery and Fourier Sampling 16 / 37
Overall outline x ′ x − � � Partial k -sparse recovery 1-sparse recovery 1-sparse recovery x x ′ � O ( k ) Permute Filters 1-sparse recovery 1-sparse recovery Lemma (Partial sparse recovery) x ′ such that In O ( k log n ) expected time, we can compute an estimate � x ′ is k / 2 -sparse. x − � � Repeat, k → k / 2 → k / 4 → · · · Eric Price (MIT) Sparse Recovery and Fourier Sampling 16 / 37
Overall outline x ′ x − � � Partial k -sparse recovery 1-sparse recovery 1-sparse recovery x x ′ � O ( k ) Permute Filters 1-sparse recovery 1-sparse recovery Lemma (Partial sparse recovery) x ′ such that In O ( k log n ) expected time, we can compute an estimate � x ′ is k / 2 -sparse. x − � � Repeat, k → k / 2 → k / 4 → · · · Eric Price (MIT) Sparse Recovery and Fourier Sampling 16 / 37
Overall outline x ′ x − � � Partial k -sparse recovery 1-sparse recovery 1-sparse recovery x x ′ � O ( k ) Permute Filters 1-sparse recovery 1-sparse recovery Lemma (Partial sparse recovery) x ′ such that In O ( k log n ) expected time, we can compute an estimate � x ′ is k / 2 -sparse. x − � � Repeat, k → k / 2 → k / 4 → · · · Theorem We can compute � x in O ( k log n ) expected time. Eric Price (MIT) Sparse Recovery and Fourier Sampling 16 / 37
Overall outline x ′ x − � � Partial k -sparse recovery 1-sparse recovery 1-sparse recovery x x ′ � O ( k ) Permute Filters 1-sparse recovery 1-sparse recovery Lemma (Partial sparse recovery) x ′ such that In O ( k log n ) expected time, we can compute an estimate � x ′ is k / 2 -sparse. x − � � Repeat, k → k / 2 → k / 4 → · · · Theorem We can compute � x in O ( k log n ) expected time. Eric Price (MIT) Sparse Recovery and Fourier Sampling 16 / 37
How can you isolate frequencies? Time Frequency n -dimensional DFT: O ( n log n ) x → � x × ∗ = = Eric Price (MIT) Sparse Recovery and Fourier Sampling 17 / 37
How can you isolate frequencies? Time Frequency n -dimensional DFT: O ( n log n ) x → � x × ∗ = = Eric Price (MIT) Sparse Recovery and Fourier Sampling 17 / 37
How can you isolate frequencies? Time Frequency n -dimensional DFT: O ( n log n ) x → � x × ∗ n -dimensional DFT of first k terms: O ( n log n ) x · rect → � x ∗ sinc. = = Eric Price (MIT) Sparse Recovery and Fourier Sampling 17 / 37
How can you isolate frequencies? Time Frequency n -dimensional DFT: O ( n log n ) x → � x × ∗ n -dimensional DFT of first k terms: O ( n log n ) x · rect → � x ∗ sinc. = = Eric Price (MIT) Sparse Recovery and Fourier Sampling 17 / 37
How can you isolate frequencies? Time Frequency n -dimensional DFT: O ( n log n ) x → � x × ∗ n -dimensional DFT of first k terms: O ( n log n ) x · rect → � x ∗ sinc. = = k -dimensional DFT of first k terms: O ( B log B ) alias ( x · rect ) → subsample ( � x ∗ sinc ) . Eric Price (MIT) Sparse Recovery and Fourier Sampling 17 / 37
How can you isolate frequencies? Time Frequency n -dimensional DFT: O ( n log n ) x → � x × ∗ n -dimensional DFT of first k terms: O ( n log n ) x · rect → � x ∗ sinc. = = k -dimensional DFT of first k terms: O ( B log B ) alias ( x · rect ) → subsample ( � x ∗ sinc ) . Eric Price (MIT) Sparse Recovery and Fourier Sampling 17 / 37
The issue We want to isolate frequencies. Frequency Eric Price (MIT) Sparse Recovery and Fourier Sampling 18 / 37
The issue We want to isolate frequencies. Frequency The sinc filter “leaks”. Contamination from other buckets. Eric Price (MIT) Sparse Recovery and Fourier Sampling 18 / 37
The issue We want to isolate frequencies. Frequency The sinc filter “leaks”. Contamination from other buckets. We introduce a better filter: (Gaussian / prolate spheroidal sequence) convolved with rectangle. Eric Price (MIT) Sparse Recovery and Fourier Sampling 18 / 37
Algorithm for exactly sparse signals Original signal x Goal ˆ x Eric Price (MIT) Sparse Recovery and Fourier Sampling 19 / 37
Algorithm for exactly sparse signals Computed F · x Filtered signal c F ∗ c x Eric Price (MIT) Sparse Recovery and Fourier Sampling 19 / 37
Algorithm for exactly sparse signals F · x aliased to k terms Filtered signal c F ∗ c x Eric Price (MIT) Sparse Recovery and Fourier Sampling 19 / 37
Algorithm for exactly sparse signals F · x aliased to k terms Computed samples of c F ∗ c x Eric Price (MIT) Sparse Recovery and Fourier Sampling 19 / 37
Algorithm for exactly sparse signals F · x aliased to k terms Computed samples of c F ∗ c x Eric Price (MIT) Sparse Recovery and Fourier Sampling 19 / 37
Algorithm for exactly sparse signals F · x aliased to k terms Knowledge about ˆ x Eric Price (MIT) Sparse Recovery and Fourier Sampling 19 / 37
Algorithm for exactly sparse signals F · x aliased to k terms Knowledge about ˆ x Eric Price (MIT) Sparse Recovery and Fourier Sampling 19 / 37
Algorithm for exactly sparse signals F · x aliased to k terms Knowledge about ˆ x Lemma If t is isolated in its bucket and in the “super-pass” region, the value b we compute for its bucket satisfies b = � x t . Computing the b for all O ( k ) buckets takes O ( k log n ) time. Eric Price (MIT) Sparse Recovery and Fourier Sampling 19 / 37
Algorithm for exactly sparse signals Lemma For most t, the value b we compute for its bucket satisfies b = � x t . Computing the b for all O ( k ) buckets takes O ( k log n ) time. Eric Price (MIT) Sparse Recovery and Fourier Sampling 20 / 37
Algorithm for exactly sparse signals Lemma For most t, the value b we compute for its bucket satisfies b = � x t . Computing the b for all O ( k ) buckets takes O ( k log n ) time. Time-shift x by one and repeat: b ′ = � x t ω t . Divide to get b ′ / b = ω t Eric Price (MIT) Sparse Recovery and Fourier Sampling 20 / 37
Algorithm for exactly sparse signals Lemma For most t, the value b we compute for its bucket satisfies b = � x t . Computing the b for all O ( k ) buckets takes O ( k log n ) time. Time-shift x by one and repeat: b ′ = � x t ω t . Divide to get b ′ / b = ω t = ⇒ can compute t . Eric Price (MIT) Sparse Recovery and Fourier Sampling 20 / 37
Algorithm for exactly sparse signals Lemma For most t, the value b we compute for its bucket satisfies b = � x t . Computing the b for all O ( k ) buckets takes O ( k log n ) time. Time-shift x by one and repeat: b ′ = � x t ω t . Divide to get b ′ / b = ω t = ⇒ can compute t . ◮ Just like our 1-sparse recovery algorithm, x 1 / x 0 = ω t . Eric Price (MIT) Sparse Recovery and Fourier Sampling 20 / 37
Algorithm for exactly sparse signals Lemma For most t, the value b we compute for its bucket satisfies b = � x t . Computing the b for all O ( k ) buckets takes O ( k log n ) time. Time-shift x by one and repeat: b ′ = � x t ω t . Divide to get b ′ / b = ω t = ⇒ can compute t . ◮ Just like our 1-sparse recovery algorithm, x 1 / x 0 = ω t . x ′ such that � x ′ is k / 2-sparse. Gives partial sparse recovery: � x − � 1-sparse recovery 1-sparse recovery x ′ x � Permute Filters O ( k ) 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 20 / 37
Algorithm for exactly sparse signals Lemma For most t, the value b we compute for its bucket satisfies b = � x t . Computing the b for all O ( k ) buckets takes O ( k log n ) time. Time-shift x by one and repeat: b ′ = � x t ω t . Divide to get b ′ / b = ω t = ⇒ can compute t . ◮ Just like our 1-sparse recovery algorithm, x 1 / x 0 = ω t . x ′ such that � x ′ is k / 2-sparse. Gives partial sparse recovery: � x − � 1-sparse recovery 1-sparse recovery x ′ x � Permute Filters O ( k ) 1-sparse recovery 1-sparse recovery Repeat k → k / 2 → k / 4 → · · · Eric Price (MIT) Sparse Recovery and Fourier Sampling 20 / 37
Algorithm for exactly sparse signals Lemma For most t, the value b we compute for its bucket satisfies b = � x t . Computing the b for all O ( k ) buckets takes O ( k log n ) time. Time-shift x by one and repeat: b ′ = � x t ω t . Divide to get b ′ / b = ω t = ⇒ can compute t . ◮ Just like our 1-sparse recovery algorithm, x 1 / x 0 = ω t . x ′ such that � x ′ is k / 2-sparse. Gives partial sparse recovery: � x − � 1-sparse recovery 1-sparse recovery x ′ x � Permute Filters O ( k ) 1-sparse recovery 1-sparse recovery Repeat k → k / 2 → k / 4 → · · · O ( k log n ) time sparse Fourier transform. � Eric Price (MIT) Sparse Recovery and Fourier Sampling 20 / 37
Algorithm for approximately sparse signals Eric Price (MIT) Sparse Recovery and Fourier Sampling 21 / 37
Algorithm for approximately sparse signals What changes with noise? Eric Price (MIT) Sparse Recovery and Fourier Sampling 21 / 37
Algorithm for approximately sparse signals What changes with noise? Identical architecture: Partial sparse recovery 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Eric Price (MIT) Sparse Recovery and Fourier Sampling 21 / 37
Algorithm for approximately sparse signals What changes with noise? Identical architecture: Partial sparse recovery 1-sparse recovery 1-sparse recovery x x ′ O ( k ) � Permute Filters 1-sparse recovery 1-sparse recovery Just requires robust 1-sparse recovery. Eric Price (MIT) Sparse Recovery and Fourier Sampling 21 / 37
Recommend
More recommend