Packages

class GradientDescent extends Optimizer with Logging

Class used to solve an optimization problem using Gradient Descent.

Linear Supertypes
Logging, Optimizer, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. GradientDescent
  2. Logging
  3. Optimizer
  4. Serializable
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

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. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  9. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  12. def initializeLogIfNecessary(isInterpreter: Boolean): Unit
    Attributes
    protected
    Definition Classes
    Logging
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. def isTraceEnabled(): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  15. def log: Logger
    Attributes
    protected
    Definition Classes
    Logging
  16. def logDebug(msg: => String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  17. def logDebug(msg: => String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  18. def logError(msg: => String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  19. def logError(msg: => String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  20. def logInfo(msg: => String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  21. def logInfo(msg: => String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  22. def logName: String
    Attributes
    protected
    Definition Classes
    Logging
  23. def logTrace(msg: => String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  24. def logTrace(msg: => String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  25. def logWarning(msg: => String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  26. def logWarning(msg: => String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  27. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  28. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  29. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  30. def optimize(data: RDD[(Double, Vector)], initialWeights: Vector): Vector

    Runs gradient descent on the given training data.

    Runs gradient descent on the given training data.

    data

    training data

    initialWeights

    initial weights

    returns

    solution vector

    Definition Classes
    GradientDescentOptimizer
  31. def optimizeWithLossReturned(data: RDD[(Double, Vector)], initialWeights: Vector): (Vector, Array[Double])

    Runs gradient descent on the given training data.

    Runs gradient descent on the given training data.

    data

    training data

    initialWeights

    initial weights

    returns

    solution vector and loss value in an array

  32. def setConvergenceTol(tolerance: Double): GradientDescent.this.type

    Set the convergence tolerance.

    Set the convergence tolerance. Default 0.001 convergenceTol is a condition which decides iteration termination. The end of iteration is decided based on below logic.

    • If the norm of the new solution vector is greater than 1, the diff of solution vectors is compared to relative tolerance which means normalizing by the norm of the new solution vector.
    • If the norm of the new solution vector is less than or equal to 1, the diff of solution vectors is compared to absolute tolerance which is not normalizing.

    Must be between 0.0 and 1.0 inclusively.

  33. def setGradient(gradient: Gradient): GradientDescent.this.type

    Set the gradient function (of the loss function of one single data example) to be used for SGD.

  34. def setMiniBatchFraction(fraction: Double): GradientDescent.this.type

    Set fraction of data to be used for each SGD iteration.

    Set fraction of data to be used for each SGD iteration. Default 1.0 (corresponding to deterministic/classical gradient descent)

  35. def setNumIterations(iters: Int): GradientDescent.this.type

    Set the number of iterations for SGD.

    Set the number of iterations for SGD. Default 100.

  36. def setRegParam(regParam: Double): GradientDescent.this.type

    Set the regularization parameter.

    Set the regularization parameter. Default 0.0.

  37. def setStepSize(step: Double): GradientDescent.this.type

    Set the initial step size of SGD for the first step.

    Set the initial step size of SGD for the first step. Default 1.0. In subsequent steps, the step size will decrease with stepSize/sqrt(t)

  38. def setUpdater(updater: Updater): GradientDescent.this.type

    Set the updater function to actually perform a gradient step in a given direction.

    Set the updater function to actually perform a gradient step in a given direction. The updater is responsible to perform the update from the regularization term as well, and therefore determines what kind or regularization is used, if any.

  39. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  40. def toString(): String
    Definition Classes
    AnyRef → Any
  41. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  42. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  43. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from Logging

Inherited from Optimizer

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped