当前位置:   article > 正文

Scala语言 + Spark MLLib进行机器学习---线性回归_使用scala语言构建多元线性回归的实例

使用scala语言构建多元线性回归的实例

下面的例子展示了如何加载数据,解析为RDD(译者注:RDD为Spark的弹性数据集);然后利用线性回归+随机梯度下降算法构建一个线性模型,并进行预测,最后计算均方误差(Mean Squared Errors)来对模型进行评估。

 

 

 
  1. import org.apache.spark.mllib.regression.LinearRegressionWithSGD

  2. import org.apache.spark.mllib.regression.LabeledPoint

  3.  
  4. // Load and parse the data

  5. val data = sc.textFile("mllib/data/ridge-data/lpsa.data")

  6. val parsedData = data.map { line =>

  7. val parts = line.split(',')

  8. LabeledPoint(parts(0).toDouble, parts(1).split(' ').map(x => x.toDouble).toArray)

  9. }

  10.  
  11. // Building the model

  12. val numIterations = 20

  13. val model = LinearRegressionWithSGD.train(parsedData, numIterations)

  14.  
  15. // Evaluate model on training examples and compute training error

  16. val valuesAndPreds = parsedData.map { point =>

  17. val prediction = model.predict(point.features)

  18. (point.label, prediction)

  19. }

  20. val MSE = valuesAndPreds.map{ case(v, p) => math.pow((v - p), 2)}.reduce(_ + _)/valuesAndPreds.count

  21. println("training Mean Squared Error = " + MSE)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/爱喝兽奶帝天荒/article/detail/737151
推荐阅读
相关标签
  

闽ICP备14008679号