Convolutional sparse coding

From testwiki
Jump to navigation Jump to search

Template:Short description

Template:Multiple issues

The convolutional sparse coding paradigm is an extension of the global sparse coding model, in which a redundant dictionary is modeled as a concatenation of circulant matrices. While the global sparsity constraint describes signal ๐ฑโˆˆโ„N as a linear combination of a few atoms in the redundant dictionary ๐ƒโˆˆโ„Nร—M,Mโ‰ซN, usually expressed as ๐ฑ=๐ƒ๐œž for a sparse vector ๐œžโˆˆโ„M, the alternative dictionary structure adopted by the convolutional sparse coding model allows the sparsity prior to be applied locally instead of globally: independent patches of ๐ฑ are generated by "local" dictionaries operating over stripes of ๐œž.

The local sparsity constraint allows stronger uniqueness and stability conditions than the global sparsity prior, and has shown to be a versatile tool for inverse problems in fields such as image understanding and computer vision. Also, a recently proposed multi-layer extension of the model has shown conceptual benefits for more complex signal decompositions, as well as a tight connection the convolutional neural networks model, allowing a deeper understanding of how the latter operates.

Overview

Given a signal of interest ๐ฑโˆˆโ„N and a redundant dictionary ๐ƒโˆˆโ„Nร—M,Mโ‰ซN, the sparse coding problem consist of retrieving a sparse vector ๐œžโˆˆโ„M, denominated the sparse representation of ๐ฑ, such that ๐ฑ=๐ƒ๐œž. Intuitively, this implies ๐ฑ is expressed as a linear combination of a small number of elements in ๐ƒ. The global sparsity constraint prior has been shown to be useful in many ill-posed inverse problems such as image inpainting, super-resolution, and coding.[1][2][3] It has been of particular interest for image understanding and computer vision tasks involving natural images, allowing redundant dictionaries to be efficiently inferred [4][5][6]

As an extension to the global sparsity constraint, recent pieces in the literature have revisited the model to reach a more profound understanding of its uniqueness and stability conditions.[6] Interestingly, by imposing a local sparsity prior in ๐œž, meaning that its independent patches can be interpreted as sparse vectors themselves, the structure in ๐ƒ can be understood as a โ€œlocal" dictionary operating over each independent patch. This model extension is denominated convolutional sparse coding (CSC) and drastically reduces the burden of estimating signal representations while being characterized by stronger uniqueness and stability conditions. Furthermore, it allows for ๐œž to be efficiently estimated via projected gradient descent algorithms such as orthonormal matching pursuit (OMP) and basis pursuit (BP), while performing in a local fashion[5]

Besides its versatility in inverse problems, recent efforts have focused on the multi-layer version of the model and provided evidence of its reliability for recovering multiple underlying representations.[7] Moreover, a tight connection between such a model and the well-established convolutional neural network model (CNN) was revealed, providing a new tool for a more rigurous understanding of its theoretical conditions.

The convolutional sparse coding model provides a very efficient set of tools to solve a wide range of inverse problems, including image denoising, image inpainting, and image superresolution. By imposing local sparsity constraints, it allows to efficiently tackle the global coding problem by iteratively estimating disjoint patches and assembling them into a global signal. Furthermore, by adopting a multi-layer sparse model, which results from imposing the sparsity constraint to the signal inherent representations themselves, the resulting "layered" pursuit algorithm keeps the strong uniqueness and stability conditions from the single-layer model. This extension also provides some interesting notions about the relation between its sparsity prior and the forward pass of the convolutional neural network, which allows to understand how the theoretical benefits of the CSC model can provide a strong mathematical meaning of the CNN structure.

Sparse coding paradigm

Basic concepts and models are presented to explain into detail the convolutional sparse representation framework. On the grounds that the sparsity constraint has been proposed under different models, a short description of them is presented to show its evolution up to the model of interest. Also included are the concepts of mutual coherence and restricted isometry property to establish uniqueness stability guarantees.

Global sparse coding model

