OrthantWisePrms

scalation.optimization.quasi_newton.OrthantWisePrms
case class OrthantWisePrms(c: Double, start: Int, end: Option[Int])

The OrthantWisePrms class is used to group together all parameters that are control the Orthant-Wise method for minimizing the objective function value during the L-BFGS optimization process.

Value parameters

c

Coefficient for the L1 norm of variables. Must be set to a positive value to activate the Orthant-Wise Limited-memory Quasi-Newton (OWL-QN) method, which minimizes the objective function F(x) combined with the L1 norm |x| of the variables: F(x) + C|x|. This parameter is the coefficient ''C'' for the |x| term. As the L1 norm |x| is not differentiable at zero, the code modifies function and gradient evaluations from a client program suitably. Thus, a client program only has to return the function value F(x) and gradients G(x) as usual.

end

End index Option for computing L1 norm of the variables. This parameter, which we shall henceforth call ''e'', must be selected such that 0 < ''e'' ≤ N. It specifies the index number at which the code stops computing the L1 norm of the variables x. Setting this parameter to None or Some with a negative value will compute the L1 norm for all the variables x, which is useful when the number of variables x (''N'') is not known.

start

Start index for computing L1 norm of the variables. This parameter, which we shall henceforth call ''b'', must be selected such that 0 ≤ ''b'' < N. It specifies the index number from which the L1 norm of the variables x will be computed: |x| = |x,,''b'',,| + |x,,''b''+1,,| + ... + |x,,N,,|. In other words, variables x,,1,,, ..., x,,''b''-1,, are not used for computing the L1 norm. Setting ''b'' to a non-zero value can protect variables x,,1,,, ..., x,,''b''-1,, from being regularized (e.g.: if they represent a bias term of logistic regression). The default value is 0.

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

def project(d: VectorD, sign: VectorD): VectorD
def x1Norm(x: VectorD): Double

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product