选择是我们日常生活中最常见的,比如今天周一了,我是赖床还是准点上班……我们几乎无时不刻面临着选择。有时候面临选择我们可能还会产生选择恐惧症,有时我们又因为选择感到迷茫。如果在以后的生活中想要更好地做出选择,那么建议读完这篇文章,我将用机器学习中的决策树理论,向你展示优化决策的过程。 选择 最开始的问题想象一下这个场景:一起来玩个游戏,现在你在脑海里想到一个动物,我需要猜到你想的是什么动物。我每次会问你一个问题,比如:会不会飞?会不会游泳?……而你所要做的就是根据你想到的动物回答Yes/No。 很显然,我的每次提问都会越来越靠近靠近正确答案,这就是决策树的思想。 在每一个决策点上,都需要思考对于数据集进行区分的问题。我在每次提问之前需要找到最佳区分的问题,然后在下一个决策点,再次找到最佳区分。 决策树算法让我们先来了解一下决策树算法。 决策树是一种监督学习算法,以用于回归和分类问题。适用于分类和连续输入和输出变量。 来看一下西瓜书对于决策树的刻画: 如何通过西瓜的纹理、根蒂、触感和色泽来判断是否是好瓜。 判断好瓜 通过上图我们可以找到关于决策树的一些术语:
决策树是如何工作的?介于本文主题,这里我们只讨论分类树。 让我们来看看决策树构建算法及其所有细节。为了构建决策树,我们需要对数据集做出初步决定,以决定使用哪个特征来分割数据。要确定这一点,我们必须尝试每个分类依据并计算哪个分割会给我们带来最好的结果(使分类效果最明显)。之后,我们将数据集拆分为子集。然后子集将遍历第一个决策节点的分支。如果分支上的数据是同一个类,那么我们已经对它进行了正确的分类,并且不需要继续拆分它。 Yes/No? 如果数据不相同,那么我们需要在该子集上重复拆分过程。关于如何拆分子集的与分割原始数据集的方式相同(递归过程),重复此过程,直到对所有数据进行分类。 那么我们如何判断拆分数据集是否合理呢?这种情况下不能定性分析,需要通过计算得到精确的解。 信息论信息论的创造者——香农是个非常伟大的人物,由他开创了信息时代。这里不详细展开,感兴趣的小伙伴自行搜索。 其中信息论中最重要的概念就是熵。 信息熵公式 熵衡量了预测随机变量的值时涉及到的不确定度的量。例如,指定掷硬币的结果(两个等可能的结果)比指定掷骰子的结果(六个等可能的结果)所提供的信息量更少(熵更少)。 由此,我们可以计算分割前后的信息。分割前后的信息变化称为信息增益。当我们知道如何计算信息增益时,我们可以在每个特征上分割数据,以决策哪种分割提供了最高的信息增益。具有最高信息增益的决策是我们的最佳选择。 决策树的优势以及如何优化?由决策树推导整个过程,让我们能非常直观地了解决策过程。 决策树有它的优势,其中最明显的一点是对于数据是没有缩放处理的。由于每个特征是单独处理的,并且数据的分割不依赖于缩放,因此决策树算法不需要像标准化或特征标准化那样的预处理。特别是,当我们具有完全不同尺度的特征,或者二元和连续特征的混合时,决策树可以很好地工作。 决策树过程 但是,决策树通常不具有与其他方法相同的预测准确度,因为它们不是很稳健。数据的微小变化可能导致最终估计树整体的大幅变化。即使使用预修剪,它们也会过度拟合并提供较差的泛化性能。因此,在大多数应用中,通过聚合许多决策树,使用诸如随机森林和增强决策树等方法,可以显着提高决策树的预测性能。 指导我们生活中的就是:如果你面对问题时产生了选择恐惧症或者看不清未来的方向,不妨坐下来。画个图,把自己的想法和决策点标注清楚,计算对于自己的信息增益(对自己的目标帮助有多大),形成一幅完整的决策树(思维导图),再去做事,或许有拨云见日的效果!!! |
|