03 Sparse Approx Algs PDF
03 Sparse Approx Algs PDF
1
Notes by J. Romberg
2. Find the locations of the S-largest terms in α; call this set
Γ.
3. Set (
α[γ] γ ∈ Γ
β̃S [γ] =
0 γ∈6 Γ
for some coefficient set {αγ , γ ∈ Γ}. The idea is that p >> n,
and different signals of interest will use different subsets Γ. Given
a signal, we want a systematic way of choosing a representation
which uses as few terms as necessary.
Unless otherwise stated, we will use the convention that the columns
of Ψ are normalized, kψk k2 = 1. We will find it useful to organize
the {ψk } as columns in an n × p matrix Ψ:
| | |
Ψ = ψ1 ψ2 · · · ψp .
| | |
Now the task is to find a sparse vector α such that
f ≈ Ψα.
2
Notes by J. Romberg
We can visualize this task as selecting an appropriate subset of the
columns from Ψ to build up f — each subset of columns spans
a different subspace of Rn, so in some sense we choosing from a
family of subspaces the one which is closest to containing f .
3
Notes by J. Romberg
Soft thresholding and `1 minimization
Since we will be looking a lot at using `1 minimization for recon-
struction sparse signals, it is worth it to point out an interesting
connection between `1 minimization and soft-thresholding.
Consider the following optimization program,
λ
min kβk`1 + kΨβ − f k22,
β 2
where Ψ is an orthobasis. Just as in the `0 case above, this program
is equivalent to
λ
min kβk`1 + kβ − αk22,
β 2
where α = Ψ∗f . We can now break the functional above apart
term-by-term:
n
X λ
min |β(i)| + (β(i) − α(i))2.
β
i=1
2
4
Notes by J. Romberg
Matching Pursuit
Matching pursuit (MP) is a relatively straightforward algorithm
for selecting a (hopefully small) subset of a dictionary with which
to represent a given signal.
5
Notes by J. Romberg
Matching Pursuit Algorithm:
Given a signal f ∈ Rn, an n × p dictionary Ψ with normalized
columns kψγ k2 = 1, and a convergence criteria > 0,
1. Set f0 = 0, R0 = f, k = 0
(f0 is the initial approximation, and R0 is the initial residual)
3. Set
Rk+1 ⊥ ψγk
since
6
Notes by J. Romberg
Thus we can expand the energy in the signal as
So at each step, we are selecting the atom ψγk which makes the
residual error as small as possible.
[Example in MATLAB]
kRk k2 ≤ 2−λk kf k2
7
Notes by J. Romberg
Orthogonal Matching Pursuit
OMP is a variant of MP: it selects atoms (columns) iteratively
from Ψ, but it uses as the current approximate an orthogonal
projection onto the space spanned by the atoms selected so far.
3. Set
k−1
X u0k
u0k = ψγk − hψγk , u`i u`, uk = 0
`=0
kuk k2
fk+1 = fk + hRk , uk iuk
Rk+1 = Rk − hRk , uk iuk
8
Notes by J. Romberg
Basis Pursuit
Basis Pursuit (BP) is an entirely different approach to finding a
sparse representation. Rather than building up the signal f by
adding contributions from iteratively selected columns, it sets up
the problem as an optimization program.
f = Ψβ.
{β : Ψβ = f } ⊂ Rp,
we want the one that uses the smallest number of terms. Another
way to say that is we want to solve
9
Notes by J. Romberg
The program above is easy enough to state, but it is basically
impossible to solve — it is a combinatorial optimization program.
Basis Pursuit (BP) simply takes the program above and re-
places the `0 norm with the `1 norm:
BP as a linear program
In fact, Basis Pursuit can be recast as a linear program using a
simple trick. We are interested in
p
X
min |β(γ)| subject to Ψβ = f,
β
γ=1
This is a linear program, and it has the same solution as BP. Thus
10
Notes by J. Romberg
Efficiency of Basis Pursuit
In fact, we can show that given an n × p matrix Ψ and a vector
f ∈ Rn, the solution to
min kβk1 subject to Ψβ = f
β∈Rp
11
Notes by J. Romberg
It should be clear that h0 ∈ Null(Ψ). We may assume without loss
of generality that
hh, zi ≤ 0,
since otherwise we could just use −h (since of course if h ∈
Null(ΨΓ), then −h ∈ Null(ΨΓ)). For small enough, we will
have on Γ:
sgn(α + h) = sgn(α) = z,
and so
X
kα + h0k1 = sgn(α(γ) + h(γ))(α(γ) + h(γ))
γ∈Γ
X X
= z(γ)α(γ) + z(γ)h(γ)
γ∈Γ γ∈Γ
= kαk1 + hz, hi
≤ kαk1
since hz, hi ≤ 0.
12
Notes by J. Romberg