com.intel.analytics.bigdl.optim

Ftrl

class Ftrl[T] extends OptimMethod[T]

An implementation of Ftrl https://www.eecs.tufts.edu/~dsculley/papers/ad-click-prediction.pdf. Support L1 penalty, L2 penalty and shrinkage-type L2 penalty.

Linear Supertypes
OptimMethod[T], Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Ftrl
  2. OptimMethod
  3. Serializable
  4. Serializable
  5. AnyRef
  6. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Ftrl(learningRate: Double = 0.001, learningRatePower: Double = -0.5, initialAccumulatorValue: Double = 0.1, l1RegularizationStrength: Double = 0.0, l2RegularizationStrength: Double = 0.0, l2ShrinkageRegularizationStrength: Double = 0.0)(implicit arg0: ClassTag[T], ev: TensorNumeric[T])

    learningRate

    learning rate

    learningRatePower

    double, must be less or equal to zero. Default is -0.5.

    initialAccumulatorValue

    double, the starting value for accumulators, require zero or positive values. Default is 0.1.

    l1RegularizationStrength

    double, must be greater or equal to zero. Default is zero.

    l2RegularizationStrength

    double, must be greater or equal to zero. Default is zero.

    l2ShrinkageRegularizationStrength

    double, must be greater or equal to zero. Default is zero. This differs from l2RegularizationStrength above. L2 above is a stabilization penalty, whereas this one is a magnitude penalty.

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. var accumNew: Tensor[T]

  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. var buffer: Tensor[T]

  9. def checkParam(learningRate: Double, learningRatePower: Double, initialAccumulatorValue: Double, l1RegularizationStrength: Double, l2RegularizationStrength: Double, l2ShrinkageRegularizationStrength: Double): Unit

    Attributes
    protected
  10. def clearHistory(): Unit

    Clear the history information in the OptimMethod state

    Clear the history information in the OptimMethod state

    returns

    Definition Classes
    FtrlOptimMethod
  11. def clone(): OptimMethod[T]

    clone OptimMethod

    clone OptimMethod

    returns

    Definition Classes
    OptimMethod → AnyRef
  12. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  16. def getHyperParameter(): String

    Get hyper parameter from config table.

    Get hyper parameter from config table.

    Definition Classes
    OptimMethod
  17. def getLearningRate(): Double

    get learning rate

    get learning rate

    returns

    Definition Classes
    FtrlOptimMethod
  18. var gradWithStrinkage: Tensor[T]

  19. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  20. var initialAccumulatorValue: Double

    double, the starting value for accumulators, require zero or positive values.

    double, the starting value for accumulators, require zero or positive values. Default is 0.1.

  21. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  22. var l1RegularizationStrength: Double

    double, must be greater or equal to zero.

    double, must be greater or equal to zero. Default is zero.

  23. var l2RegularizationStrength: Double

    double, must be greater or equal to zero.

    double, must be greater or equal to zero. Default is zero.

  24. var l2ShrinkageRegularizationStrength: Double

    double, must be greater or equal to zero.

    double, must be greater or equal to zero. Default is zero. This differs from l2RegularizationStrength above. L2 above is a stabilization penalty, whereas this one is a magnitude penalty.

  25. var learningRate: Double

    learning rate

  26. var learningRatePower: Double

    double, must be less or equal to zero.

    double, must be less or equal to zero. Default is -0.5.

  27. def loadFromTable(config: Table): Ftrl.this.type

    load optimMethod parameters from Table

    load optimMethod parameters from Table

    config
    returns

    Definition Classes
    FtrlOptimMethod
  28. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  29. final def notify(): Unit

    Definition Classes
    AnyRef
  30. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  31. def optimize(feval: (Tensor[T]) ⇒ (T, Tensor[T]), parameter: Tensor[T]): (Tensor[T], Array[T])

    Optimize the model parameter

    Optimize the model parameter

    feval

    a function that takes a single input (X), the point of a evaluation, and returns f(X) and df/dX

    parameter

    the initial point

    returns

    the new x vector and the function list, evaluated before the update

    Definition Classes
    FtrlOptimMethod
  32. var quadratic: Tensor[T]

  33. def save(path: String, overWrite: Boolean = false): Ftrl.this.type

    save OptimMethod

    save OptimMethod

    path

    path

    overWrite

    whether to overwrite

    returns

    Definition Classes
    OptimMethod
  34. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  35. def toString(): String

    Definition Classes
    AnyRef → Any
  36. def updateHyperParameter(): Unit

    Update hyper parameter.

    Update hyper parameter. We have updated hyper parameter in method optimize(). But in DistriOptimizer, the method optimize() is only called on the executor side, the driver's hyper parameter is unchanged. So this method is using to update hyper parameter on the driver side.

    returns

    A string.

    Definition Classes
    OptimMethod
  37. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  39. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def clearHistory(state: Table): Table

    Clear the history information in the state

    Clear the history information in the state

    state
    returns

    Definition Classes
    OptimMethod
    Annotations
    @deprecated
    Deprecated

    (Since version 0.2.0) Please use clearHistory() instead

  2. def getHyperParameter(config: Table): String

    Get hyper parameter from config table.

    Get hyper parameter from config table.

    config

    a table contains the hyper parameter.

    Definition Classes
    OptimMethod
    Annotations
    @deprecated
    Deprecated

    (Since version 0.2.0) Please use getHyperParameter() instead

  3. def optimize(feval: (Tensor[T]) ⇒ (T, Tensor[T]), parameter: Tensor[T], config: Table, state: Table = null): (Tensor[T], Array[T])

    Optimize the model parameter

    Optimize the model parameter

    feval

    a function that takes a single input (X), the point of a evaluation, and returns f(X) and df/dX

    parameter

    the initial point

    config

    a table with configuration parameters for the optimizer

    state

    a table describing the state of the optimizer; after each call the state is modified

    returns

    the new x vector and the function list, evaluated before the update

    Definition Classes
    OptimMethod
    Annotations
    @deprecated
    Deprecated

    (Since version 0.2.0) Please initialize OptimMethod with parameters when creating it instead of importing table

  4. def updateHyperParameter(config: Table, state: Table): Unit

    Update hyper parameter.

    Update hyper parameter. We have updated hyper parameter in method optimize(). But in DistriOptimizer, the method optimize() is only called on the executor side, the driver's hyper parameter is unchanged. So this method is using to update hyper parameter on the driver side.

    config

    config table.

    state

    state Table.

    returns

    A string.

    Definition Classes
    OptimMethod
    Annotations
    @deprecated
    Deprecated

    (Since version 0.2.0) Please use updateHyperParameter() instead

Inherited from OptimMethod[T]

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped