本文简要介绍
pyspark.mllib.tree.RandomForest.trainClassifier
的用法。用法:
classmethod trainClassifier(data, numClasses, categoricalFeaturesInfo, numTrees, featureSubsetStrategy='auto', impurity='gini', maxDepth=4, maxBins=32, seed=None)
为二元或多类分类训练随机森林模型。
版本 1.2.0 中的新函数。
- data:
pyspark.RDD
训练数据集:LabeledPoint 的 RDD。标签应采用值 {0, 1, ..., numClasses-1}。
- numClasses:int
分类的类数。
- categoricalFeaturesInfo:dict
Map存储分类特征的数量。条目 (n -> k) 表示特征 n 是分类的,其中 k 个类别从 0 开始索引:{0, 1, ..., k-1}。
- numTrees:int
随机森林中的树数。
- featureSubsetStrategy:str,可选
在每个节点上考虑拆分的特征数。支持的值:“auto”, “all”, “sqrt”、“log2”、“onethird”。如果设置了“auto”,则根据numTrees设置该参数:如果numTrees == 1,设置为“all”;如果 numTrees > 1(森林)设置为 “sqrt”。 (默认:“auto”)
- impurity:str,可选
用于信息增益计算的标准。支持的值:“gini” 或“entropy”。 (默认:“gini”)
- maxDepth:整数,可选
树的最大深度(例如,深度 0 表示 1 个叶节点,深度 1 表示 1 个内部节点 + 2 个叶节点)。 (默认:4)
- maxBins:整数,可选
用于分割要素的最大 bin 数。 (默认值:32)
- seed:整数,可选
用于引导和选择特征子集的随机种子。设置为 None 根据系统时间生成种子。 (默认:无)
- data:
RandomForestModel
可用于预测。
参数:
返回:
例子:
>>> from pyspark.mllib.regression import LabeledPoint >>> from pyspark.mllib.tree import RandomForest >>> >>> data = [ ... LabeledPoint(0.0, [0.0]), ... LabeledPoint(0.0, [1.0]), ... LabeledPoint(1.0, [2.0]), ... LabeledPoint(1.0, [3.0]) ... ] >>> model = RandomForest.trainClassifier(sc.parallelize(data), 2, {}, 3, seed=42) >>> model.numTrees() 3 >>> model.totalNumNodes() 7 >>> print(model) TreeEnsembleModel classifier with 3 trees >>> print(model.toDebugString()) TreeEnsembleModel classifier with 3 trees Tree 0: Predict: 1.0 Tree 1: If (feature 0 <= 1.5) Predict: 0.0 Else (feature 0 > 1.5) Predict: 1.0 Tree 2: If (feature 0 <= 1.5) Predict: 0.0 Else (feature 0 > 1.5) Predict: 1.0 >>> model.predict([2.0]) 1.0 >>> model.predict([0.0]) 0.0 >>> rdd = sc.parallelize([[3.0], [1.0]]) >>> model.predict(rdd).collect() [1.0, 0.0]
相关用法
- Python pyspark RandomForest.trainRegressor用法及代码示例
- Python pyspark RandomForestRegressor用法及代码示例
- Python pyspark RandomForestClassifier用法及代码示例
- Python pyspark RandomRDDs.uniformRDD用法及代码示例
- Python pyspark RandomRDDs.exponentialRDD用法及代码示例
- Python pyspark RandomRDDs.gammaRDD用法及代码示例
- Python pyspark RandomRDDs.normalVectorRDD用法及代码示例
- Python pyspark RandomRDDs.uniformVectorRDD用法及代码示例
- Python pyspark RandomRDDs.exponentialVectorRDD用法及代码示例
- Python pyspark RandomRDDs.poissonVectorRDD用法及代码示例
- Python pyspark RandomRDDs.poissonRDD用法及代码示例
- Python pyspark RandomRDDs.gammaVectorRDD用法及代码示例
- Python pyspark RandomRDDs.logNormalVectorRDD用法及代码示例
- Python pyspark RandomRDDs.normalRDD用法及代码示例
- Python pyspark RandomRDDs.logNormalRDD用法及代码示例
- Python pyspark RankingEvaluator用法及代码示例
- Python pyspark RankingMetrics用法及代码示例
- Python pyspark Rating用法及代码示例
- Python pyspark RDD.saveAsTextFile用法及代码示例
- Python pyspark RDD.keyBy用法及代码示例
- Python pyspark RDD.sumApprox用法及代码示例
- Python pyspark RowMatrix.numCols用法及代码示例
- Python pyspark RowMatrix.computePrincipalComponents用法及代码示例
- Python pyspark RDD.lookup用法及代码示例
- Python pyspark RDD.zipWithIndex用法及代码示例
注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.mllib.tree.RandomForest.trainClassifier。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。