ITPub博客

首页 > 数据库 > SQL on Hadoop > 决策树在大数据集上的局限性

决策树在大数据集上的局限性

SQL on Hadoop 作者:ITPUB社群 时间:1970-01-01 08:33:46 0 删除 编辑

计算效率视角

这是一个组合搜索问题:在每次分裂时,我们希望找到能带来“最佳性价比”的特征(即最大化信息增益)。如果我们选择“暴力”方法,计算复杂度为 O(m^2),其中 m 是训练集中的特征数量;对于 n 个训练样本,复杂度为 O(n^2)(我认为运气好的话可以是 O(n log(n)))。

让我们看一个简单的数据集,Iris(150 朵花,3 个类别,4 个连续特征)。在每次分裂时,我们必须重新评估所有 4 个特征,并且对于每个特征,我们必须找到最佳的分裂值,例如,萼片长度 <3.4 cm(这是针对二元分裂的)。计算复杂度是人们大多数时候实现二叉决策树的原因之一。

预测性能视角

未剪枝的模型由于维度灾难而更可能过拟合。然而,与其剪枝单个决策树,通常更好的想法是使用集成方法。我们可以

  • 组合决策树桩,通过关注难以分类的样本来相互学习(AdaBoost)
  • 创建未剪枝决策树的集成;抽取自助采样,并进行随机特征选择(随机森林)
  • 忘记 bagging,使用所有训练样本作为未剪枝树的输入;同时随机选择分裂特征和分裂值(= 极端随机树)

(相关话题:随机森林模型如何工作?它与集成模型中的 bagging 和 boosting 有何不同?)


转载声明:本文为转载整理,原文版权归原作者及原站点所有。

原文来源:Sebastian Raschka Blog

原创地址:https://sebastianraschka.com/faq/docs/decision-tree-disadvantages.html

原文作者:Sebastian Raschka;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2022-11-21

  • 博文量
    1059
  • 访问量
    546559