对sklearn的使用之数据集的拆分与训练详解(python3.6)


Posted in Python onDecember 14, 2018

研修课上讲了两个例子,融合一下。

主要演示大致的过程:

导入->拆分->训练->模型报告

以及几个重要问题:

①标签二值化

②网格搜索法调参

③k折交叉验证

④增加噪声特征(之前涉及)

from sklearn import datasets
#从cross_validation导入会出现warning,说已弃用
from sklearn.model_selection import train-test_split
from sklearn.grid_search import GridSearchCV
from sklearn.metrics import classification_report
from sklearn.svm import SVC
import sklearn.exceptioins
#导入鸢尾花数据集
iris = datasets.load_iris()
#将数据集拆分为训练集和测试集各一半
#其中X为数据特征(花萼、花瓣的高度宽度),为150*4的矩阵
#Y为鸢尾花种类(0, 1, 2三种),为150*1矩阵
#如果使用标签二值化, 将0, 1, 2表示为100 010 001
#使用y.label_binarize(y, classes[0, 1, 2]),变为150*3矩阵
X_train, X_test, y_train, y_test = train_test_split(
iris.data, iris.target, test_size=0.5, random_state=0)
#set the parameters by cross_validation
turn_parameters = [{'kernel' : ['rbf', 'gamma' : [1e-3, 1e - 4, 'C':[1,10,100,1000]}, 
{'kernel':['linear'], 'C':[1,10,100,1000]}
]
#clf分离器
#使用网格搜索法调超参数
#训练集做5折交叉验证
clf = GridSearchCV(SVC(C=1), turned_parameters, cv=5, scoring='%s_weighted' % score)
#用前一半train数据再做5折交叉验证
#因为之前的train_test_split已经分割为2份了
#fit-拟合
clf.fit(X_train, y_train)
#超参数
print(clf.best_params_)
#得分
for params, mean_score, scores in clf.gird_scores_:
 print("%.3f (+/-%.0.03f) for %r" % (mean_score, scores.std()*1.96,params))
#分类报告
y_true, y_pred = y_test, clf.predict(X_test)
print(classification_report(y_true, y_pred))

以上这篇对sklearn的使用之数据集的拆分与训练详解(python3.6)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python在线运行代码助手
Jul 15 Python
python 简单的多线程链接实现代码
Aug 28 Python
利用Python查看目录中的文件示例详解
Aug 28 Python
Python之ReportLab绘制条形码和二维码的实例
Jan 15 Python
Python使用Dijkstra算法实现求解图中最短路径距离问题详解
May 16 Python
Python学习笔记之lambda表达式用法详解
Aug 08 Python
Keras实现将两个模型连接到一起
May 23 Python
python实现KNN近邻算法
Dec 30 Python
Django项目在pycharm新建的步骤方法
Mar 02 Python
如何使用Python对NetCDF数据做空间相关分析
Apr 21 Python
Django migrate报错的解决方案
May 20 Python
梳理总结Python开发中需要摒弃的18个坏习惯
Jan 22 Python
python列表list保留顺序去重的实例
Dec 14 #Python
Python机器学习之scikit-learn库中KNN算法的封装与使用方法
Dec 14 #Python
Python面向对象之类的内置attr属性示例
Dec 14 #Python
python模糊图片过滤的方法
Dec 14 #Python
python 随机打乱 图片和对应的标签方法
Dec 14 #Python
对python打乱数据集中X,y标签对的方法详解
Dec 14 #Python
Python实现带参数的用户验证功能装饰器示例
Dec 14 #Python
You might like
php中日期加减法运算实现代码
2011/12/08 PHP
PHP JSON出错:Cannot use object of type stdClass as array解决方法
2014/08/16 PHP
php魔术变量用法实例详解
2014/11/13 PHP
基于php的CMS中展示文章类实例分析
2015/06/18 PHP
php中的单引号、双引号和转义字符详解
2017/02/16 PHP
javaScript 数值型和字符串型之间的转换
2009/07/25 Javascript
struts2 jquery 打造无限层次的树
2009/10/23 Javascript
JQuery 常用方法和事件详细介绍
2013/04/18 Javascript
jQuery 删除/替换DOM元素的几种方式
2014/05/20 Javascript
三种取消选中单选框radio的方法
2014/09/09 Javascript
12306验证码破解思路分享
2015/03/25 Javascript
SWFObject基本用法实例分析
2015/07/20 Javascript
JavaScript深度复制(deep clone)的实现方法
2016/02/19 Javascript
用原生JS对AJAX做简单封装的实例代码
2016/07/13 Javascript
JS常用函数和常用技巧小结
2016/10/15 Javascript
Bootstrap模态窗口源码解析
2017/02/08 Javascript
ES6新特性二:Iterator(遍历器)和for-of循环详解
2017/04/20 Javascript
angular4自定义组件详解
2017/09/28 Javascript
JS 实现缓存算法的示例(FIFO/LRU)
2018/03/20 Javascript
Vue组件的使用及个人理解与介绍
2019/02/09 Javascript
详解一次Vue低版本安卓白屏问题的解决过程
2019/05/30 Javascript
layui-table对返回的数据进行转变显示的实例
2019/09/04 Javascript
关于Vue中axios的封装实例详解
2019/10/20 Javascript
Python 错误和异常小结
2013/10/09 Python
python使用心得之获得github代码库列表
2014/06/25 Python
python实现的文件同步服务器实例
2015/06/02 Python
python实现批量解析邮件并下载附件
2018/06/19 Python
Python Django 前后端分离 API的方法
2019/08/28 Python
IE9下html5初试小刀
2010/09/21 HTML / CSS
台湾线上百货零售购物平台:friDay购物
2017/08/18 全球购物
单身旅行者的单身假期:Just You
2018/04/08 全球购物
桥梁与隧道工程专业本科生求职信
2013/10/08 职场文书
保护环境倡议书
2014/04/14 职场文书
公证委托书标准格式
2014/09/11 职场文书
敬老院志愿者活动总结
2015/05/06 职场文书
2015年宣传部个人工作总结
2015/05/14 职场文书