使用留一验证法进行分析

由于交叉验证法每次选取的测试集是随机的,因此每次运算结果未必相同。此时可采用留一验证法进行分析。

选取第0组作为测试集,其它为训练集重新训练模型,对第0组数据进行预测并验证是否正确。

选取第1组作为测试集,其它为训练集重新训练模型,对第1组数据进行预测并验证是否正确。

...

选取第n-1组作为测试集,其它为训练集重新训练模型,对第n-1组数据进行预测并验证是否正确。

统计这n组结果的准确率

from sklearn import datasets #鸢尾花数据集被sklearn的datasets所包含,需要引用

from sklearn.cross_validation import train_test_split

from sklearn.svm import SVC

from numpy import *

def data_svc_test(data, target, index): #3个参数分别为数据、类型编号标签、被选取的编号

x_train = vstack((data[0:index],data[index+1:-1])); #除第index号之外的数据为训练集

x_test = data[index]; #第index号数据为测试集

y_train = hstack((target[0:index],target[index+1:-1])); #除第index号之外标签为训练集

y_test = target[index]; #第index号标签为测试集

SVC_0 = SVC(kernel='rbf'); #建立SVC模型

SVC_0.fit(x_train,y_train)

predict = SVC_0.predict(x_test);

return predict==y_test; #返回结果是否预测正确

iris_dataset = datasets.load_iris();

iris_data = iris_dataset.data;

iris_target = iris_dataset.target;

length = iris_target.shape[0];

right = 0; #正确项个数

for i in range(0,length): #所有数据依次作为测试集,其余数据为训练集进行训练

right += data_svc_test(iris_data, iris_target, i);

print("%f%%"%(right*100.0/length)); #分类准确率

python实现留一法_机器学习基础相关推荐

  1. python实现留一法_数据分割:留出法train_test_split、留一法LeaveOneOut、GridSearchCV(交叉验证法+网格搜索)、自助法...

    1.10 交叉验证,网格搜索 学习目标 目标 知道交叉验证.网格搜索的概念 会使用交叉验证.网格搜索优化训练模型 1 什么是交叉验证(cross validation) 交叉验证:将拿到的训练数据,分 ...

  2. python决策树剪枝_机器学习基础:可视化方式理解决策树剪枝

    看了一些市面上的经典教材,感觉决策树剪枝这一部分讲的都特别晦涩,很不好理解.本文以理论白话+具体案例的形式来讲清楚这个重要知识点,打好决策树这个基础,有助于理解之后我们要讲解的随机森林.gbdt.xg ...

  3. 机器学习学习吴恩达逻辑回归_机器学习基础:逻辑回归

    机器学习学习吴恩达逻辑回归 In the previous stories, I had given an explanation of the program for implementation ...

  4. 机器学习:分类_机器学习基础:K最近邻居分类

    机器学习:分类 In the previous stories, I had given an explanation of the program for implementation of var ...

  5. airbnb机器学习模型_机器学习基础:预测Airbnb价格

    airbnb机器学习模型 Machine learning is easily one of the biggest buzzwords in tech right now. Over the pas ...

  6. 第二章_机器学习基础

    文章目录 第二章 机器学习基础 2.1 各种常见算法图示 2.2 监督学习.非监督学习.半监督学习.弱监督学习? 2.3 监督学习有哪些步骤 2.4 多实例学习? 2.5 分类网络和回归的区别? 2. ...

  7. python训练手势分类器_机器学习零基础?手把手教你用TensorFlow搭建图像分类器|干货...

    编者按:Pete Warden是TensorFlow移动团队的技术负责人.曾在Jetpac担任首次技术官.Jetpac的深度学习技术经过优化,可在移动和嵌入式设备上运行.该公司已于2014年被谷歌收购 ...

  8. python画图库哪个好_机器学习基础5--python画图库matplotlib(上)

    图像是我们最直观的数据表达方式,python的matplotlib库可以用来画图.下面来简单总结下matplotlib的使用方法. 上篇讲matplot画图中用到的基础对象,包括图像Figure,平面 ...

  9. python的自带数据集_机器学习基础 / 加载scikit-learn自带的数据集 - 汇智网

    加载Scikit-learn自带的数据集 scikit-learn自带少量数据集,比如说用于分类分析的鸢尾花数据集和数码数据集.用于回归分析的波士顿房价数据集. 数据集是一个字典类对象,它包括数据以及 ...

最新文章

  1. 利用iconv进行文件编码批量原地转换
  2. 【赠书】快速入门自动机器学习!自动机器学习(AutoML):方法、系统与挑战 图书赠送!...
  3. php e all e notic,error_reporting(E_ALL ^ E_NOTICE)详细说明 | 慢生活的记忆
  4. 用积木做了个无人机。
  5. select2 属性标签整理
  6. 画图板-- 中点算法画圆
  7. ubuntu meld比较文件差异
  8. 文章之间的基本总结Activity生命周期
  9. 无代码火了,短板有哪些?
  10. c语言程序员表白代码6,520到了——程序员表白代码大全公开!
  11. 【系统分析与设计】高校学生社团管理系统
  12. knockoutjs三 text和apperance的绑定
  13. Centos7 日志查看工具journalctl 使用
  14. Linux:面试常被问到的命令(持续更新)
  15. Chrome导出扩展程序
  16. 微信小程序网络请求api中HTML格式问题
  17. java为word、excel、pdf、ppt、图片添加图片水印(文字水印同理)
  18. matlab中的out模块,matlab-simulink中out模块怎么用?
  19. 蚂蚁金服-基于数据和堆栈映射快速定位前端问题
  20. JVM垃圾回收器-CMS并发标记清除

热门文章

  1. C++围棋小游戏1.2.2
  2. MySQL的ODBC驱动下载、安装以及配置数据源
  3. mingw 构建 mysql-connector-c-6.1.9记录
  4. 纽约大学黑客马拉松之行
  5. 用红蓝3D眼镜在PC上观看3D影片效果并不好
  6. 苹果CEO史蒂夫·乔布斯在斯坦福演讲(一)
  7. 养老金入市,千呼万唤始出来?
  8. 大数据平台执行报错,权限问题。
  9. Android—消息推送机制
  10. 药品研发--工艺技术人员积分和职务考核评估管理办法