DecisionTree

pyspark.mllib.tree。 DecisionTree

学习算法分类决策树模型或回归。

方法

trainClassifier(数据、numClasses…[…])

训练分类的决策树模型。

trainRegressor(数据、categoricalFeaturesInfo)

决策树模型回归训练。

方法的文档

classmethod trainClassifier ( 数据:pyspark.rdd.RDD(pyspark.mllib.regression.LabeledPoint],numClasses:int,categoricalFeaturesInfo:Dict(int,int],杂质:str=“基尼”,maxDepth:int=5,maxBins:int=32,minInstancesPerNode:int=1,minInfoGain:浮动=0.0 )pyspark.mllib.tree.DecisionTreeModel

训练分类的决策树模型。

参数
数据 pyspark.RDD

训练数据:LabeledPoint抽样。标签应该值{0,1,…,numClasses-1}。

numClasses int

类的数量分类。

categoricalFeaturesInfo dict

地图存储参数数量分类的功能。一个条目(n - > k)表明功能n k类别索引从0直言:{0,1,…,k - 1}。

杂质 str,可选

用于信息增益的计算标准。支持的价值观:“基尼”或“熵”。(默认:“基尼”)

maxDepth int,可选

树的最大深度(例如深度0意味着1叶节点,深度1意味着1 + 2叶节点内部节点)。(默认值:5)

maxBins int,可选

使用的箱子数量在每个节点寻找分裂。(默认值:32)

minInstancesPerNode int,可选

最小数量的实例需要创建父在子节点分裂。(默认值:1)

minInfoGain 浮动,可选

创建一个分裂所需最小信息增益。(默认值:0.0)

返回
DecisionTreeModel

例子

> > >numpy进口数组> > >pyspark.mllib.regression进口LabeledPoint> > >pyspark.mllib.tree进口DecisionTree> > >> > >数据=(LabeledPoint(0.0,(0.0]),LabeledPoint(1.0,(1.0]),LabeledPoint(1.0,(2.0]),LabeledPoint(1.0,(3.0])]> > >模型=DecisionTreetrainClassifier(sc并行化(数据),2,{})> > >打印(模型)DecisionTreeModel 1与3节点分类器的深度
> > >打印(模型toDebugString())DecisionTreeModel 1与3节点分类器的深度如果(功能0 < = 0.5)预测:0.0其他(功能0 > 0.5)预测:1.0> > >模型预测(数组([1.0)))1.0> > >模型预测(数组([0.0)))0.0> > >抽样=sc并行化([[1.0),(0.0]])> > >模型预测(抽样)收集()[1.0,0.0]
classmethod trainRegressor ( 数据:pyspark.rdd.RDD(pyspark.mllib.regression.LabeledPoint],categoricalFeaturesInfo:Dict(int,int],杂质:str=“方差”,maxDepth:int=5,maxBins:int=32,minInstancesPerNode:int=1,minInfoGain:浮动=0.0 )pyspark.mllib.tree.DecisionTreeModel

决策树模型回归训练。

参数
数据 pyspark.RDD

训练数据:LabeledPoint抽样。标签是实数。

categoricalFeaturesInfo dict

地图存储参数数量分类的功能。一个条目(n - > k)表明功能n k类别索引从0直言:{0,1,…,k - 1}。

杂质 str,可选

用于信息增益的计算标准。仅支持的价值回归“方差”。(默认:“方差”)

maxDepth int,可选

树的最大深度(例如深度0意味着1叶节点,深度1意味着1 + 2叶节点内部节点)。(默认值:5)

maxBins int,可选

使用的箱子数量在每个节点寻找分裂。(默认值:32)

minInstancesPerNode int,可选

最小数量的实例需要创建父在子节点分裂。(默认值:1)

minInfoGain 浮动,可选

创建一个分裂所需最小信息增益。(默认值:0.0)

返回
DecisionTreeModel

例子

> > >pyspark.mllib.regression进口LabeledPoint> > >pyspark.mllib.tree进口DecisionTree> > >pyspark.mllib.linalg进口SparseVector> > >> > >sparse_data=(LabeledPoint(0.0,SparseVector(2,{0:0.0})),LabeledPoint(1.0,SparseVector(2,{1:1.0})),LabeledPoint(0.0,SparseVector(2,{0:0.0})),LabeledPoint(1.0,SparseVector(2,{1:2.0}))]> > >> > >模型=DecisionTreetrainRegressor(sc并行化(sparse_data),{})> > >模型预测(SparseVector(2,{1:1.0}))1.0> > >模型预测(SparseVector(2,{1:0.0}))0.0> > >抽样=sc并行化([[0.0,1.0),(0.0,0.0]])> > >模型预测(抽样)收集()[1.0,0.0]