当前位置: 首页 > news >正文

做企业公示的数字证书网站百度软件下载

做企业公示的数字证书网站,百度软件下载,无广告免费赚钱无门槛的游戏,台州高端网站设计我们在建立数据模型后通常希望在外部数据验证模型的检验能力。然而当没有外部数据可以验证的时候,交叉验证也不失为一种方法。交叉验验证(交叉验证,CV)则是一种评估模型泛化能力的方法,广泛应用…

我们在建立数据模型后通常希望在外部数据验证模型的检验能力。然而当没有外部数据可以验证的时候,交叉验证也不失为一种方法。交叉验验证(交叉验证,CV)则是一种评估模型泛化能力的方法,广泛应用中于数证据采挖掘和机器学习领域,在交叉验证通常将数据集分为两部分,一部分为训练集,用于建立预测模型;另一部分为测试集,用于测试该模型的泛化能力。

在如何划分2个集合的问题上,统计学界提出了多种方法:简单交叉验证、留一交叉验证、k折交叉验证、多重三折交叉验证、分层法、自助法等。

简单交叉验证:是我们临床论文中最常使用到的,从数据中随机选择中随机选择70%点的数据作为训练集建立模型,30%的数据当做外部数据来验证模型的预测能力。但其最终所得结果与集合划分比率密切相关,不同划分比率结果变异可能较大。该方法在总数据据集并不是非常大的情形下很难达到准确实评模型的目的。

留一交叉验证是指:假设在总集合中共有有n个体,每次选取1个体作为测试试集,其余个体作为训练集。总共进行n 次训练,取平均值是最终评价指标。留一交叉验证较为可靠靠,在每次模型训练中纳入几度乎所有个体,当总集合中个体 数目轨迹的情势下计算时间较长。

k折交叉验证:可以看成是留一交叉验证的简化版,是将原始数据据随机平均分为k个子集(通常5-10个),每个子集做测试集的同时,其余k-1个子集合并作为训练 ,进行 k 次训练,取各评价指标(灵敏度、特异度、AUC等)的平均值。测试通过平均的评价指来降低训练集和测试集划分方式对预测结果的影响,有研究值表明k 折评估准准确性高,当k为5或10时在评估准准后性和计算复杂性下综合性能最优。

10折交叉验证是指将原始数据集随机划分为样本数近乎相等的10个子集,轮流将其中的9个合并作为训练集,其余1个作为测试试集。算正确率等评价指标,最终终通过K次试验验后取评价指标的平均值来评估该模型的泛化能力。

10折交叉证验证的基本步骤下:

( 1)原始数据集划分为10个样本量尽可均衡的子集;

( 2)使用第1个子集作为测试集,第2~9个子集合并作为训练集;

( 3)使用训练集对模型进行训练,计算多种评价指标在测试集下的结果;

( 4)重复2 ~3 步流亜,轮将第2 ~10个子集作为测试集;

( 5)计算各评价指标的平均值作为最终结果。

在这里插入图片描述

今天我们通过视频来演示k折交叉验证(K取10),需要使用到caret包和pROC包,需要使用到我们既往的不孕症数据(公众号回复:不孕症,可以获得该数据)

基于R语言进行K折交叉验证

代码:

library("caret")
library(pROC)
###公众号回复:不孕症,可以获得这个数据
bc<-read.csv("E:/r/test/buyunzheng.csv",sep=',',header=TRUE)
###
bc$education<-ifelse(bc$education=="0-5yrs",0,ifelse(bc$education=="6-11yrs",1,2))
bc$spontaneous<-as.factor(bc$spontaneous)
bc$case<-as.factor(bc$case)
bc$induced<-as.factor(bc$induced)
bc$education<-as.factor(bc$education)
####拆分数据
set.seed(666)
folds <- createFolds(y=bc$case,k=10)###分成10份
#####我们先来做第一个数据的,要提取列表的数据,需要做成[[1]]这种形式,
fold_test <- bc[folds[[1]],]#取fold 1数据,建立测试集和验证集
fold_train <- bc[-folds[[1]],]#
######
fold_pre <- glm(case ~ age  + parity +spontaneous,family = binomial(link = logit), data =fold_train )###建立模型
fold_predict <- predict(fold_pre,type='response',newdata=fold_test)##生成预测值roc1<-roc((fold_test[,5]),fold_predict)
round(auc(roc1),3)##AUC
round(ci(roc1),3)##95%CI##得出结果后我们可以进一步画图
plot(roc1, print.auc=T, auc.polygon=T, grid=c(0.1, 0.2),grid.col=c("green", "red"), max.auc.polygon=T,auc.polygon.col="skyblue", print.thres=T)plot(1-roc1$specificities,roc1$sensitivities,col="red",lty=1,lwd=2,type = "l",xlab = "specificities",ylab = "sensitivities")
abline(0,1)
legend(0.7,0.3,c("auc=0.34","ci:0.457-0.99."),lty=c(1),lwd=c(2),col="red",bty = "n")# 嫌一个一个做比较麻烦的话我们也可以做成循环,一次跑完结果
# 先建立一个auc的空值,不然跑不了auc_value<-as.numeric()for(i in 1:10){fold_test <- bc[folds[[i]],] #取folds[[i]]作为测试集fold_train <- bc[-folds[[i]],] # 剩下的数据作为训练集fold_pre <- glm(case ~ age  + parity +spontaneous,family = binomial(link = logit), data =fold_train )fold_predict <- predict(fold_pre,type='response',newdata=fold_test)auc_value<- append(auc_value,as.numeric(auc(as.numeric(fold_test[,5]),fold_predict)))
}
####
mean(auc_value)
http://www.ritt.cn/news/20513.html

相关文章:

  • 腾讯网站统计代码每日财经最新消息
  • wordpress英文版切换中文版网络营销策略优化
  • 视频号的网站链接百度推广竞价
  • 做淘客找单子的网站网络营销师报名入口
  • 公司付的网站费怎么做分录微信公众号营销
  • 泰安人才南昌seo数据监控
  • 深圳网站营销公司网站收录入口申请查询
  • wordpress搜索结果天津关键词优化平台
  • 深色网站太原网站快速排名优化
  • thinkphp做网站好吗网络策划是做什么的
  • 宁波住房和城乡建设委员会官方网站软文台
  • 汕头网站建设优化网站运营工作内容
  • b2b电子商务网站需要具备哪些业务功能每日财经最新消息
  • 颛桥做网站汕头seo排名收费
  • 竞价sem托管公司贵州萝岗seo整站优化
  • 潍坊做网站张家口做引流推广的平台600
  • 白银网站模板怎么做好seo内容优化
  • 新手如何做自己的网站最新国际新闻10条
  • 视频资源的网站怎么做app开发网站
  • 广州英铭网站建设自助建站系统哪个好用
  • 有哪些网站是做分期付款的360网站推广官网
  • 包车哪个网站做的最好大数据比较好的培训机构
  • 个人网站设计欣赏全网营销网络推广
  • 石家庄做网站代推广app下载
  • 深圳网站建设九曲网二十条优化疫情措施
  • 做网站 绍兴广西关键词优化公司
  • 网站弹出公告代码seo 优化思路
  • 新疆兵团建设网站百度认证考试
  • 怎么做点击文字进入的网站快速排名方案
  • 深圳专业专业网站设计公司seo外包上海