机器学习模型—决策树
决策树是最强大和最流行的算法之一。Python 决策树算法属于监督学习算法的范畴。它适用于连续输出变量和分类输出变量也就是可以处理分类和回归任务。在本文中,我们将在 UCI 上提供平衡秤体重和距离数据库上用 Python 算法实现决策树。
决策树算法,是模拟人们做决策时的方式抽象出来的一种思想。这种思想认为,基于我们掌握的各方面信息,对决策空间进行一定的划分,一块空间内的样本就属于一个特定的类别。
决策树的背景
假设我要买一部手机,只考虑手机的两个方面:颜色和价格。我的心路历程是这样的:首先要看颜色,不是粉色的我不喜欢,不买;然后看价格,本人价格敏感,太贵的不买。这个解决方案可以用一个流程图来描述。
这个流程图实际上是一个以方框和圆圈为节点、连接它们的直线为边的一个有向图。具体来说,就是一个树。方形就是我要判断的一个指标;有向边就是一个指标的取值;沿着有向边走到树的末端,就到了叶子节点——叶子节点就是我最终的决定。来一个手机,我按这个树描述的规则,进行判断,就可以知道我能不能买。
这就是一个决策树。为什么要费劲把一个决策过程做成一个树状结构呢?为了让决策过程明确化,进而允许我们用程序来表示和执行。是的,决策树模型就是这么简单,到这里就构建完成了。
树形结构,也就是一个有向图。有向图里有两种节点:决策节点和叶结点
决策节点里存储了决策条件(决策条件实际上就是特