面试准备-决策树

tech2023-09-19  89

决策树的基本原理: 决策树是一种自上而下,对样本数据进行树形分类的过程,一棵决策树包含一个根节点内部节点和叶节点。其中每个内部结点表示一个特征或属性,叶结点表示类别。一个困难的预测问题,通过树的分支节点,被划分成两个或多个较为简单的子集,从结构上划分为不同的子问题。将依规则分割数据集的过程不断递归下去(Recursive Partitioning)。决策树作为最常见的监督学习模型,常被用来解决分类和回归问题。 决策树三要素: 特征选择,决策树生成,剪枝 ​ 1、特征选择:从训练数据中众多的特征中选择一个特征作为当前节点的分裂标准,有几种不同的启发函数(ID3, C4.5, CART) ​ 2、决策树生成:根据选择的特征评估标准,从上至下递归地生成子节点,直到数据集不可分则决策树停止生长。(决策树是一种递归的过程,三种情形会导致递归返回:(1)当前节点所包含的样本全属于同一类别,无需划分。(2)当前属性集为空,或是样本在所有属性上取值相同,无法划分(3)当前节点包含的样本集为空) ​ 3、剪枝:决策树容易过拟合,一般来需要剪枝,缩小树结构规模、缓解过拟合。剪枝技术有预剪枝和后剪枝两种。 预剪枝: ( 1 )当树到达一定深度的时候,停止树的生长 ( 2 )当到达当前结点的样本数 小于某个阈值的时候,停止树的生长 ( 3 )计算每次分裂对测试集的准确度提升 当小于某个阈值的时侯不再继续扩展。预剪枝有一定的局限性,有欠拟合的风险。 后剪枝: 让算法生成一棵完全生长的决策树,然后从最底层向上计算是否剪枝。 后剪枝可以得到泛化能力更强的决策树,但时间开销大。 决策树算法的优缺点: 决策树算法的优点: 1、决策树算法易理解,机理解释起来简单。 2、决策树算法可以用于小数据集。 3、决策树算法的时间复杂度较小,为用于训练决策树的数据点的对数。 4、相比于其他算法智能分析一种类型变量,决策树算法可处理数字和数据的类别。 5、能够处理多输出的问题。 6、对缺失值不敏感。 7、可以处理不相关特征数据。 8、效率高,决策树只需要一次构建,反复使用,每一次预测的最大计算次数不超过决策树的深度。 决策树算法的缺点: 1、对连续性的字段比较难预测。 2、容易出现过拟合。 3、当类别太多时,错误可能就会增加的比较快。 4、在处理特征关联性比较强的数据时表现得不是太好。 5、对于各类别样本数量不一致的数据,在决策树当中,信息增益的结果偏向于那些具有更多数值的特征 信息熵 Id3 c45 cart对比 树形结构为什么不需要归一化: 树模型一直想找的是最优切分点,不存在梯度导数等计算,数值缩放不影响分裂点位置,对树模型的结构不造成影响。 既然树形结构(如决策树、RF)不需要归一化,那为何非树形结构比如Adaboost、SVM、LR、Knn、KMeans之类则需要归一化。 对于线性模型,特征值差别很大时,运用梯度下降的时候,损失等高线是椭圆形,需要进行多次迭代才能到达最优点。但是如果进行了归一化,那么等高线就是圆形的,促使SGD往原点迭代,从而导致需要的迭代次数较少。 信息熵: 决策树中很重要的一点就是选择一个属性进行分枝,因此要注意一下信息增益的计算公式,并深入理解它。   信息熵的计算公式如下:    ID3 C45 CART区别与联系: ID3缺点: 存在偏向于选择取值较多的特征问题 连续值不支持 缺失值不支持 无法枝剪 C4.5优点用信息增益比来代替信息增益 主动进行的连续的特征离散化通过对数据 排序之后找到类别不同的分割线作为切分点 根据切分点把连续属性转换为布尔型。从而将连续型变量转换多个取值区间的离散型变量。 CART 分类情况下的变量特征选择 离散变量:二分划分 连续变量:和C4.5一致,如果当前节点为连续属性,则该属性后面依旧可以参与子节点的产生选择过程 回归情况下,连续变量不再采取中间值划分,采用最小方差法。

https://blog.csdn.net/manduner/article/details/90516561

最新回复(0)