Nearly Linear-Time Algorithms for Structured Sparsity - - PowerPoint PPT Presentation

nearly linear time algorithms for structured sparsity
SMART_READER_LITE
LIVE PREVIEW

Nearly Linear-Time Algorithms for Structured Sparsity - - PowerPoint PPT Presentation

Nearly Linear-Time Algorithms for Structured Sparsity Chinmay Hegde Piotr Indyk Ludwig Schmidt MIT Compressive sensing Setup: Data/signal in


slide-1
SLIDE 1

Nearly ¡Linear-­‑Time ¡Algorithms ¡for ¡ Structured ¡Sparsity ¡ ¡

Chinmay ¡Hegde ¡ Piotr ¡Indyk ¡ Ludwig ¡Schmidt ¡

MIT ¡

slide-2
SLIDE 2

Compressive ¡sensing ¡

¡

  • Setup: ¡

– Data/signal ¡in ¡n-­‑dimensional ¡space ¡: ¡x ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡E.g., ¡x ¡is ¡an ¡256x256 ¡image ¡⇒ ¡n=65536 ¡ – Goal: ¡compress ¡x ¡into ¡Ax ¡, ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡where ¡A ¡is ¡a ¡m ¡x ¡n ¡“measurement” ¡or ¡“sketch” ¡matrix, ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡m ¡<< ¡n ¡ ¡

  • Goal: ¡ ¡want ¡to ¡recover ¡an ¡“approximaPon” ¡x* ¡of ¡k-­‑

sparse ¡x ¡from ¡Ax+e, ¡i.e., ¡ ¡

||x*-­‑x||≤ ¡C ¡ ¡||e|| ¡

  • Want: ¡

– Good ¡compression ¡(small ¡m=m(k,n)) ¡ – Efficient ¡algorithms ¡for ¡encoding ¡and ¡recovery ¡ ¡

¡

= ¡

A ¡ x ¡ ¡Ax ¡

Lichtenstein ¡img ¡processing ¡test ¡

slide-3
SLIDE 3

Bounds ¡

  • Want: ¡

– Good ¡compression ¡(small ¡m=m(k,n)) ¡ ¡ – Efficient ¡algorithms ¡for ¡encoding ¡and ¡recovery ¡

  • Issue ¡? ¡

– log ¡(n/k) ¡penalty ¡compared ¡to ¡non-­‑linear ¡compression ¡ – Unavoidable ¡in ¡general ¡[Donoho’04, ¡Do ¡Ba-­‑Indyk-­‑Price-­‑

Woodruff’10] ¡ ¡ m=O(k ¡log ¡(n/k)) ¡ ¡ ¡ ¡ ¡[Candes-­‑Romberg-­‑Tao’04,….] ¡ ¡ L1 ¡minimizaPon, ¡CoSaMP, ¡IHT, ¡SMP, ¡…. ¡ ¡

slide-4
SLIDE 4

Structured ¡sparsity ¡ ¡

  • Some ¡signals ¡contain ¡more ¡

structure ¡than ¡mere ¡sparsity ¡

  • Less ¡sparsity ¡paherns ¡to ¡worry ¡

about ¡

slide-5
SLIDE 5

Model-­‑based ¡compressive ¡sensing ¡

[Baraniuk-­‑Cevher-­‑Duarte-­‑Hegde’10] ¡

  • Idea: ¡structure ¡⇔ ¡restricted ¡support ¡
  • DefiniPon: ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡A ¡structured ¡sparsity ¡model ¡M ¡ ¡is ¡defined ¡by ¡a ¡set ¡of ¡ ¡ ¡ ¡ ¡ ¡ ¡allowed ¡supports ¡M ¡ ¡= ¡{Ω1, ¡. ¡. ¡. ¡, ¡Ωap ¡} ¡where ¡Ωi ¡ ¡⊆ ¡[n]: ¡ ¡ M ¡ ¡= ¡{x ¡∈ ¡Rn ¡ ¡| ¡∃ ¡Ωi ¡ ¡∈ ¡Ω ¡: ¡supp(x ¡) ¡⊆ ¡Ωi ¡}

  • Only ¡O(k ¡+ ¡log ¡|M|) ¡measurements ¡suffice ¡if|Ωi| ¡<=k ¡ ¡
  • For ¡all ¡models ¡considered ¡in ¡this ¡talk ¡|M|=2O(k) ¡, ¡so ¡m=O(k) ¡

