L1Regularization

class L1Regularization[T](val lambda: Double, delta: Double, eta: Double, maxIter: Int)(implicit space: MutableFiniteCoordinateField[T, _, Double], rand: RandBasis) extends StochasticGradientDescent[T]

Implements the L1 regularization update.

Each step is:

x_{t+1}i = sign(x_{t,i} - eta/s_i * g_ti) * (abs(x_ti - eta/s_ti * g_ti) - lambda * eta /s_ti))_+

where g_ti is the gradient and s_ti = \sqrt(\sum_t'^{t} g_ti^2)

trait Serializable
class Object
trait Matchable
class Any

Type members

Classlikes

case class History(sumOfSquaredGradients: T)

Inherited types

type State = State[T, Info, History]
Inherited from:
FirstOrderMinimizer

Value members

Concrete methods

override def updateHistory(newX: T, newGrad: T, newValue: Double, f: StochasticDiffFunction[T], oldState: State): History
Definition Classes

Inherited methods

protected def logger: LazyLogger
Inherited from:
SerializableLogging
def minimize(f: StochasticDiffFunction[T], init: T): T
Inherited from:
FirstOrderMinimizer

Concrete fields