class LBFGS[T] extends FirstOrderMinimizer[T, DiffFunction[T]] with SerializableLogging

Port of LBFGS to Scala.

Special note for LBFGS: If you use it in published work, you must cite one of: * J. Nocedal. Updating Quasi-Newton Matrices with Limited Storage (1980), Mathematics of Computation 35, pp. 773-782. * D.C. Liu and J. Nocedal. On the Limited mem Method for Large Scale Optimization (1989), Mathematical Programming B, 45, 3, pp. 503-528.

Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LBFGS
  2. FirstOrderMinimizer
  3. SerializableLogging
  4. Serializable
  5. Minimizer
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new LBFGS(maxIter: Int = -1, m: Int = 7, tolerance: Double = 1E-9)(implicit space: MutableInnerProductModule[T, Double])
  2. new LBFGS(convergenceCheck: ConvergenceCheck[T], m: Int)(implicit space: MutableInnerProductModule[T, Double])

Type Members

  1. type History = ApproximateInverseHessian[T]

    Any history the derived minimization function needs to do its updates.

    Any history the derived minimization function needs to do its updates. typically an approximation to the second derivative/hessian matrix.

    Definition Classes
    LBFGSFirstOrderMinimizer
  2. type State = FirstOrderMinimizer.State[T, Info, History]
    Definition Classes
    FirstOrderMinimizer

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def adjust(newX: T, newGrad: T, newVal: Double): (Double, T)
    Attributes
    protected
    Definition Classes
    FirstOrderMinimizer
  5. def adjustFunction(f: DiffFunction[T]): DiffFunction[T]
    Attributes
    protected
    Definition Classes
    LBFGSFirstOrderMinimizer
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def calculateObjective(f: DiffFunction[T], x: T, history: History): (Double, T)
    Attributes
    protected
    Definition Classes
    FirstOrderMinimizer
  8. def chooseDescentDirection(state: State, fn: DiffFunction[T]): T
    Attributes
    protected
    Definition Classes
    LBFGSFirstOrderMinimizer
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  10. val convergenceCheck: ConvergenceCheck[T]
    Definition Classes
    FirstOrderMinimizer
  11. def determineStepSize(state: State, f: DiffFunction[T], dir: T): Double

    Given a direction, perform a line search to find a step size to descend.

    Given a direction, perform a line search to find a step size to descend. The result fulfills the wolfe conditions.

    state

    the current state

    f

    The objective

    dir

    The step direction

    returns

    stepSize

    Attributes
    protected
    Definition Classes
    LBFGSFirstOrderMinimizer
  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  14. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  16. def infiniteIterations(f: DiffFunction[T], state: State): Iterator[State]
    Definition Classes
    FirstOrderMinimizer
  17. def initialHistory(f: DiffFunction[T], x: T): History
    Attributes
    protected
    Definition Classes
    LBFGSFirstOrderMinimizer
  18. def initialState(f: DiffFunction[T], init: T): State
    Attributes
    protected
    Definition Classes
    FirstOrderMinimizer
  19. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  20. def iterations(f: DiffFunction[T], init: T): Iterator[State]
    Definition Classes
    FirstOrderMinimizer
  21. def logger: LazyLogger
    Attributes
    protected
    Definition Classes
    SerializableLogging
  22. def minimize(f: DiffFunction[T], init: T): T
    Definition Classes
    FirstOrderMinimizerMinimizer
  23. def minimizeAndReturnState(f: DiffFunction[T], init: T): State
    Definition Classes
    FirstOrderMinimizer
  24. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  25. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  26. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  27. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  28. def takeStep(state: State, dir: T, stepSize: Double): T
    Attributes
    protected
    Definition Classes
    LBFGSFirstOrderMinimizer
  29. def toString(): String
    Definition Classes
    AnyRef → Any
  30. def updateHistory(newX: T, newGrad: T, newVal: Double, f: DiffFunction[T], oldState: State): History
    Attributes
    protected
    Definition Classes
    LBFGSFirstOrderMinimizer
  31. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  32. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  33. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from FirstOrderMinimizer[T, DiffFunction[T]]

Inherited from SerializableLogging

Inherited from Serializable

Inherited from Minimizer[T, DiffFunction[T]]

Inherited from AnyRef

Inherited from Any

Ungrouped