¡

slide-6
SLIDE 6

Model ¡specs ¡

  • Recovery ¡algorithm ¡depends ¡on ¡the ¡model ¡M ¡
  • Need ¡model-­‑projec;on ¡oracle ¡

M(x) ¡= ¡argminx’∈M ¡ ¡||x’-­‑x||2 ¡

  • Requirements: ¡

– The ¡oracle ¡should ¡run ¡fast ¡(e.g. ¡in ¡polynomial ¡or ¡linear ¡Pme) ¡ – The ¡oracle ¡must ¡find ¡the ¡best ¡approximaPon ¡in ¡the ¡model ¡

  • Model-­‑IHT: ¡iterate ¡

x ¡i ¡ ¡← ¡M ¡( ¡x ¡

i−1 ¡+ ¡AT ¡( ¡y ¡− ¡Ax ¡ i−1)) ¡ ¡

  • Summary: ¡If ¡|M|=2O(k) ¡and ¡the ¡oracle ¡M() ¡available, ¡then ¡Model-­‑

IHT ¡recovers ¡any ¡x ¡s.t. ¡supp(x)∈M ¡from ¡O(k) ¡measurements ¡Ax ¡

– Stable ¡generalizaPons ¡exists ¡as ¡well ¡ ¡ – TheorePcal ¡and ¡empirical ¡improvement ¡

Necessary ¡??? ¡

slide-7
SLIDE 7

Why ¡not ¡approximaPons? ¡

  • E.g., ¡why ¡not ¡an ¡approximate ¡model-­‑projecPon: ¡

given ¡x ¡find ¡x’∈M ¡s.t.: ¡

||x-­‑x’||2 ¡ ¡≤ ¡c ¡minx’’∈M ¡ ¡||x’’-­‑x||2 ¡

  • Turns ¡out ¡MIHT ¡might ¡not ¡work ¡if ¡c>1 ¡! ¡

– While ¡iteraPng ¡xi ¡ ¡← ¡M ¡( ¡xi−1 ¡+ ¡AT ¡( ¡y ¡− ¡Axi−1)) ¡we ¡can ¡ keep ¡xi=0 ¡even ¡though ¡the ¡opPmal ¡soluPon ¡is ¡1-­‑sparse ¡

¡ | ¡x ¡

i−1 ¡+ ¡AT ¡( ¡y ¡− ¡Ax ¡ i−1)|

slide-8
SLIDE 8

Our ¡framework ¡[HIS14] ¡

  • ApproximaPon-­‑Tolerant ¡Model-­‑Based ¡

Compressive ¡Sensing ¡

  • IntuiPon: ¡

– Consider ¡oracle ¡M(x) ¡= ¡argminΩ∈M ¡ ¡|| ¡x-­‑xΩ||2 ¡

  • Minimizes ¡the ¡norm ¡of ¡the ¡“tail” ¡

– Equivalently: ¡M(x) ¡= ¡argmaxΩ∈M ¡ ¡|| ¡xΩ||2 ¡

  • Maximizes ¡the ¡norm ¡of ¡the ¡“head” ¡

– However, ¡these ¡two ¡problems ¡are ¡not ¡equivalent ¡if ¡ approximaPon ¡is ¡allowed ¡ – Our ¡approach: ¡required ¡two ¡separate ¡approximate ¡ head ¡and ¡tail ¡oracles… ¡ – …and ¡then ¡things ¡work ¡J ¡

slide-9
SLIDE 9

Our ¡framework ¡ctd. ¡

  • Tail-­‑approximaPon ¡oracle ¡T ¡(x ¡, ¡p) ¡

– T ¡(x ¡, ¡p) ¡= ¡xΩ ¡ ¡for ¡some ¡Ω ¡∈ ¡M ¡ ¡ – Tail ¡approximaPon: ¡ ¡||x ¡­∓ ¡T ¡(x ¡, ¡p)|| 2 ¡ ¡≤ ¡cT ¡ ¡ ¡minΩ ¡∈

