Method of Frame (solved by Conjugate Gradient)

DESCRIPTION:

Data denoising or minimum L2 norm solution by L2 penalized Least Squares.

USAGE:

mof.by.cg(s, lambda, ..., analysis="nd.dwt", cg.max.iter=length(s), 
          cg.tol=0.01, verbose=F)  

REQUIRED ARGUMENTS:

s
numeric or complex vector.
lambda
non-negative real number proportional to the amount of denoising performed. Meta parameter penalizing the residual sum of squares by the L2 norm of the coefficients. To define a unique minimum L2 norm solution to the interpolation problem, lambda=0.

OPTIONAL ARGUMENTS:

...
additional argument such as wavelet or n.levels used by analysis.
analysis.name
character string indicating which wavelet transform to use, such as nd.dwt or wp.table. For lambda=0, it is assumed that the matrix corresponding to the transform is full row rank.
cg.max.iter
real number giving the upper bound on the number of iterations to perform by the conjugate gradient solver.
cg.tol
convergence treshold for the conjugate gradient solver.
verbose
logical flag indicating whether or not information should be printed on the screen at each interior point interation.

VALUE:

coef.hat
estimated wavelet coefficients. Minimizes the method of frame objective function, for lambda>0:

and for lambda=0: subject to s=Wx.
s.hat
real or complex vector of estimated signal.

REFERENCES:

Chen S., Donoho, D.L., and Saunders, M. (1996). Atomic decomposition by basis pursuit. Technical report, Department of Statistics, Stanford University.

SEE ALSO:

, , , .

EXAMPLES:

par(mfrow=c(1,2)) 
xx <- as.vector(make.signal("blocks", n=512, snr=7)) 
plot(xx, type="l", xlab="smoothed blocks", ylab="") 
title("Noisy signal") 
mof.hat <- mof.by.cg(xx, lambda=2, cg.max.iter=512, 
                     analysis.name = "wp.table", 
                     n.levels=4, wavelet="s8") 
plot(mof.hat$s.hat, type="l", xlab="smoothed blocks", 
     ylab="", ylim=range(xx)) 
title("Method of frame estimate") 
par(mfrow=c(1,1)) 
plot(mof.hat$coef.hat)