Spark 机器学习 —— 从决策树到随机森林

构造训练数据

import org.apache.spark.mllib.linalg.Vectors
import org.apache.spark.mllib.regression.LabeledPoint

val rawdata = sc.textFile("covtype.data")
val data = rawdata.map{ line =>
    val row = line.split('\t').map(_.toDouble)
    val featVec = Vectors.dense(row.init)
    val label = row.last - 1
    LabeledPoint(featVec, label)
}

MLlib 中的决策树模型要求 label 从 0 开始

随机森林

独立 ==> 并行?

在大数据的背景下,随机森林非常有吸引力,因为构成决策树的随机森林通常是独立构造的(这点不同与 AdaBoost),诸如 Spark 和 MapReduce 这样的大数据技术本质上适合数据并行问题。

你可能感兴趣的:(Spark 机器学习 —— 从决策树到随机森林)