org.apache.spark.mllib.regression

StreamingLinearRegressionWithSGD

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" )
Source
StreamingLinearRegressionWithSGD.scala
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
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new StreamingLinearRegressionWithSGD()

    Construct a StreamingLinearRegression object with default parameters: {stepSize: 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: 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. val algorithm: LinearRegressionWithSGD

    The algorithm to use for updating.

    The algorithm to use for updating.

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

    Definition Classes
    Any
  8. def clone(): AnyRef

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

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

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

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

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

    Definition Classes
    AnyRef → Any
  14. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  15. def isTraceEnabled(): Boolean

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

    Return the latest model.

    Return the latest model.

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

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

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

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

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

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

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

    Attributes
    protected
    Definition Classes
    Logging
  24. def logName: String

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

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

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

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

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

    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

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

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

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

    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]

    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]

    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)]

    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

    Set the convergence tolerance.

    Set the convergence tolerance. Default: 0.001.

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

    Set the initial weights.

    Set the initial weights.

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

    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

    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 setStepSize(stepSize: Double): StreamingLinearRegressionWithSGD.this.type

    Set the step size for gradient descent.

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

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

    Definition Classes
    AnyRef
  43. def toString(): String

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

    Java-friendly version of trainOn.

    Java-friendly version of trainOn.

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

    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" )
  46. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Logging

Inherited from AnyRef

Inherited from Any

Ungrouped