# cr.sparse.opt.prox_owl1¶

cr.sparse.opt.prox_owl1(lambda_=1.0)[source]

Returns a prox-capable wrapper for the ordered and weighted l1-norm function f(x) = sum(lambda * sort(abs(x), 'descend'))

Parameters

lambda (jax.numpy.ndarray) – A strictly positive vector which is sorted in decreasing order

Returns

A prox-capable function

Return type

ProxCapable

Let $$x \in \RR^n$$. Let $$|x|$$ represent a vector of absolute values of entries in $$x$$. Let $$|x|_{\downarrow}$$ represent a vector consisting of entries in $$|x|$$ sorted in descending order. Let $$|x|_{(1)} \geq |x|_{(2)} \geq |x|_{(3)} \geq \dots \geq |x|_{(n)}$$ represent the order statistic of $$x$$, i.e. entries in $$x$$ arranged in descending order by magnitude.

Let $$\lambda \in \RR^n_{+}$$ be a weight vector such that $$\lambda_1 \geq \lambda_2 \geq \dots \geq \lambda_n$$ and $$\lambda \neq 0$$ i.e. not all entries in $$\lambda$$ are zero.

Then the ordered weighted $$\ell_1$$ norm of $$x$$ w.r.t. the weight vector $$\lambda$$ is defined as:

(1)$J_{\lambda} (x) = \sum_{1}^n \lambda_i | x |_{(i)}$

The function is computed in following steps:

• Take absolute values of entries in x

• Sort the entries of x in descending order

• Multiply the sorted entries with entries in lambda (component wise)

• Compute the sum of the entries

For the derivation of the proximal operator for the ordered and weighted l1 norm, see .