ID3
熵:代表空间中的混乱程度 熵越大数据越杂 越小越规整
信息增益划分 默认:找分类多的列
不同的分类越多信息增益越大
分类越多 信息增益越大
信息熵:
负该类别占比 * 其对数形式
条件熵:
条件熵 = A分类占比 * A分类的熵 + B分类占比 * B分类的熵 + C..D....
ID3构建过程
1、信息熵 = 各类别熵和
2、条件熵 = 各分类占比*各分类熵值 累加和
3、信息增益 = 信息熵 - 条件熵
谁的信息增益大 谁当作根节点 然后再往下分
C4.5
解决ID3的弊端
熵 = 各类别熵的和
信息增益 = ID3
特征熵(惩罚系数) 分类越多(系数越大) 最终增益率越小
信息增益率 = C4.5
CART
CART-分类
基尼值 = 各个分类概率的平方和
概念:从数据集中随机抽取两个样本
不一样的概率如:一个箱子中有5个 红色的球 3个蓝色的 2个绿色的
红 : 占0.5% 0.5²
蓝: 占0.3% 0.3²
绿: 占0.2% 0.2²
构建流程:
特征列的分类占比 基尼值: 2类 2情况
1- square(x_count/x_all) + ... = 结果1
1- square(x_count/x_all) + ... = 结果2
特征列的基尼值: 3类 2情况
该特征列各分类占比*各分类的基尼值累加和
x_count/x_all *上述计算结果1 + x_count/x_all *上述计算结果2 ...
谁基尼值最小 谁做分类
决策树 剪枝
剪枝:防止决策树过拟合的一种正则化方法
预剪枝
会错过 性能好的节点
边生成边剪枝 自上到下 划分 若划分不能带来决策树泛化性能提升,则停止划分,将当前节点标记为叶子节点
后剪枝
生成完后 自底向上 进行剪枝 若可以提升泛化 则将当前节点标记为叶子节点