机器学习实战--决策树

分类决策树

API

class sklearn.tree.DecisionTreeClassifier(criterion=’gini’, splitter=’best’, max_depth=None, min_samples_split=2, min_samples_leaf=1, min_weight_fraction_leaf=0.0, max_features=None, random_state=None, max_leaf_nodes=None, min_impurity_decrease=0.0, min_impurity_split=None, class_weight=None, presort=False)

几个重要的参数:

  • criterion:分类标准:信息熵或者gini系数
  • splitter:取最好的点分隔树或者随机分隔,最好的点是贪心的思想,随机分隔是想获得更好的泛化能力。
  • max_depth:预剪枝,限制树的深度,提高泛化能力
  • max_features:每次随机选择部分节点,而不是全部,再从这部分中选一个进行分隔,提高泛化能力。

代码例子:
对鸢尾花的数据集进行分析:
https://github.com/xiayto/Mechine_learning/blob/master/DecisionTree/DecisionTree.py

回归决策树

API

与分类决策树类似,用CART划分标准,在分类中,CART用的是gini系数,在回归中用的是MSE。

代码样例

https://github.com/xiayto/Mechine_learning/blob/master/DecisionTree/DecisionTreeRegression.py

猜你喜欢

转载自blog.csdn.net/xiayto/article/details/79782830