作者:禅与计算机程序设计艺术
1.背景介绍
一、决策树模型简介
决策树(decision tree)是一个机器学习中的分类、回归方法。它利用分支条件来进行数据划分,基于样本特征构建一系列的逻辑规则并递归地将这些规则应用到下一层直到整颗树构造完成。决策树具有简单、易理解、易处理、扩展性强等特点。
决策树可用于分类和回归任务,在分类问题中,目标变量离散;而在回归问题中,目标变量可以连续。它的优点包括:
- 直观:决策树可视化便于理解,通过对树的结构进行分析可以很好地刻画出数据的内在含义。
- 容易理解和解释:决策树非常容易理解,因为它由上至下、从左到右依次生成若干个条件测试,最终结果即所得的决策规则。
- 模型可解释性好:决策树是一个白盒模型,对于某一个样本,只需要知道其特征值,就可以根据决策树给出的结论进行预测,这种解释能力使得决策树很适合做强大的基分类器。
- 对缺失数据敏感:决策树能够处理缺失的数据,而且不用删除该条数据或者填补缺失值。
二、决策树的剪枝方法
决策树的剪枝(pruning)是指对已经生成的树进行进一步优化,以减小模型的复杂度和过拟合。所谓剪枝,就是指从已生成的树中去掉一些叶子结点,或者合并一些叶子结点,以达到减小模型误差同时提高模型精确度的目的。
决策树的剪枝方法主要有三种:
(1)预剪枝(Pre-pruning)
在决策树的生成过程中,按照一定的规则停止生成,然后利用剪枝