Package parsimony :: Package functions :: Module penalties :: Class L1
[hide private]
[frames] | no frames]

Class L1

source code

               object --+        
                        |        
      properties.Function --+    
                            |    
    properties.AtomicFunction --+
                                |
                   object --+   |
                            |   |
           properties.Penalty --+
                                |
                   object --+   |
                            |   |
        properties.Constraint --+
                                |
                   object --+   |
                            |   |
  properties.ProximalOperator --+
                                |
                   object --+   |
                            |   |
properties.ProjectionOperator --+
                                |
                               L1

The proximal operator of the L1 function with a penalty formulation

    f(eta) = l * (||eta||_1 - c),

where ||eta||_1 is the L1 loss function. The constrained version has the
form

    ||eta||_1 <= c.

Parameters
----------
l : Non-negative float. The Lagrange multiplier, or regularisation
        constant, of the function.

c : Float. The limit of the constraint. The function is feasible if
        ||eta||_1 <= c. The default value is c=0, i.e. the default is a
        regularisation formulation.

penalty_start : Non-negative integer. The number of columns, variables
        etc., to be exempt from penalisation. Equivalently, the first index
        to be penalised. Default is 0, all columns are included.

Instance Methods [hide private]
 
__init__(self, l=1.0, c=0.0, penalty_start=0)
x.__init__(...) initializes x; see help(type(x)) for signature
source code
 
f(self, beta)
Function value.
source code
 
prox(self, beta, factor=1.0, **kwargs)
The corresponding proximal operator.
source code
 
proj(self, beta, **kwargs)
The corresponding projection operator.
source code
 
__proj_old(self, beta)
The corresponding projection operator.
source code
 
feasible(self, beta)
Feasibility of the constraint.
source code

Inherited from properties.Function: get_params, reset, set_params

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Variables [hide private]
  __abstractmethods__ = frozenset([])

Inherited from properties.AtomicFunction: __metaclass__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, l=1.0, c=0.0, penalty_start=0)
(Constructor)

source code 

x.__init__(...) initializes x; see help(type(x)) for signature

Overrides: object.__init__
(inherited documentation)

f(self, beta)

source code 

Function value.

Overrides: properties.Function.f

prox(self, beta, factor=1.0, **kwargs)

source code 

The corresponding proximal operator.

From the interface "ProximalOperator".

Overrides: properties.ProximalOperator.prox

proj(self, beta, **kwargs)

source code 

The corresponding projection operator.

From the interface "ProjectionOperator".

Overrides: properties.ProjectionOperator.proj

__proj_old(self, beta)

source code 

The corresponding projection operator.

From the interface "ProjectionOperator".

feasible(self, beta)

source code 
Feasibility of the constraint.

From the interface "Constraint".

Parameters
----------
beta : Numpy array. The variable to check for feasibility.

Overrides: properties.Constraint.feasible