决策树(decisiontree)是一个树结构(可以是二叉树或者非二叉树)。决策树分为分类树和回归树两种,分类树对离散变量做决策树,回归树对连续变量做决策树。
其中每个非叶节点表示一个特征属性上的测试,每个分支代表这个特征属性在某个值域上的输出,而每个叶节点存放在一个类别。
使用决策树进行决策的过程就是从根节点开始,测试待分类项中相应的特征属性,并按照其值选择输出分支,直到到达叶子节点,将叶子节点存放的类别作为决策结果。
决策树的组成,分为三个:根节点;非叶子节点与分支;叶子节点。具体意思如下:
根节点:第一个选择点
非叶子节点与分支:中间过程
叶子节点:最终的决策结果
当然我们也发现:一旦构造好了决策树,那么分类或预测任务就很简单了,只需要走一遍即可,但是难点就在于如何构造出来一棵树。构造树需要考虑的问题有很多。
1.决策树学习算法主要由三部分构成
2.特征选择
特征选择是指从训练数据中众多的特征中选择一个特征作为当前节点的分裂标准,如何选择特征有着很多不同量化评估标准,从而衍生出不同的决策树算法。
3.决策树生成
根据选择的特征评估标准,从上至下递归地生成子节点,直到数据集不可分则停止决策树停止生长。树结构来说,递归结构是最容易理解的方式。
4.决策树的剪枝
决策树容易过拟合,一般来需要剪枝,缩小树结构规则,缓解过拟合,剪枝技术有预剪枝和后剪枝两种。
预剪枝:边建立决策树边进行剪枝的操作(更实用),预剪枝需要限制深度,叶子节点个数,叶子节点样本数,信息增益量等。
后剪枝:当建立完决策树后来进行剪枝操作,通过一定的衡量标准(叶子节点越多,损失越大)
以上内容为大家介绍了Python决策树算法思想,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。