在建立决策树时,需要平衡“准确度和复杂度”。

  • Why we need this 'bias-variance tradeoff'/ Why we need pruning(剪枝)?

用#splits(分枝数量)来体现树的复杂度,树越大越复杂,对training set的准确度也越高。

如果不顾一切地让树增大,会导致overfitting/over learning(对训练集表现得好,but for future data, it may perform badly)。

  • What is cp used for?

The main role of this parameter is to save computing time by pruning off splits that are obviously not worthwhile.

cp(complexity parameter) is used to 'control this bias-variance tradeoff'. A prefect cp leads to a perfect balance.

cp is used to judge whether a split is allowed/whether to prune.

  • What is cp?

Any split that does not decrease the overall lack of fit by a factor of cp is not attempted. For instance, with anova splitting, this means that the overall R-squared must increase by cp at each step.

Essentially,the user informs the program that any split which does not improve the fit by cp will likely be pruned off by cross-validation, and that hence the program need not pursue it.

当增加一个节点引起的分类精确度变化量小于树复杂度变化的cp倍时,则须剪去该节点。

如何度量树的精确度变化?对训练集做10-fold交叉验证(cross validation)。(在rpart.control函数中的参数xval(number of cross-validations)默认值为10)

Therefore if we set this parameter small, we can get a big tree.

R语言_决策树rpart中的cp值相关推荐

  1. R语言使用party包中的ctree函数构建条件推理决策树的流程和步骤、条件推理决策树是传统决策树的一个重要变体、条件推理树的分裂是基于显著性测试而不是熵/纯度/同质性度量来选择分裂

    R语言使用party包中的ctree函数构建条件推理决策树的流程和步骤(Conditional inference trees).条件推理决策树是传统决策树的一个重要变体.条件推理树的分裂是基于显著性 ...

  2. R语言使用party包中的ctree函数构建条件推理决策树(Conditional inference trees)、使用plot函数可视化训练好的条件推理决策树、条件推理决策树的叶子节点的阴影区域表

    R语言使用party包中的ctree函数构建条件推理决策树(Conditional inference trees).使用plot函数可视化训练好的条件推理决策树.条件推理决策树的叶子节点的阴影区域表 ...

  3. R语言CART决策树、随机森林、chaid树预测母婴电商平台用户寿命、流失可视化

    全文链接:http://tecdat.cn/?p=31644 借着二胎政策的开放与家庭消费升级的东风,母婴市场迎来了生机盎然的春天,尤其是母婴电商行业,近年来发展迅猛(点击文末"阅读原文&q ...

  4. 二元置信椭圆r语言_医学统计与R语言:圆形树状图(circular dendrogram)

    微信公众号:医学统计与R语言如果你觉得对你有帮助,欢迎转发 输入1: "ggraph") 结果1: name 输入2: <- graph_from_data_frame(my ...

  5. 二元置信椭圆r语言_医学统计与R语言:多分类logistic回归HosmerLemeshow拟合优度检验...

    微信公众号:医学统计与R语言如果你觉得对你有帮助,欢迎转发 输入1:multinominal logistic regression "nnet") 结果1: test (mult ...

  6. 二元置信椭圆r语言_医学统计与R语言:画一个姑娘陪着我,再画个花边的被窝...

    微信公众号:医学统计与R语言如果你觉得对你有帮助,欢迎转发 输入1: "waffle") 结果1: 1] 输入2: library(ggpubr)a <- waffle(c( ...

  7. R语言使用caret包中的createFolds函数对机器学习数据集进行交叉验证抽样、返回的样本列表长度为k个

    R语言使用caret包中的createFolds函数对机器学习数据集进行交叉验证抽样.返回的样本列表长度为k个 目录

  8. R语言使用caret包中的createMultiFolds函数对机器学习数据集进行交叉验证抽样、返回的样本列表长度为k×times个、times为组内抽样次数

    R语言使用caret包中的createMultiFolds函数对机器学习数据集进行交叉验证抽样.返回的样本列表长度为k×times个.times为组内抽样次数 目录

  9. R语言使用zoo包中的rollapply函数计算两个时间序列数据列之间的滚动相关性(Rolling correlations)、例如,计算两种商品销售额之间的3个月的滚动相关性

    R语言时间序列数据滚动相关性分析(Rolling correlations).R语言使用zoo包中的rollapply函数计算两个时间序列数据列之间的滚动相关性(Rolling correlation ...

  10. R语言使用treemap包中的treemap函数可视化treemap图:treemap将分层数据显示为一组嵌套矩形、自定义设置treemap图的调色板、自定义设置treemap标题字体的大小

    R语言使用treemap包中的treemap函数可视化treemap图:treemap将分层数据显示为一组嵌套矩形.自定义设置treemap图的调色板.自定义设置treemap标题字体的大小 目录

最新文章

  1. 3篇量子计算里程碑论文同登Nature封面:保真度超99%,达到实用化水平
  2. Python学习第三天--数据类型
  3. FFmpeg音视频入门-使用FFmpeg读取多媒体文件的信息C++代码实现+详解
  4. InnoDB索引原理详解
  5. Vue 教程第一篇——基础概念
  6. ruhr启动mysql数据库_Mysql表类型(存储引擎)的选择
  7. ajax异步加载和cmd,异步传输Ajax(JQ)
  8. html与js二级菜单横排,JavaScript实现横向滑出的多级菜单效果
  9. ppt中流程图旁边怎么添加_辅食中的黑芝麻酱怎么添加呢?
  10. 【网络特效】12 个炫酷背景特效库
  11. c++基础复习(2)
  12. android 虚拟按键挡住布局,Android 虚拟按键遮住了页面内容解决办法
  13. MBA关注:创始人CEO该拿多少工资?
  14. 跨考计算机面试英语自我介绍,2019考研复试面试英语自我介绍范文(2)
  15. 如何更新深度linux系统,深度操作系统 15.4 RC更新详情
  16. b站黑马程序员python基础学习
  17. Xcode 9 下为适配 iPhoneX 导致对 iOS 10 不兼容问题
  18. git版本控制常用命令(精)
  19. Nature 长文:打破AI黑盒的“持久战”
  20. 解决配置ssh免密时的错误:the ECDSA host key for ‘boylenubuntu0‘ differs from the key for the IP address

热门文章

  1. linux 默认ssh端口号,CentOS/Linux 修改默认SSH端口号
  2. 8uFTP连不上阿里云,4步解决8uFTP连不上阿里云问题
  3. 阮一峰ES6笔记总结
  4. spark的安装详细步骤
  5. 基于Springboot的爬虫项目
  6. 前端Docker教程
  7. 人人商城小程序下单付款报错:“服务器暂时无法处理您的请求,请稍后再试”
  8. TX2安装CH341驱动 总结
  9. 进程调度:时间片轮转调度算法
  10. 图像数字水印技术研究及matlab实现,基于MATLAB的数字水印技术研究