pyproximal.Log1#
- class pyproximal.Log1(sigma, delta=1e-10)[source]#
Logarithmic penalty 2.
The logarithmic penalty (Log) is defined as
\[\mathrm{Log}_{\sigma,\delta}(\mathbf{x}) = \sigma \sum_i \log(|x_i| + \delta)\]where \({\sigma>0}\), \({\gamma>0}\).
- Parameters
Notes
The logarithmic penalty gives rise to a log-thresholding that is a smooth alternative falling in between the hard and soft thresholding.
The proximal operator is defined as [1]:
\[\begin{split}\prox_{\tau \sigma log}(\mathbf{x}) = \begin{cases} 0.5 (x_i + \delta - \sqrt{(x_i-\delta)^2-2\tau \sigma}), & x_i < -x_0 \\ 0, & -x_0 \leq x_i \leq x_0 \\ 0.5 (x_i - \delta + \sqrt{(x_i+\delta)^2-2\tau \sigma}), & x_i > x_0\\ \end{cases}\end{split}\]where \(x_0=\sqrt{2 \tau \sigma} - \delta\).
- 1
Malioutov, D., and Aravkin, A. “Iterative log thresholding”, Arxiv, 2013.
Methods
__init__
(sigma[, delta])affine_addition
(v)Affine addition
chain
(g)Chain
elementwise
(x)grad
(x)Compute gradient
postcomposition
(sigma)Postcomposition
precomposition
(a, b)Precomposition
prox
(**kwargs)proxdual
(**kwargs)