本文将在结尾部分介绍决策树算法的基础知识。如果您对本专栏感兴趣,请订阅。在机器学习领域,已知输入变量为连续变量的预测问题称为“回归问题”,而输入变量为离散变量的问题则被称为“分类问题”。本文将介绍一种结合分类与回归功能的新机器学习算法——决策树算法。这种算法因其结构类似于树状结构,因此得名决策树。
决策树不仅是一种分类工具,还能表示给定特征条件下各类别的条件概率分布。这种概率分布是在特征空间的划分基础上建立的。特征空间被分割成多个互不相交的单元或区域,每个单元定义了一个特定类别的概率分布,从而形成了一个条件概率分布。决策树的每条路径对应于这些单元之一。决策树所表示的条件概率分布由每个单元内各类别的条件概率分布组成。假设X是表示特征的随机变量,Y是表示类别的随机变量,那么条件概率分布可以表示为P(Y|X)。X取值于特征空间的划分单元集合,Y取值于各类别的集合。每个叶节点上的条件概率倾向于某个特定类别,即属于某一类别的概率较高。在分类过程中,该节点的所有实例会被分配到条件概率最大的那个类别。
决策树算法是一种自上而下的分类方法,它通过树形结构对样本数据进行分类。树形结构由节点和有向边组成,节点分为外部节点和叶节点。每个外部节点代表一个特征和属性,叶节点代表类别。从根节点开始,所有样本聚集在一起,通过根节点的划分,样本被分配到不同的子节点。然后继续对子节点进行进一步的划分,直至每个节点内的所有样本都属于同一类别。
决策树的概念类似于数据结构中的二叉树,但在二叉树中,每个非叶节点都有一个条件,满足条件的样本被分配到左边,不满足条件的样本被分配到右边。决策树算法更为复杂,每个非叶节点都有一个基于样本特征的决策条件,满足条件的样本被分配到左边,不满足条件的样本被分配到右边。接下来,我们将通过几个例子来直观地了解决策树的工作原理。
现在有一个数据集包含五个人,我们可以将其视为五个样本,每个样本有两个特征:年龄和性别。我们的目标是通过构建一个决策树来判断这些人中谁喜欢踢足球。决策条件是年龄小于15岁的男性。通过这样的决策树,我们可以确定只有年龄小于15岁且为男性的个体才喜欢踢足球。这是决策树的一个分类示例。
另一个例子是关于在不同天气条件下是否应该进行户外活动。数据集中有9个样本表示玩球,5个样本表示不玩球。我们利用决策树算法来学习在何种天气条件下应进行户外活动。首先,我们查看根节点,发现有两类样本:玩球的和不玩球的。第一个决策条件是天气,它可以是晴天、阴天或雨天。以晴天为例,发现其中有2人玩球,3人不玩球。接着,我们引入湿度作为第二个决策条件,设置阈值为70,湿度低于70的人玩球,高于70的人不玩球。这样,玩球和不玩球的样本就被完全区分开来了。最终,我们得到了一个完整的决策树。
决策树由节点和有向边组成,节点分为外部节点和叶节点,分别表示特征和类别。决策树的核心思想是寻找最优特征并对其进行最佳划分,然后重复上述步骤。决策树通过一系列特征的逐步筛选来进行分类,而线性回归和逻辑回归则是基于所有特征的权重进行综合计算。接下来的课程中,我们将详细介绍如何选择特征、构建树结构以及进行剪枝操作,从而生成高效的决策树模型。