Spark MLlib:DecisionTree.trainClassifier 和 DecisionTree.train 之间的区别
Spark MLlib: Difference between DecisionTree.trainClassifier and DecisionTree.train
我看不出 DecisionTree.trainClassifier
和 DecisionTree.train
方法之间的区别。
在 code for DecisionTree
中有一些线索。 train
的评论是:
Method to train a decision tree model.
The method supports binary and multiclass classification and regression.
trainClassifier
的评论是:
Method to train a decision tree model for binary or multiclass classification.
既然想用二分类,我觉得最好用DecisionTree.trainClassifier
的方法。但我想了解其中的差异。
有什么想法吗?
trainClassifier
本质上是 train
的重载,其中算法预设为 Classifier
下面我***了你引用的源代码中预设的Classification
参数
def trainClassifier(
input: RDD[LabeledPoint],
numClasses: Int,
categoricalFeaturesInfo: Map[Int, Int],
impurity: String,
maxDepth: Int,
maxBins: Int): DecisionTreeModel = {
val impurityType = Impurities.fromString(impurity)
train(input, ***Classification***, impurityType, maxDepth, numClasses, maxBins, Sort,
categoricalFeaturesInfo)
}
我看不出 DecisionTree.trainClassifier
和 DecisionTree.train
方法之间的区别。
在 code for DecisionTree
中有一些线索。 train
的评论是:
Method to train a decision tree model. The method supports binary and multiclass classification and regression.
trainClassifier
的评论是:
Method to train a decision tree model for binary or multiclass classification.
既然想用二分类,我觉得最好用DecisionTree.trainClassifier
的方法。但我想了解其中的差异。
有什么想法吗?
trainClassifier
本质上是 train
的重载,其中算法预设为 Classifier
下面我***了你引用的源代码中预设的Classification
参数
def trainClassifier(
input: RDD[LabeledPoint],
numClasses: Int,
categoricalFeaturesInfo: Map[Int, Int],
impurity: String,
maxDepth: Int,
maxBins: Int): DecisionTreeModel = {
val impurityType = Impurities.fromString(impurity)
train(input, ***Classification***, impurityType, maxDepth, numClasses, maxBins, Sort,
categoricalFeaturesInfo)
}