Allow signal ๐ฑโˆˆโ„N to be expressed as a linear combination of a small number of atoms from a given dictionary ๐ƒโˆˆโ„Nร—M,M>N. Alternatively, the signal can be expressed as ๐ฑ=๐ƒ๐œž, where ๐œžโˆˆโ„M corresponds to the sparse representation of ๐ฑ, which selects the atoms to combine and their weights. Subsequently, given ๐ƒ, the task of recovering ๐œž from either the noise-free signal itself or an observation is denominated sparse coding. Considering the noise-free scenario, the coding problem is formulated as follows: ๐œž^ideal=argmin๐œžโ€–๐œžโ€–0s.t.๐ƒ๐œž=๐ฑ. The effect of the โ„“0 norm is to favor solutions with as much zero elements as possible. Furthermore, given an observation affected by bounded energy noise: ๐˜=๐ƒ๐œž+๐„,โ€–๐„โ€–2<ฮต, the pursuit problem is reformulated as: ๐œž^noise=argmin๐œžโ€–๐œžโ€–0 s.t. โ€–๐ƒ๐œžโˆ’๐˜โ€–2<ฮต.

Stability and uniqueness guarantees for the global sparse model

Let the spark of ๐ƒ be defined as the minimum number of linearly independent columns: ฯƒ(๐ƒ)=min๐œžโ€–๐œžโ€–0s.t.๐ƒ๐œž=0,๐œžโ‰ 0.

Then, from the triangular inequality, the sparsest vector ๐œž satisfies: โ€–๐œžโ€–0<ฯƒ(๐ƒ)2. Although the spark provides an upper bound, it is unfeasible to compute in practical scenarios. Instead, let the mutual coherence be a measure of similarity between atoms in ๐ƒ. Assuming โ„“2-norm unit atoms, the mutual coherence of ๐ƒ is defined as: ฮผ(๐ƒ)=maxiโ‰ jโ€–๐๐ข๐“๐๐ฃโ€–2, where ๐i are atoms. Based on this metric, it can be proven that the true sparse representation ๐œžโˆ— can be recovered if and only if โ€–๐œžโˆ—โ€–0<12(1+1ฮผ(๐ƒ)).

Similarly, under the presence of noise, an upper bound for the distance between the true sparse representation ๐œžโˆ— and its estimation ๐œž^ can be established via the restricted isometry property (RIP). A k-RIP matrix ๐ƒ with constant ฮดk corresponds to: (1โˆ’ฮดk)โ€–๐œžโ€–22โ‰คโ€–๐ƒ๐œžโ€–22โ‰ค(1+ฮดk)โ€–๐œžโ€–22, where ฮดk is the smallest number that satisfies the inequality for every โ€–๐œžโ€–0=k. Then, assuming โ€–๐œžโ€–0<12(1+1ฮผ(๐ƒ)), it is guaranteed that โ€–๐œž^โˆ’๐œžโˆ—โ€–22โ‰ค4ฮต21โˆ’ฮผ(๐ƒ)(2โ€–๐œžโ€–0โˆ’1).

Solving such a general pursuit problem is a hard task if no structure is imposed on dictionary ๐ƒ. This implies learning large, highly overcomplete representations, which is extremely expensive. Assuming such a burden has been met and a representative dictionary has been obtained for a given signal ๐ฑ, typically based on prior information, ๐œžโˆ— can be estimated via several pursuit algorithms.

Pursuit algorithms for the global sparse model

Two basic methods for solving the global sparse coding problem are orthogonal matching pursuit (OMP) and basis pursuit (BP). OMP is a greedy algorithm that iteratively selects the atom best correlated with the residual between ๐ฑ and a current estimation, followed by a projection onto a subset of pre-selected atoms. On the other hand, basis pursuit is a more sophisticated approach that replaces the original coding problem by a linear programming problem. Based on this algorithms, the global sparse coding provides considerably loose bounds for the uniqueness and stability of ๐œž^. To overcome this, additional priors are imposed over ๐ƒ to guarantee tighter bounds and uniqueness conditions. The reader is referred to (,[5] section 2) for details regarding this properties.

Convolutional sparse coding model

A local prior is adopted such that each overlapping section of ๐œž is sparse. Let ๐ƒโˆˆโ„Nร—Nm be constructed from shifted versions of a local dictionary ๐ƒ๐‹โˆˆโ„nร—m,mโ‰ชM. Then, ๐ฑ is formed by products between ๐ƒ๐‹ and local patches of ๐œžโˆˆโ„mN.

The global dictionary is expressed in terms of a stride convolutional matrix. So, signals can be generated in terms of stripes of the sparse representation multiplies by a shift-invariant local dictionary.

