R语言利用caret包比较模型性能差异
2017-06-09 12:02
387 查看
说明
我们可以通过重采样的方法得对每一个匹配模型的统计信息,包括ROC曲线,灵敏度与特异度,然后基于这些统计信息来比较不同模型的性能差异。操作
利用上节的信息,准备好glm分类模型,svm分类模型,rpart分类模型,并存放在glm.model,svm.model,rpart.model。cv.values = resamples(list(glm = glm.model,svm =svm.model,rpart = rpart.model)) > summary(cv.values) Call: summary.resamples(object = cv.values) Models: glm, svm, rpart Number of resamples: 30 ROC Min. 1st Qu. Median Mean 3rd Qu. Max. NA's glm 0.7597790 0.7927740 0.8040455 0.8106454 0.8347961 0.8760824 0 svm 0.8191998 0.8786439 0.8945208 0.8947360 0.9196775 0.9562556 0 rpart 0.6064540 0.7150320 0.7608241 0.7556544 0.8086731 0.8554750 0 Sens Min. 1st Qu. Median Mean 3rd Qu. Max. NA's glm 0.08823529 0.1764706 0.2058824 0.2124930 0.2516807 0.3235294 0 svm 0.44117647 0.5294118 0.5882353 0.5956863 0.6470588 0.7941176 0 rpart 0.20000000 0.4117647 0.4705882 0.4787955 0.5514706 0.7352941 0 Spec Min. 1st Qu. Median Mean 3rd Qu. Max. NA's glm 0.9393939 0.9645119 0.9721581 0.9702721 0.9796954 0.9898477 0 svm 0.9494949 0.9695431 0.9771574 0.9755004 0.9847716 0.9898990 0 rpart 0.9492386 0.9746193 0.9796954 0.9780359 0.9848485 1.0000000 0
使用dotplot函数绘制重采样在ROC曲线度量中的结果:
dotplot(cv.values,metric = "ROC")
使用箱线图绘制重采样结果:
bwplot(cv.values,layout=c(3,1))
重采样结果箱线图
说明
我们使用resample函数生成各个模型的统计信息,再调用summary函数输出三个模型在ROC、灵敏度及特异性上的统计信息。使用dotplot方法处理重采样结果来观测不同模型ROC差异,最后,采用箱线图在同一张图上对ROC、灵敏度及特异方面的差别进行比较。相关文章推荐
- R语言利用caret包比较ROC曲线
- R语言利用caret包比较ROC曲线
- 利用 openmp 实现在intel多核系统上 基本排序算法性能比较
- sharepoint对象模型性能比较
- 利用R语言如何进行文本比较算法——LD算法
- 二分类模型性能评价(R语言,logistic回归,ROC曲线,lift曲线,lorenz曲线)
- 朴素、Select、Poll和Epoll网络编程模型实现和分析——Poll、Epoll模型处理长连接性能比较
- 搜索引擎中几种语言模型的性能比较
- OpenCV遍历图像性能比较、利用查找表
- 比较数据泵和exp/imp对相同数据导出/导入的性能差异
- R语言:利用caret包中的dummyVars函数进行虚拟变量处理
- 2.模型性能的比较检验
- 利用 openmp 实现在intel多核系统上 基本排序算法性能比较
- 在R语言中对回归树模型、装袋算法与随机森林之间的简单比较
- 比较数据泵和exp/imp对相同数据导出/导入的性能差异
- 判断一个整数是否是n^m次方类型数据,并比较乘法和除法性能差异
- sharepoint对象模型性能比较
- 比较使用sql*loader的直接加载方式和传统加载方式的性能差异
- 固态硬盘和机械硬盘的比较和SQLSERVER在两种硬盘上的性能差异
- 利用eclipse比较两个文件的代码差异或者一个文件不同版本之间的异同