机器学习面试005—决策树

1. 请问(决策树、随机森林,Boosting、Adaboot)GBDT和XGBoost的区别是什么?

Ans:①首先,随机森林是一个包含多个决策树的分类器;AdaBoost——即Adaptive Boosting(自适应增强),经典的AdaBoost算法只能处理采用指数损失函数的二分类学习任务,对异常点outlier比较敏感;GBDT指梯度上升决策树算法,相当于融合决策树和梯度上升的Boosting算法。
②xgboost类似gbdt的优化版,在精度和效率上都有了提升,具体优点包括:1.损失函数是用泰勒展开式二项逼近,而非gbdt的一阶导数;2.对树的结构进行了正则化约束,防止模型过度复杂,降低过拟合的可能性;3.节点分裂的方式不同,gbdt用的gini系数,xgboost是经过优化推导后的。

2. 为什么梯度提升方法倾向选择决策树 (通常是CART树) 作为基学习器?

Ans:这与决策树自身的优点有关系:①决策树可以认为是if-then规则集合,易于理解,可解释性强,预测速度快。②相对于其他算法更少的特征工程,如可以不用做特征标准化,可处理缺失值,不用关心特征之间是否相互依赖。③决策树能自动组合多个特征,轻松处理特征之间的交互关系,并且是非参数化的,不必担心异常值或是否线性可分。

3. 在GBDT中,如何抑制单棵决策树的过拟合问题?

Ans:剪枝、限制树的最大深度,限制叶子节点的最少样本数量、限制几点分裂时的最少样本数量,吸收bagging思想对训练样本采样、在学习单棵决策树时只使用一部分样本、借鉴随机森林的思路在学习时只采样一部分特征、在目标函数中添加正则项。

4. 为什么xgboost要用泰勒展开,优势在哪里?

Ans:xgboost使用了一阶和二阶偏导,二阶导数有利于梯度下降的更快更准,使用泰勒展开取得二阶导数形式,可以再不选定损失函数具体形式的情况下,用于算法优化分析。本质上把损失函数的选取和模型算法优化/参数选择分开了,这种去耦合增加了xgboost的适用性。

5. Xgboost如何寻找最优特征?是有放回的,还是无放回的?

Ans:xgboost在训练的过程中,给出各个特征的评分,以表明每个特征对模型训练的重要性。xgboost利用梯度优化模型算法,样本是不放回的。但xgboost支持子采样——即每轮计算可以不使用全部样本。

6. ID3和C4.5有什么区别?

Ans:①ID3采用信息熵的增益作为切分依据,倾向于选取特征值较多的属性进行划分;C4.5采用信息熵的增益比作为切分依据,对较少特征数目的属性有所偏好。

7.请谈一谈决策树剪枝有哪些方法?

Ans:剪枝的作用是为了防止决策树过拟合,有两种思路:预剪枝(Pre-Pruning)后剪枝(Post-Pruning)
①预剪枝——指在构造决策树的同时进行剪枝。在创建分支的过程中,为了避免过拟合,可以设定一个阈值,熵减少小于阈值时,则停止继续创建分支。实际效果并不好
②后剪枝——指在决策树构建完成之后回溯,进行剪枝。对拥有相同父节点的一组节点进行检查,判断如果将其合并,熵增加量是否小于某一阈值?是,则合并为一个节点,其中包含了所有可能的结果。后剪枝是删除一些子树,然后用叶子节点代替。此叶子节点的类别通过多数原则确定——用子树中大多数训练样本所属的类别来标识。算法包括Reduced-Error Pruning、Pessimistic Error Pruning(悲观剪枝)
③预剪枝可能产生欠拟合的风险,后剪枝由于需要先生成完整的树,再自底向上进行剪枝,因此花费的时间要久的多。

8. 决策树怎么处理连续值和缺失值?

Ans:①连续值处理——采用连续属性离散化技术,最简答的方法是采用二分法进行处理(C4.5采用的机制)。对特征值进行升序排序,取两个特征值之间的中点作为可能的分裂点,以此离散化。
缺失值处理——包含两个待解决的问题:1. 如何在属性值缺失的情况下,进行划分属性的选择?显然,仅课根据在各属性上没有缺失值的样本来选择。2.给定划分属性,若样本在该属性上的值缺失,如何对样本进行划分?若样本x在属性A上的取值已知,则将x划入与其取值对应的子节点,且样本权重在子节点中保持为Wx;若样本x在属性A上取值未知,则将x划入所有子节点,且样本权重与属性值Av对应的子节点中,调整为Rv*Wx。直观上,就是让同一个样本以不同的概率划入到不同的子节点去。

9. Adaboost的集成效果为什么会比单个学习器效果好?怎么最大化其优势?

Ans:①首先介绍一下boost的理论依据。假设单个学习器的错误率为:

image
image

假设错误率相互独立,由Hoeffding不等式可以得到整体学习器的错误率:

image
image

由不等式右边可知:如果学习器的数目T逐渐增大,那么整个学习器的错误率将指数级下降,甚至最终趋向于0
最大化优势的核心在于:如何生成准确性又不是很差,并能保证多样性的个体学习器?(保证错误率假设成立)。两种方式:Boosting——个体学习器间存在强依赖关系,必须串行生成;Bagging——个体之间不存在强依赖关系,并行生成(如 随机森林)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容