决策树--CART分类树

1、介绍

(1)简介

CART(Classification and Regression Trees)分类树是一种基于决策树的机器学习算法,用于解

决分类问题。它通过构建树状的决策规则来对数据进行分类。

(2)生成过程

① 选择一个特征和相应的切分点,将数据集分为两个子集。

② 对每个子集递归地重复步骤1,直到满足停止条件。

③ 当达到停止条件时,叶节点表示最终的分类结果。

(3)示意图

(4)特点:节点不仅包含特征,还要有特征属性。

​

2、如何构建树?

(1)特征选择方式--基尼系数最小

① 原始定义​

② 特殊:二分类问题

​

③ 对给定的样本集合​

④ 一般求法​

⑤ 例题:根据表1 所给训练数据集,应用CART算法生成决策树。

(2) 树的深度如何决定

①给定深度,达到了预定的树的深度。

② 子集中的样本数量小于某个阈值。

③ 或者子集中的样本属于同一类别。

(3)叶子节点的代表值--表示最终的分类结果

3、分类决策树和CART分类树的区别

(1)分类准则

① CART分类树使用基尼系数(Gini index)或基于基尼系数的指标(如GINI gain)作为划分准

则,以最大化数据集的纯度。

② 分类决策树常使用信息增益(Information Gain)或基于信息增益的指标(如信息增益比)作为

划分准则,以最大化数据集的信息增益。

(2)多叉树 vs. 二叉树

① CART分类树是二叉树,每个非叶节点只有两个分支,分别对应划分特征的两个取值。

② 分类决策树可以是多叉树,每个非叶节点可以有多个分支,对应于划分特征的多个取值。

相关推荐
NEFU_Jyj2 小时前
牛客周赛R168
算法
电科_银尘4 小时前
【深度学习项目实战·15】小样本图像分类:迁移学习识别蚂蚁与蜜蜂
深度学习·分类·迁移学习
Navigator_Z9 小时前
LeetCode //C - 1317. Convert Integer to the Sum of Two No-Zero Integers
c语言·算法·leetcode
D e re k ZH10 小时前
C++ 标准库算法全景指南
数据结构·c++·算法
冻柠檬飞冰走茶11 小时前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划
雪落漂泊11 小时前
C++算法 二分查找篇(上)
开发语言·c++·算法
LabVIEW开发13 小时前
LabVIEW 连接板:28 个端子怎么排,优先级怎么定
java·算法·labview
严肃小白兔14 小时前
MATLAB 数值计算中的精度与误差问题:浮点运算、误差传播与数值稳定性
人工智能·算法·matlab
青少儿编程课堂15 小时前
蓝桥杯青少组图形化省考报名倒计时·全国青少年信息素养大赛·电子学会图形化考级:校园黑白棋人机对战解析
c++·python·算法·bfs·信息学竞赛