DecisionTreeClassifier决策树

概括
决策树(Decision tree)是一种非参数的有监督学习方法,它能够从一系列有特征的和标签的数据中总结出决策规则,并以树状图的结构来呈现这些规则,以解决分类和回归问题。

from sklearn.tree import DecisionTreeClassifier

重要参数

名称 注解 描述
criterion 衡量不纯度的指标 默认基尼系数(‘gini’)。或输入‘entropy’使用信息增益
splitter 每个节点分枝策略 默认使用最佳分枝(best)。或输入‘random’使用最佳随机分枝
max_depth 数的最大深度 整数或None。如果是None,树会持续生长到所有叶子结点的不纯度为0,或者生长到每个叶子节点所含样本量不超过参数min_samples_split中输入的数字
min_samples_split 节点分枝所需的最小样本量 一个节点的样本量小于填写的数字,节点就不会分枝,故而成为了叶子节点
min_samples_leaf 叶子节点存在所需的最小样本量 一个节点分枝后必须包含最小的样本量,否则分枝就不会发生
max_features 分枝时考虑的特征个数 每一次分枝都考虑max_features个特征
random_state 随机数种子 整数或None
class_weigh 标签持有的权重 默认‘None’。或输入‘balanced’

分枝原理

分枝的不纯度用gini系数或信息熵来衡量,每次分枝时,对所有特征计算不纯度,选取不纯度最低的特征进行分枝,再对分枝剩下的样本计算不纯度,继续选取不纯度最低的特征,以此往复。直至没有特征可用,或整体的不纯度达到最优,树就会停止生长。

计算公式
1)输入”entropy“,使用信息熵(Entropy)
2)输入”gini“,使用基尼系数(Gini Impurity)
在这里插入图片描述

简单建模

clf=DecisionTreeClassifier()
clf=clf.fit(x_train,y_train)
result=clf.score(x_test,y_test)

属性和接口

属性 注解
feature_importances 特征重要性
n_features_ 训练模型(fit)使用的特征个数
n_outputs_ 训练模型(fit)输出结果的个数
接口 注解
predict 返回模型预测的测试样本的标签或回归值

你可能感兴趣的:(决策树,机器学习,人工智能)