面试核心内容提纲
一、决策树
1.1 原理
决策树是一种基本的分类与回归方法,其模型就是用一棵树来表示我们的整个决策过程。这棵树可以是二叉树(比如CART 只能是二叉树),也可以是多叉树(比如 ID3、C4.5 可以是多叉树或二叉树)。根节点包含整个样本集,每个叶节都对应一个决策结果(注意,不同的叶节点可能对应同一个决策结果),每一个内部节点都对应一次决策过程或者说是一次属性测试。从根节点到每个叶节点的路径对应一个判定测试序列。
举个例子:
就像上面这个例子,训练集由三个特征:outlook(天气),humidity(度),windy(是否有风)。那么我们该如何选择特征对训练集进行划分?连续型特征(比如湿度)划分的阈值又是如何确定的?
决策树的生成就是不断的选择最优的特征对训练集进行划分,是一个递归的过程。递归返回的条件有三种:
- 当前节点包含的样本属于同一类别,无需划分;
- 当前属性集为空,或所有样本在属性集上取值相同,无法划分;
- 当前节点包含样本集合为空,无法划分。
1.2 ID3、C4.5、CART
这三个是非常著名的决策树算法。简单粗暴来说:
- ID3 使用信息增益作为选择特征的准则;
- C4.5 使用信息增益比作为选择特征的准则;
- CART 使用 Gini 指数作为选择特征的准则。
熵(entropy)
在信息论与概率论中,熵用于表示随机变量不确定性的度量。
设X是一个有限状态的离散型随机变量,其概率分布为: