1: |
Initialize F
|
2: |
repeat |
3: |
Find sparse coefficients Γ (γi’s) using any pursuit algorithm. |
4: |
for
j = 1,…, M, update fj, the j-th column of F, by the following process do
|
5: |
Find the group of vectors that use this atom: ζj := {i : 1 ≤ i ≤ M, γi(j) ≠ 0} |
6: |
Compute Ej := Q − ∑i≠j
fi
where is the i-th row of Γ |
7: |
Extract the i-th columns in Ej, where i ∈ ζj, to form
|
8: |
Apply SVD to get = UΔV
|
9: |
fj is updated with the first column of U
|
10: |
The non-zeros elements in is updated with the first column of V × Δ(1, 1) |
11: |
end for
|
12: |
until Convergence criteria is met |