tick.prox.
ProxMulti
(proxs: tuple)[source]¶Multiple proximal operator. This allows to apply sequentially a list of proximal operators. This is convenient when one wants to apply different proximal operators on different parts of a vector.
proxs : tuple
of Prox
A tuple of prox operators to be applied successively.
dtype : {'float64', 'float32'}
Type of the arrays used.
call
(coeffs, step=1.0, out=None)¶Apply proximal operator on a vector. It computes:
coeffs : numpy.ndarray
, shape=(n_coeffs,)
Input vector on which is applied the proximal operator
step : float
or np.array
, default=1.
The amount of penalization is multiplied by this amount
If
float
, the amount of penalization is multiplied by this amountIf
np.array
, then each coordinate of coeffs (within the given range), receives an amount of penalization multiplied by t (available only for separable prox)
out : numpy.ndarray
, shape=(n_params,), default=None
If not
None
, the output is stored in the givenout
. Otherwise, a new vector is created.
output : numpy.ndarray
, shape=(n_coeffs,)
Same object as out
Notes
step
must have the same size as coeffs
whenever range is
None
, or a size matching the one given by the range
otherwise
value
(coeffs: numpy.ndarray)[source]¶Returns the value of the penalization at coeffs
.
This returns the sum of the values of each prox called on the same
coeffs.
coeffs : numpy.ndarray
, shape=(n_coeffs,)
The value of the penalization is computed at this point
output : float
Value of the penalization at
coeffs
tick.prox.ProxMulti
¶