From the latter, ๐œž can be re-expressed by N disjoint sparse vectors ฮฑiโˆˆโ„m: ๐œžโˆˆ{ฮฑ1,ฮฑ2,,ฮฑN}T. Similarly, let ฮณ be a set of (2nโˆ’1) consecutive vectors ฮฑi. Then, each disjoint segment in ๐ฑ is expressed as: ๐ฑi=๐‘i๐ƒ๐œž, where operator ๐‘iโˆˆโ„nร—N extracts overlapping patches of size n starting at index i. Thus, ๐‘i๐ƒ contains only (2nโˆ’1)m nonzero columns. Hence, by introducing operator ๐’iโˆˆ๐‘(2nโˆ’1)mร—Nm which exclusively preserves them: ๐ฑi=๐‘i๐ƒ๐’iTโŸฮฉ(Si๐œž)โŸฮณi, where ฮฉ is known as the stripe dictionary, which is independent of i, and ฮณi is denominated the i-th stripe. So, ๐ฑ corresponds to a patch aggregation or convolutional interpretation: ๐ฑ=โˆ‘i=1N๐‘iT๐ƒLฮฑi=โˆ‘i=1m๐iโˆ—๐ณ๐ข. Where ๐i corresponds to the i-th atom from the local dictionary ๐ƒL and ๐ณ๐ข is constructed by elements of patches ฮฑ: ๐ณ๐ขโ‰œ(ฮฑ1,i,ฮฑ2,i,,ฮฑN,i)T. Given the new dictionary structure, let the โ„“0,โˆž pseudo-norm be defined as: โ€–๐œžโ€–0,โˆžโ‰œ maxiโ€–ฮณiโ€–0. Then, for the noise-free and noise-corrupted scenarios, the problem can be respectively reformulated as: ๐œž^ideal=argmin๐œžโ€–๐œžโ€–0,โˆžs.t.๐ƒ๐œž=๐ฑ,๐œž^noise=argmin๐œžโ€–๐œžโ€–0,โˆžs.t.โ€–๐˜โˆ’๐ƒ๐œžโ€–2<ฮต.

Stability and uniqueness guarantees for the convolutional sparse model

For the local approach, ๐ƒ mutual coherence satisfies: ฮผ(๐ƒ)โ‰ฅ(mโˆ’1m(2nโˆ’1)โˆ’1)1/2. So, if a solution obeys โ€–๐œžโ€–0,โˆž<12(1+1ฮผ(๐ƒ)), then it is the sparsest solution to the โ„“0,โˆž problem. Thus, under the local formulation, the same number of non-zeros is permitted for each stripe instead of the full vector!

Similar to the global model, the CSC is solved via OMP and BP methods, the latter contemplating the use of the iterative shrinkage thresholding algorithm (ISTA)[8] for splitting the pursuit into smaller problems. Based on the โ„“0,โˆž pseudonorm, if a solution ๐œž exists satisfying โ€–๐œžโ€–0,โˆž<12(1+1ฮผ(๐ƒ)), then both methods are guaranteed to recover it. Moreover, the local model guarantees recovery independently of the signal dimension, as opposed to the โ„“0 prior. Stability conditions for OMP and BP are also guaranteed if its exact recovery condition (ERC) is met for a support ๐’ฏ with a constant ฮธ. The ERC is defined as: ฮธ=1โˆ’maxiโˆ‰๐’ฏโ€–๐ƒ๐’ฏโ€ ๐iโ€–1>0, where โ€  denotes the Pseudo-inverse. Algorithm 1 shows the Global Pursuit method based on ISTA.

Algorithm 1: 1D CSC via local iterative soft-thresholding.

Input:

๐ƒL: Local Dictionary,

๐ฒ: observation,

ฮป: Regularization parameter,

c: step size for ISTA,

tol: tolerance factor,

maxiters: maximum number of iterations.

{๐œถi}(0)โ†{๐ŸŽNร—1} (Initialize disjoint patches.)
{๐ซi}(0)โ†{๐‘i๐ฒ} (Initialize residual patches.)
kโ†0

Repeat

{๐œถi}(k)โ†๐’ฎฮปc({๐œถi}(kโˆ’1)+1c{๐ƒLT๐ซi}(kโˆ’1)) (Coding along disjoint patches)
๐œถi ๐ฑ^(k)โ†โˆ‘i๐‘iT๐ƒL๐œถi(k) (Patch Aggregation)
{๐ซi}(k)โ†๐‘i(๐ฒโˆ’๐ฑ^(k)) (Update residuals)
kโ†k+1

