1. 简单介绍决策树原理?
决策树是一种树结构,决策树可以解决回归和分类问题。从根节点出发,每个分支根据特征将训练数据划分成了互不相交的子集。
在预测过程中,一个测试数据会依据已经训练好的决策树到达某一叶子节点,该叶子节点即为回归或分类问题的预测结果。
2. 决策树学习算法的过程
特征选择、决策树的生成和决策树的剪枝过程。
3. 决策树长到什么时候?
(1)当前节点的数据集属于同一类;
(2)属性值为空,或者所有样本的所有属性取值相同。
4. ID3算法
首先要在根节点处计算各个特征对当前样本的信息增益。信息增益就是当前节点样本的熵减去特征对样本的条件熵,表征的是知道该特征后,样本的不确定减小的程度。
然后,选择信息增益最大的特征进行划分,依据所选特征的取值将样本分为若干个非空子集,将子集中实例数最大的类作为标记,构建子节点。
对子节点递归地重复以上的划分步骤。直到所有特征的信息增益均很小或没有特征可以选择为止。
缺点:信息增益偏向于取值较多的特征。
5. C4.5算法
选择特征时不再用信息增益,而是信息增益比。
信息增益比定义为,其特征增益与数据集关于该特征的取值的熵之比
相当于给取值多的特征加了一个惩罚
6. CART
分类与回归树,是二叉树
分类:根据基尼指数来选择最优特征,同时决定该特征的最优二值切分点。具体而言,就是计算每个特征及它们所有可能取值的基尼指数,选择基尼指数最小的那个特征和取值作为最优特征和最优的切分点。
回归:用平方误差最小化的准则来构建二叉决策树。一棵回归树对应着特征空间的一个划分以及在划分的单元上的输出值。
我们的目标就是寻找最优的划分,是的输出的平方误差最小化。
对特征空间进行划分的基本过程是,每次固定一个特征j,可以找到最优的分切点s,遍历所有输入特征,找到最优的特征j和切分点s,小于切分点的分为左子树,大于切分点的分为右子树。
6. 决策树与条件概率分布的关系?
决策树可以表示给定特征条件下类的条件概率分布。
将特征空间划分为互不相交的单元,并在每个单元上定义一个类的概率分布就构成了一个条件概率分布。决策树的一条路径或者每个叶节点对应划分中的一个单元。
每个叶节点上的条件概率分布往往偏向某一个类,即属于某一个类的概率比较大。决策树分类时将该节点的实例分到条件概率大的那一类去。
说法二:决策树中的每一条路径对应的都是划分的一个条件概率分布. 每一个叶子节点都是通过多个条件之后的划分空间,在叶子节点中计算每个类的条件概率,必然会倾向于某一个类,即这个类的概率最大。
7. 如何防止过拟合?
预剪枝:在每一次实际对结点进行进一步划分之前,先采用验证集的数据来验证划分能否提高准确性。如果不能,就把结点标记为叶结点不再进一步划分;如果可以就继续递归生成节点。
后剪枝:后剪枝则是先生成一颗完整的决策树,然后自底向上地对非叶结点进行考察,若将该结点对应的子树替换为叶结点能带来泛化性能提升,则将该子树替换为叶结点。
8. 树形结构为什么不需要归一化?
因为数值缩放不影响分裂点位置,对树模型的结构不造成影响。