Class

org.apache.spark.mllib.regression

StreamingLinearRegressionWithSGD

Related Doc: package regression

Permalink

class StreamingLinearRegressionWithSGD extends StreamingLinearAlgorithm[LinearRegressionModel, LinearRegressionWithSGD] with Serializable

Train or predict a linear regression model on streaming data. Training uses Stochastic Gradient Descent to update the model based on each new batch of incoming data from a DStream (see LinearRegressionWithSGD for model equation)

Each batch of data is assumed to be an RDD of LabeledPoints. The number of data points per batch can vary, but the number of features must be constant. An initial weight vector must be provided.

Use a builder pattern to construct a streaming linear regression analysis in an application, like:

val model = new StreamingLinearRegressionWithSGD() .setStepSize(0.5) .setNumIterations(10) .setInitialWeights(Vectors.dense(...)) .trainOn(DStream)

Annotations
@Since( "1.1.0" )
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. StreamingLinearRegressionWithSGD
  2. Serializable
  3. Serializable
  4. StreamingLinearAlgorithm
  5. Logging
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new StreamingLinearRegressionWithSGD()

    Permalink

    Construct a StreamingLinearRegression object with default parameters: {stepSize: 0.1, numIterations: 50, miniBatchFraction: 1.0}.

    Construct a StreamingLinearRegression object with default parameters: {stepSize: 0.1, numIterations: 50, miniBatchFraction: 1.0}. Initial weights must be set before using trainOn or predictOn (see StreamingLinearAlgorithm)

    Annotations
    @Since( "1.1.0" )

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. val algorithm: LinearRegressionWithSGD

    Permalink

    The algorithm to use for updating.

    The algorithm to use for updating.

    Definition Classes
    StreamingLinearRegressionWithSGDStreamingLinearAlgorithm
    Annotations
    @Since( "1.1.0" )
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  11. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  12. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean = false): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  13. def initializeLogIfNecessary(isInterpreter: Boolean): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  14. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  15. def isTraceEnabled(): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  16. def latestModel(): LinearRegressionModel

    Permalink

    Return the latest model.

    Return the latest model.

    Definition Classes
    StreamingLinearAlgorithm
    Annotations
    @Since( "1.1.0" )
  17. def log: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  18. def logDebug(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  19. def logDebug(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  20. def logError(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  21. def logError(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  22. def logInfo(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  23. def logInfo(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  24. def logName: String

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  25. def logTrace(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  26. def logTrace(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  27. def logWarning(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  28. def logWarning(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  29. var model: Option[LinearRegressionModel]

    Permalink

    The model to be updated and used for prediction.

    The model to be updated and used for prediction.

    Attributes
    protected
    Definition Classes
    StreamingLinearRegressionWithSGDStreamingLinearAlgorithm
  30. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  31. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  32. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  33. def predictOn(data: JavaDStream[Vector]): JavaDStream[Double]

    Permalink

    Java-friendly version of predictOn.

    Java-friendly version of predictOn.

    Definition Classes
    StreamingLinearAlgorithm
    Annotations
    @Since( "1.3.0" )
  34. def predictOn(data: DStream[Vector]): DStream[Double]

    Permalink

    Use the model to make predictions on batches of data from a DStream

    Use the model to make predictions on batches of data from a DStream

    data

    DStream containing feature vectors

    returns

    DStream containing predictions

    Definition Classes
    StreamingLinearAlgorithm
    Annotations
    @Since( "1.1.0" )
  35. def predictOnValues[K](data: JavaPairDStream[K, Vector]): JavaPairDStream[K, Double]

    Permalink

    Java-friendly version of predictOnValues.

    Java-friendly version of predictOnValues.

    Definition Classes
    StreamingLinearAlgorithm
    Annotations
    @Since( "1.3.0" )
  36. def predictOnValues[K](data: DStream[(K, Vector)])(implicit arg0: ClassTag[K]): DStream[(K, Double)]

    Permalink

    Use the model to make predictions on the values of a DStream and carry over its keys.

    Use the model to make predictions on the values of a DStream and carry over its keys.

    K

    key type

    data

    DStream containing feature vectors

    returns

    DStream containing the input keys and the predictions as values

    Definition Classes
    StreamingLinearAlgorithm
    Annotations
    @Since( "1.1.0" )
  37. def setConvergenceTol(tolerance: Double): StreamingLinearRegressionWithSGD.this.type

    Permalink

    Set the convergence tolerance.

    Set the convergence tolerance. Default: 0.001.

    Annotations
    @Since( "1.5.0" )
  38. def setInitialWeights(initialWeights: Vector): StreamingLinearRegressionWithSGD.this.type

    Permalink

    Set the initial weights.

    Set the initial weights.

    Annotations
    @Since( "1.1.0" )
  39. def setMiniBatchFraction(miniBatchFraction: Double): StreamingLinearRegressionWithSGD.this.type

    Permalink

    Set the fraction of each batch to use for updates.

    Set the fraction of each batch to use for updates. Default: 1.0.

    Annotations
    @Since( "1.1.0" )
  40. def setNumIterations(numIterations: Int): StreamingLinearRegressionWithSGD.this.type

    Permalink

    Set the number of iterations of gradient descent to run per update.

    Set the number of iterations of gradient descent to run per update. Default: 50.

    Annotations
    @Since( "1.1.0" )
  41. def setRegParam(regParam: Double): StreamingLinearRegressionWithSGD.this.type

    Permalink

    Set the regularization parameter.

    Set the regularization parameter. Default: 0.0.

    Annotations
    @Since( "2.0.0" )
  42. def setStepSize(stepSize: Double): StreamingLinearRegressionWithSGD.this.type

    Permalink

    Set the step size for gradient descent.

    Set the step size for gradient descent. Default: 0.1.

    Annotations
    @Since( "1.1.0" )
  43. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  44. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  45. def trainOn(data: JavaDStream[LabeledPoint]): Unit

    Permalink

    Java-friendly version of trainOn.

    Java-friendly version of trainOn.

    Definition Classes
    StreamingLinearAlgorithm
    Annotations
    @Since( "1.3.0" )
  46. def trainOn(data: DStream[LabeledPoint]): Unit

    Permalink

    Update the model by training on batches of data from a DStream.

    Update the model by training on batches of data from a DStream. This operation registers a DStream for training the model, and updates the model based on every subsequent batch of data from the stream.

    data

    DStream containing labeled data

    Definition Classes
    StreamingLinearAlgorithm
    Annotations
    @Since( "1.1.0" )
  47. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Logging

Inherited from AnyRef

Inherited from Any

Ungrouped