Until โ€–๐ฑ^(k)โˆ’๐ฑ^(kโˆ’1)โ€–2< tol or k> maxiters.

Multi-layered convolutional sparse coding model

By imposing the sparsity prior in the inherent structure of ๐ฑ, strong conditions for a unique representation and feasible methods for estimating it are granted. Similarly, such a constraint can be applied to its representation itself, generating a cascade of sparse representations: Each code is defined by a few atoms of a given set of convolutional dictionaries.

Based on these criteria, yet another extension denominated multi-layer convolutional sparse coding (ML-CSC) is proposed. A set of analytical dictionaries {๐ƒ}k=1K can be efficiently designed, where sparse representations at each layer {๐œž}k=1K are guaranteed by imposing the sparsity prior over the dictionaries themselves.[7] In other words, by considering dictionaries to be stride convolutional matrices i.e. atoms of the local dictionaries shift m elements instead of a single one, where m corresponds to the number of channels in the previous layer, it is guaranteed that the โ€–๐œžโ€–0,โˆž norm of the representations along layers is bounded.

For example, given the dictionaries ๐ƒ1โˆˆโ„Nร—Nm1,๐ƒ2โˆˆโ„Nm1ร—Nm2, the signal is modeled as ๐ƒ1๐œž1=๐ƒ1(๐ƒ2๐œž2), where ๐œž1 is its sparse code, and ๐œž2 is the sparse code of ๐œž1. Then, the estimation of each representation is formulated as an optimization problem for both noise-free and noise-corrupted scenarios, respectively. Assuming ๐œž0=๐ฑ: Find{๐œži}i=1Ks.t.๐œžiโˆ’1=๐ƒi๐œži,โ€–๐œžiโ€–0,โˆžโ‰คฮปiFind{๐œži}i=1Ks.t.โ€–๐œžiโˆ’1โˆ’๐ƒi๐œžiโ€–2โ‰คฮตi,โ€–๐œžiโ€–0,โˆžโ‰คฮปi

In what follows, theoretical guarantees for the uniqueness and stability of this extended model are described.

Theorem 1: (Uniqueness of sparse representations) Consider signal ๐ฑ satisfies the (ML-CSC) model for a set of convolutional dictionaries {๐ƒi}i=1K with mutual coherence {ฮผ(๐ƒi)}i=1K. If the true sparse representations satisfy {๐œž}i=1K<12(1+1ฮผ(๐ƒi)), then a solution to the problem {๐œži^}i=1K will be its unique solution if the thresholds are chosen to satisfy: ฮปi<12(1+1ฮผ(๐ƒi)).

Theorem 2: (Global stability of the noise-corrupted scenario) Consider signal ๐ฑ satisfies the (ML-CSC) model for a set of convolutional dictionaries {๐ƒi}i=1K is contaminated with noise ๐„, where โ€–๐„โ€–2โ‰คฮต0. resulting in ๐˜=๐—+๐„. If ฮปi<12(1+1ฮผ(๐ƒi)) and ฮตi2=4ฮตiโˆ’121โˆ’(2โ€–๐œžiโ€–0,โˆžโˆ’1)ฮผ(๐ƒi), then the estimated representations {๐œži}i=1K satisfy the following: โ€–๐œžiโˆ’๐œž^iโ€–22โ‰คฮตi2.

Projection-based algorithms

As a simple approach for solving the ML-CSC problem, either via the โ„“0 or โ„“1 norms, is by computing inner products between ๐ฑ and the dictionary atoms to identify the most representatives ones. Such a projection is described as: ๐œž^โ„“p=argmin๐œž12โ€–๐œžโˆ’๐ƒT๐ฑโ€–22+ฮฒโ€–๐œžโ€–ppโˆˆ{0,1},

which have closed-form solutions via the hard-thresholding โ„‹ฮฒ(๐ƒT๐ฑ) and soft-thresholding algorithms ๐’ฎฮฒ(๐ƒT๐ฑ), respectively. If a nonnegative constraint is also contemplated, the problem can be expressed via the โ„“1 norm as: ๐œž^=argmin๐œž12โ€–๐œžโˆ’๐ƒT๐ฑโ€–22+ฮฒโ€–๐œžโ€–1, s.t. ๐œžโ‰ฅ0, which closed-form solution corresponds to the soft nonnegative thresholding operator ๐’ฎฮฒ+(๐ƒT๐ฑ), where ๐’ฎฮฒ+(z)โ‰œmax(zโˆ’ฮฒ,0). Guarantees for the Layered soft-thresholding approach are included in the Appendix (Section 6.2).

Theorem 3: (Stable recovery of the multi-layered soft-thresholding algorithm) Consider signal ๐ฑ that satisfies the (ML-CSC) model for a set of convolutional dictionaries {๐ƒi}i=1K with mutual coherence {ฮผ(๐ƒi)}i=1K is contaminated with noise ๐„, where โ€–๐„โ€–2โ‰คฮต0. resulting in ๐˜=๐—+๐„. Denote by |๐œžimin| and |๐œžimax| the lowest and highest entries in ๐œži. Let {๐œž^i}i=1K be the estimated sparse representations obtained for {ฮฒi}i=1K. If โ€–๐œžiโ€–0,โˆž<12(1+1ฮผ(๐ƒi)|๐œžimin||๐œžimin|)โˆ’1ฮผ(๐ƒi)ฮตiโˆ’1|๐œžimax| and ฮฒi is chosen according to: โ€–๐œžiโ€–0,โˆžs<12(1+1ฮผ(๐ƒi)frac|๐œžimin||๐œžimax|)โˆ’1ฮผ(๐ƒi)ฮตiโˆ’1|๐œžimax| Then, ๐œž^i has the same support as ๐œži, and โ€–๐œžiโˆ’๐œži^โ€–2,โˆžโ‰คฮตi, for ฮตi=โ€–๐œžiโ€–0,โˆž(ฮตiโˆ’1+ฮผ(๐ƒi)(โ€–๐œžiโ€–0,โˆžโˆ’1)|๐œžimax|+ฮฒi)

Connections to convolutional neural networks

Recall the forward pass of the convolutional neural network model, used in both training and inference steps. Let ๐ฑโˆˆโ„Mm1 be its input and ๐–kโˆˆโ„Nร—m1 the filters at layer k, which are followed by the rectified linear unit (RLU) ReLU(๐ฑ)=max(0,x), for bias ๐›โˆˆโ„Mm1. Based on this elementary block, taking K=2 as example, the CNN output can be expressed as: ๐™2=ReLU(๐–2TReLU(๐–1T๐ฑ)+๐›1)+๐›2). Finally, comparing the CNN algorithm and the Layered thresholding approach for the nonnegative constraint, it is straightforward to show that both are equivalent: ๐œž^=๐’ฎฮฒ2+(๐ƒ2T๐’ฎฮฒ1+(๐ƒ1T๐ฑ))=ReLU(๐–2TReLU(๐–1T๐ฑ+ฮฒ1)+ฮฒ2).

Convolutional Layers from the Forward Pass Algorithm
Contrast between the rectified linear unit function and the nonnegative soft thresholding pointwise nonlinearities

As explained in what follows, this naive approach of solving the coding problem is a particular case of a more stable projected gradient descent algorithm for the ML-CSC model. Equipped with the stability conditions of both approaches, a more clear understanding about the class of signals a CNN can recover, under what noise conditions can an estimation be accurately attained, and how can its structure be modified to improve its theoretical conditions. The reader is referred to (,[7] section 5) for details regarding their connection.

Pursuit algorithms for the multi-layer CSC model

A crucial limitation of the forward pass is it being unable to recover the unique solution of the DCP problem, which existence has been demonstrated. So, instead of using a thresholding approach at each layer, a full pursuit method is adopted, denominated layered basis pursuit (LBP). Considering the projection onto the โ„“1 ball, the following problem is proposed: ๐œž^i=argmin๐œži12โ€–๐ƒi๐œžiโˆ’๐œž^iโ€–22+ฮพiโ€–๐œžiโ€–1, where each layer is solved as an independent CSC problem, and ฮพi is proportional to the noise level at each layer. Among the methods for solving the layered coding problem, ISTA is an efficient decoupling alternative. In what follows, a short summary of the guarantees for the LBP are established.

Theorem 4: (Recovery guarantee) Consider a signal ๐ฑ characterized by a set of sparse vectors {๐œži}i=1K, convolutional dictionaries {๐ƒi}i=1K and their corresponding mutual coherences {ฮผ(๐ƒi)}i=1K. If โ€–๐œžiโ€–0,โˆž<12(1+1ฮผ(๐ƒi)), then the LBP algorithm is guaranteed to recover the sparse representations.

Theorem 5: (Stability in the presence of noise) Consider the contaminated signal ๐˜=๐—+๐„, where โ€–๐„โ€–0,โˆžโ‰คฮต0 and ๐ฑ is characterized by a set of sparse vectors {๐œži}i=1K and convolutional dictionaries {๐ƒi}i=1K. Let {๐œž^i}i=1K be solutions obtained via the LBP algorithm with parameters {ฮพ}i=1K. If โ€–๐œžiโ€–0,โˆž<13(1+1ฮผ(๐ƒi)) and ฮพi=4ฮตiโˆ’1, then: (i) The support of the solution ๐œž^i is contained in that of ๐œži, (ii) โ€–๐œžiโˆ’๐œž^iโ€–2,โˆžโ‰คฮตi, and (iii) Any entry greater in absolute value than ฮตiโ€–๐œžiโ€–0โˆž is guaranteed to be recovered.

Applications of the convolutional sparse coding model: image inpainting

As a practical example, an efficient image inpainting method for color images via the CSC model is shown.[6] Consider the three-channel dictionary ๐ƒโˆˆโ„Nร—Mร—3, where ๐c,m denotes the m-th atom at channel c, represents signal ๐ฑ by a single cross-channel sparse representation ๐œž, with stripes denoted as ๐ณi. Given an observation ๐ฒ={๐ฒr,๐ฒg,๐ฒb}, where randomly chosen channels at unknown pixel locations are fixed to zero, in a similar way to impulse noise, the problem is formulated as: {๐ณ^i}=argmin{๐ณi}12โˆ‘cโ€–โˆ‘i๐c,iโˆ—๐ณiโˆ’๐ฒcโ€–22+ฮปโˆ‘iโ€–๐ณiโ€–1. By means of ADMM,[9] the cost function is decoupled into simpler sub-problems, allowing an efficient ๐œž estimation. Algorithm 2 describes the procedure, where D^c,m is the DFT representation of Dc,m, the convolutional matrix for the term ๐c,iโˆ—๐ณi. Likewise, ๐ฑ^m and ๐ณ^m correspond to the DFT representations of ๐ฑm and ๐ณm, respectively, ๐’ฎฮฒ(.) corresponds to the Soft-thresholding function with argument ฮฒ, and the โ„“1,2 norm is defined as the โ„“2 norm along the channel dimension c followed by the โ„“1 norm along the spatial dimension m. The reader is referred to (,[6] Section II) for details on the ADMM implementation and the dictionary learning procedure.

Algorithm 2: Color image inpainting via the convolutional sparse coding model.

Input:

๐ƒ^c,m: DFT of convolutional matrices ๐ƒc,m,

๐ฒ={๐ฒr,๐ฒg,๐ฒb}: Color observation,

ฮป: Regularization parameter,

{ฮผ,ฯ}: step sizes for ADMM,

tol: tolerance factor,

maxiters: maximum number of iterations.

kโ†k+1

Repeat

{๐ณ^m}(k+1)โ†argmin{๐ฑ^m}12โˆ‘cโ€–โˆ‘m๐ƒ^c,m๐ณ^mโˆ’๐ฒ^cโ€–+ฯ2โˆ‘mโ€–๐ณ^mโˆ’(๐ฒ^m+๐ฎ^m(k))โ€–22.
{๐ฒc,m}(k+1)โ†argmin{๐ฒc,m}ฮปโˆ‘cโˆ‘mโ€–๐ฒc,mโ€–1+ฮผโ€–{๐ฑc,m(k+1)}โ€–2,1+ฯ2โˆ‘mโ€–๐ณm(k+1)โˆ’(๐ฒ+๐ฎm(k))โ€–22.
๐ฒm(k+1)=๐’ฎฮป/ฯ(๐ฑm(k+1)+๐ฎm(k)).
kโ†k+1

Until โ€–{๐ณm}(k+1)โˆ’{๐ณm}(k)โ€–2<tol or i> maxiters.

References

Template:Reflist