决策树——嵌套决策规则的惊人力量
Source: Hacker News
决策树
嵌套决策规则的强大威力。
作者:Jared Wilber 与 Lucía Santamaría
构建一棵决策树
假设我们是拥有一块新土地的农夫。仅凭树干的 直径 和 高度,我们必须判断它是苹果树、樱桃树还是橡树。为此,我们将使用决策树。
开始划分
几乎所有 直径 ≥ 0.45 的树都是橡树!因此,我们可以假设在该区域内的其他树也大多是橡树。
这个第一个决策节点将作为根节点。我们在该直径处画一条垂直线,将其上方的所有树分类为橡树(第一个叶子节点),并继续对左侧剩余的数据进行划分。
再划分一些
我们继续前进,力求以最有利的方式划分这块土地。在 高度 ≤ 4.88 处创建一个新的决策节点,可得到一片樱桃树的良好区域,于是我们在此划分数据。
决策树相应更新,新增一个樱桃树的叶子节点。
再来一些
经过第二次划分后,剩下的区域中包含许多苹果树和一些樱桃树。没问题:可以再画一条垂直分割线,使苹果树的划分更为准确。
决策树再次相应更新。
仍然还有一些
剩余的区域只需再做一次水平划分,任务就完成了!我们得到了一组最优的嵌套决策。
不过,仍有少数点被误分类。我们是否应该继续划分,将区域进一步细分?
不要划得太深!
如果继续划分,得到的区域会变得越来越复杂,树的深度也会不合理地增加。这样的决策树会过度学习训练样本中的噪声,而缺乏可推广的规则。
这听起来熟悉吗?这正是我们在 偏差‑方差权衡 解释中探讨的著名权衡!在本例中,划得太深会导致树对数据过拟合,所以我们就在此止步。
完成了!我们只需将任何新数据点的高度和直径值输入新构建的决策树,即可将其分类为苹果树、樱桃树或橡树!