最具影响力的数字化技术在线社区

168大数据

 找回密码
 立即注册

QQ登录

只需一步,快速开始

1 2 3 4 5
打印 上一主题 下一主题
开启左侧

Smartbi数据挖掘示例--交叉验证

[复制链接]
跳转到指定楼层
楼主
发表于 2015-8-4 18:41:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多数据大咖,获取更多知识干货,轻松玩转大数据

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

交叉验证主要用于建模应用中。在给定的建模样本中,拿出大部分样本进行建模型,留小部分样本用刚建立的模型进行预报,并求这小部分样本的预报误差,记录它们的平方加和。这个过程一直进行,直到所有的样本都被预报了一次而且仅被预报一次。把每个样本的预报误差平方加和,称为PRESS(predicted Error Sum of Squares)。


用交叉验证的目的是为了得到可靠稳定的模型。常用的精度测试方法主要是交叉验证,例如10折交叉验证(10-fold cross validation),将数据集分成十份,轮流将其中9份做训练1份做验证,10次的结果的均值作为对算法精度的估计,一般还需要进行多次10折交叉验证求均值,例如:10次10折交叉验证,以求更精确一点。


在前面已经提到,评估模型的质量并不能只看模型预测准确度,还要看模型的稳定性,只有又准确有稳定的模型才是好模型,而模型的稳定性甚至比模型的准确性更重要。而交叉验证法是用于验证模型稳定性的方法,而不是提升模型稳定的方法。接下来,我们通过一个简单的例子介绍一下如何使用交叉验证法评估模型的稳定性。工作流如下:



要实现交叉验证一共需要以下几步:
第一步,读取数据。在这里我们还是使用诊病数据。
第二步,使用X分区节点定义验证的折数,我们指定为10。配置如下:





第三步,连接要测试的模型,此处我们来测试贝叶斯模型。连接如工作流中所示。贝叶斯训练节点和预测节点分别配置如下(大部分时候都不需要配置,使用默认配置即可):




第四步,使用X聚合节点,与X分区节点形成测试的闭环。该节点一般都无需配置,采用默认配置即可。执行后,输出结果如下:


从表中可以看出每次验证的误差,第一列是行ID,第二列表示模型的误判率,第三列表示测试集的记录数,第四列表示误判个数。从表中可以看出模型的误判率基本都在10%~15%之间,模型相对比较稳定。
您还可以使用分类评估节点分析模型的整体准确率。分析结果如下:



从表中可以看出,模型验证的平均准确度为86%。因此可以得出结论,该模型是一个即准确又稳定的模型。

本文源自:http://wiki.smartbi.com.cn/pages/viewpage.action?pageId=13599827



楼主热帖
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 赞 踩

168大数据 - 论坛版权1.本主题所有言论和图片纯属网友个人见解,与本站立场无关
2.本站所有主题由网友自行投稿发布。若为首发或独家,该帖子作者与168大数据享有帖子相关版权。
3.其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和168大数据的同意,并添加本文出处。
4.本站所收集的部分公开资料来源于网络,转载目的在于传递价值及用于交流学习,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
5.任何通过此网页连接而得到的资讯、产品及服务,本站概不负责,亦不负任何法律责任。
6.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源,若标注有误或遗漏而侵犯到任何版权问题,请尽快告知,本站将及时删除。
7.168大数据管理员和版主有权不事先通知发贴者而删除本文。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

关于我们|小黑屋|Archiver|168大数据 ( 京ICP备14035423号|申请友情链接

GMT+8, 2024-5-15 12:32

Powered by BI168大数据社区

© 2012-2014 168大数据

快速回复 返回顶部 返回列表