(五)决策树剪枝
剪枝分为”预剪枝(prepruning)”和”后剪枝(postpruning)”两种. 预剪枝是指在决策树构建过程中, 对每个节点在划分前先进行估计, 若不能带来决策树泛化性能提升, 就停止划分, 并将当前结点标记为叶结点. 后剪枝则是先构成一颗完整的决策树, 再考察非叶结点. 若该结点对应的子树替换为叶结点能带来决策树泛化性能提升, 则将该字数替换为叶结点.(机器学习,周志华)。决策时剪枝可以减少过拟合,。
剪枝的具体操作就是,将数据集分为“训练集”和“测试集“,用训练集来生成决策树,用测试集的准确率,来测试每一个分支是否可以剪掉,剪掉后测试集的准确率上升,可以剪掉,反之剪掉后测试集的准确率下降,不可以剪掉。
用下面的情形来说明,”预剪枝“和”后剪枝“的区别。
假设有一个判断西瓜”好“和”坏“的数据集,标签是”好“或”坏“,特征有”脐部”、“色泽”、“纹理”、“触感”、“敲声”。一下数据集只是为了展示,随手编的,不必追求细节。
训练集(展示5条用于示例):
| 编号 | 脐部 | 色泽 | 纹理 | 触感 | 敲声 | label |
|---|---|---|---|---|---|---|
| 1 | 凹陷 | 青绿 | 清晰 | 硬滑 | 混响 | 好瓜 |
| 2 | 凹陷 | 乌黑 | 模糊 | 硬滑 | 沉闷 | 好瓜 |
| 3 | 平坦 | 青绿 | 模糊 | 软粘 |

最低0.47元/天 解锁文章