¡M ¡ ¡||x ¡­∓ ¡xΩ|| 2 ¡ ¡ ¡

  • Head-­‑approximaPon ¡oracle ¡H(x ¡, ¡p) ¡

– H(x ¡, ¡p) ¡= ¡xΩ ¡ ¡for ¡some ¡Ω ¡∈ ¡M ¡

¡

– Head ¡approximaPon: ¡ ||H(x ¡, ¡p)|| 2 ¡ ¡≥ ¡cH ¡ ¡ ¡maxΩ ¡∈

¡M||xΩ|| 2 ¡ ¡

  • ApproximaPon-­‑Tolerant ¡MIHT: ¡

xi ¡ ¡← ¡T ¡( ¡xi−1 ¡+ ¡H ¡(AT ¡( ¡y ¡− ¡Axi−1)) ¡ ¡

¡

slide-10
SLIDE 10

ApproximaPon-­‑Tolerant ¡M-­‑IHT ¡

Theorem ¡[HIS14]: ¡The ¡iterates ¡of ¡AM-­‑IHT ¡saPsfy ¡ ¡ ¡ if ¡A ¡saPsfies ¡the ¡model-­‑RIP ¡with ¡constant ¡δ ¡and ¡ cT ¡and ¡cH ¡are ¡as ¡on ¡the ¡previous ¡slide. ¡

kx xi+1k2  (1 + cT ) ⇣ δ + p 1 (cH(1 δ) δ)2 ⌘ kx xik2

slide-11
SLIDE 11

Prior ¡work ¡

Oracle ¡ Stable ¡ Recovery ¡ AssumpPons ¡ Blumensath ¡ ¡ AddiPve ¡ No ¡

  • ­‑ ¡

Kyrillidis-­‑ Cevher ¡ Head ¡ No ¡

  • ­‑ ¡

Giryes-­‑Elad ¡ Tail ¡ Yes ¡ Bound ¡on ¡ ¡singular ¡ values ¡of ¡A ¡ Davenport-­‑ Needell-­‑Wakin ¡ Head, ¡Tail ¡ Yes ¡ PorPon ¡of ¡opPmal ¡ support ¡idenPfied ¡ This ¡work ¡ Head, ¡Tail ¡ Yes ¡ None ¡

[Giryes, ¡Needell]: ¡similar ¡approach, ¡somewhat ¡different ¡results ¡

slide-12
SLIDE 12

OK, ¡but ¡what ¡does ¡it ¡lead ¡to ¡? ¡

  • Constrained ¡Earth-­‑Mover ¡Distance ¡

[SAMPTA’13, ¡SODA’14] ¡

– Columns ¡with ¡similar ¡sparsity ¡paherns ¡ – PolyPme ¡recovery ¡from ¡O(k) ¡ measurements ¡

  • Tree-­‑sparsity ¡[ISIT’14, ¡ICALP’14] ¡

– Supports ¡form ¡connected ¡tree ¡ components ¡ – Near-­‑linear ¡Pme ¡recovery ¡from ¡O(k) ¡ measurements ¡

  • Clustered ¡sparsity ¡[???’15] ¡

– Supports ¡form ¡connected ¡components ¡ in ¡graphs ¡ – Near-­‑linear ¡Pme ¡recovery ¡from ¡O(k) ¡ measurements ¡

slide-13
SLIDE 13

Tree-­‑Sparsity ¡

slide-14
SLIDE 14

Tree-­‑sparsity ¡

  • Sparse ¡signals ¡whose ¡large ¡coefficients ¡can ¡be ¡

arranged ¡in ¡the ¡form ¡of ¡a ¡rooted, ¡connected ¡tree ¡ ¡ ¡ ¡ ¡ApplicaPons: ¡data ¡streams, ¡imaging, ¡genomics, ¡… ¡ ¡ ¡ ¡ ¡

Piecewise ¡const. ¡signals ¡ Natural ¡images ¡

slide-15
SLIDE 15

An ¡opPmizaPon ¡problem ¡

  • Given ¡a ¡signal ¡x, ¡compute ¡

the ¡opPmal ¡(exact) ¡tree-­‑ sparse ¡projec;on ¡ ¡ ¡ ¡of ¡x, ¡i.e., ¡solve ¡ min|Ω|≤k, ¡Ω ¡tree ¡||x-­‑xΩ||2

2 ¡

slide-16
SLIDE 16

An ¡opPmizaPon ¡problem ¡

  • Given ¡a ¡signal ¡x, ¡compute ¡

the ¡opPmal ¡(exact) ¡tree-­‑ sparse ¡projec;on ¡ ¡ ¡ ¡of ¡x, ¡i.e., ¡solve ¡ min|Ω|≤k, ¡Ω ¡tree ¡||x-­‑xΩ||2

2 ¡

slide-17
SLIDE 17

Summary ¡of ¡results ¡

RunPme ¡ Guarantee ¡ Baraniuk-­‑Jones ¡‘94 ¡ O(n ¡log ¡n) ¡ ? ¡ Donoho ¡‘97 ¡ O(n) ¡ ? ¡ Bohanec-­‑Bratko ¡‘94 ¡ O(n2) ¡ Exact ¡ CarPs-­‑Thompson ¡‘13 ¡ O(nk) ¡ Exact ¡ This ¡work ¡ O(n ¡log ¡n) ¡ Approximate ¡Head ¡ This ¡work ¡ O(n ¡log ¡n ¡+ ¡k ¡log2 ¡n) ¡ Approximate ¡Tail ¡ ImplicaPon: ¡stable ¡recovery ¡of ¡tree-­‑sparse ¡signals ¡from ¡O(k) ¡ ¡measurements ¡in ¡Pme ¡ ¡#iteraPons ¡* ¡(n ¡log ¡n ¡+ ¡k ¡log2n ¡+ ¡matrix-­‑vector-­‑mult-­‑Pme) ¡

slide-18
SLIDE 18

Why ¡nlogn ¡is ¡beher ¡than ¡nk ¡

  • Consider ¡a ¡‘moderate’ ¡problem ¡size ¡

– e.g. ¡n ¡= ¡106 ¡, ¡k ¡= ¡5% ¡of ¡n ¡ ¡ ¡

¡

  • Then, ¡nk ¡~ ¡ ¡50 ¡x ¡109 ¡while ¡nlog ¡n ¡~ ¡20 ¡x ¡106 ¡
  • Really ¡need ¡near-­‑linear ¡Pme ¡
slide-19
SLIDE 19

Tail ¡ApproximaPon ¡

  • We ¡want ¡to ¡approximate: ¡

min|Ω|≤k, ¡Ω ¡tree ¡||x-­‑xΩ||2

2 ¡

  • Perform ¡a ¡Lagrange ¡relaxaPon ¡of ¡the ¡sparsity ¡

constraint: ¡ minΩ ¡tree ¡||x-­‑xΩ||2

2+λ|Ω| ¡

  • Can ¡be ¡solved ¡using ¡a ¡simple ¡dynamic ¡

program ¡(DP) ¡using ¡O(n) ¡Pme, ¡O(n) ¡space ¡

– Similar ¡approach ¡as ¡[Donoho ¡’97] ¡

¡

slide-20
SLIDE 20

How ¡to ¡choose ¡λ ¡? ¡ ¡

  • Pareto ¡analysis: ¡examine ¡the ¡soluPon ¡curve ¡as ¡a ¡funcPon ¡of ¡

¡ ¡

  • Via ¡convexity ¡of ¡the ¡curve, ¡we ¡can ¡always ¡obtain ¡

– Either: ¡(≤2k, ¡≤OPT) ¡ – Or: ¡(≤k, ¡≤2OPT) ¡

  • Altogether: ¡we ¡get ¡a ¡tail ¡guarantee ¡in ¡Pme ¡roughly ¡O(n ¡log ¡n) ¡ ¡

tail(λ) sparsity(λ)

Exact ¡opPmum ¡

slide-21
SLIDE 21

Head ¡approximaPon ¡

  • Want ¡to ¡approximate: ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡max|Ω|≤k, ¡Ω ¡tree ¡||xΩ||2

2 ¡

¡

  • Lemma: ¡The ¡op1mal ¡tree-­‑

projecPon ¡can ¡be ¡always ¡ decomposed ¡into ¡disjoint ¡ pieces ¡of ¡size ¡O(log ¡n) ¡

  • Greedy ¡approach: ¡compute ¡

exact ¡projecPons ¡with ¡sparsity ¡ O(log ¡n), ¡assemble ¡pieces, ¡ merge ¡

  • Total ¡running ¡Pme: ¡ ¡

O(k ¡log2n ¡+ ¡nlog ¡n) ¡

slide-22
SLIDE 22

Experiments: ¡1D ¡signals ¡

200 400 600 800 1000 −2 −1 1 2 3 200 400 600 800 1000 −2 −1 1 2 3 200 400 600 800 1000 −2 −1 1 2 3 200 400 600 800 1000 −2 −1 1 2 3

CoSaMP ¡ SPGL1 ¡ AM-­‑CoSaMP ¡ Tree-­‑CoSaMP, ¡Exact ¡ n ¡= ¡1024 ¡ k ¡= ¡40 ¡ m= ¡140 ¡ ¡ Gaussian ¡ measurements ¡ ¡ ¡ Original ¡signal ¡x ¡is ¡ tree-­‑sparse ¡ in ¡the ¡wavelet ¡basis ¡ ¡ ¡ Both ¡Tree-­‑CS ¡and ¡AM-­‑ CoSaMP ¡exactly ¡ recover ¡signal ¡ ¡

slide-23
SLIDE 23

Experiments: ¡2D ¡images ¡

n ¡= ¡ ¡512 ¡x ¡512 ¡ k ¡ ¡~ ¡10,000 ¡ m ¡~ ¡35,000 ¡ ¡ ¡ Fourier ¡measurements ¡ ¡ ¡ ¡ CoSaMP ¡ SPGL1 ¡ AM-­‑CoSaMP ¡ Tree-­‑CoSaMP, ¡Exact ¡

Image ¡by ¡AniRaptor2001 ¡

slide-24
SLIDE 24

Experiments: ¡Monte ¡Carlo ¡

2 3 4 5 6 0.2 0.4 0.6 0.8 1 Oversampling ratio m/k Probability of recovery CoSaMP SPGL1 Exact−Tree Approx−Tree

Test ¡signals: ¡ ¡ piecewise ¡polynomial ¡ ¡ (tree-­‑sparse ¡in ¡the ¡wavelet ¡basis) ¡ ¡ ¡ Trials ¡randomized ¡over ¡choice ¡of ¡ measurement ¡matrix ¡ ¡ ¡ Successful ¡recovery ¡: ¡ Error ¡is ¡within ¡5% ¡of ¡the ¡norm ¡of ¡ the ¡original ¡signal ¡ ¡

slide-25
SLIDE 25

Experiments: ¡Speed ¡

Algorithm ¡ Exact ¡ TailApprox ¡ 2 ¡Matlab ¡FFTs ¡ Run;me ¡ 13.54 ¡sec ¡ 0.0161 ¡sec ¡ 0.0136 ¡sec ¡

TailApprox ¡offers ¡840x ¡speedup ¡over ¡the ¡exact-­‑tree ¡projecPon ¡ method ¡ ¡ (In ¡fact, ¡runPme ¡comparable ¡to ¡Matlab’s ¡FFT) ¡ ¡ ¡

Code ¡available ¡at: ¡ h>p://people.csail.mit.edu/ludwigs/code.html ¡

slide-26
SLIDE 26

Conclusions ¡

  • Can ¡make ¡model-­‑based ¡compressive ¡sensing ¡

approximaPon ¡tolerant ¡

  • This ¡lets ¡us ¡use ¡approximaPon ¡algorithms ¡

tools ¡to ¡make ¡recovery ¡tractable/faster ¡

– Network ¡flows, ¡Dynamic ¡programming, ¡Greedy, ¡ Steiner ¡tree,… ¡

  • Open ¡quesPons: ¡

– Other ¡models? ¡