对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写的一个squid访问日志分析的小程序
Sep 17 Python
简单介绍Ruby中的CGI编程
Apr 10 Python
Python操作MongoDB数据库PyMongo库使用方法
Apr 27 Python
Python求导数的方法
May 09 Python
python计算一个序列的平均值的方法
Jul 11 Python
在Python中使用defaultdict初始化字典以及应用方法
Oct 31 Python
python格式化输出保留2位小数的实现方法
Jul 02 Python
python tkinter窗口最大化的实现
Jul 15 Python
python web框架 django wsgi原理解析
Aug 20 Python
Python使用pdb调试代码的技巧
May 03 Python
使用keras实现非线性回归(两种加激活函数的方式)
Jul 05 Python
python urllib库的使用详解
Apr 13 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
Protoss热键控制
2020/03/14 星际争霸
利用PHP实现与ASP Banner组件相似的类
2006/10/09 PHP
php str_replace的替换漏洞
2008/03/15 PHP
PHP 采集程序原理分析篇
2010/03/05 PHP
php curl基本操作详解
2013/07/23 PHP
php实现session自定义会话处理器的方法
2015/01/27 PHP
JavaScript Cookie显示用户上次访问的时间和次数
2009/12/08 Javascript
javascript中用星号表示预录入内容的实现代码
2011/01/08 Javascript
AngularJS HTML编译器介绍
2014/12/06 Javascript
javascript删除一个html元素节点的方法
2014/12/20 Javascript
jquery单选框radio绑定click事件实现方法
2015/01/14 Javascript
JQuery实现带排序功能的权限选择实例
2015/05/18 Javascript
JS原型、原型链深入理解
2016/02/27 Javascript
Bootstrap页面布局基础知识全面解析
2016/06/13 Javascript
微信小程序 使用canvas制作K线实例详解
2017/01/12 Javascript
Bootstrap输入框组件使用详解
2017/06/09 Javascript
微信小程序出现wx.navigateTo页面不跳转问题的解决方法
2017/12/26 Javascript
vue 地图可视化 maptalks 篇实例代码详解
2019/05/21 Javascript
vue(2.x,3.0)配置跨域代理
2019/11/27 Javascript
微信小程序整个页面的自动适应布局的实现
2020/07/12 Javascript
python装饰器初探(推荐)
2016/07/21 Python
Python生成短uuid的方法实例详解
2018/05/29 Python
Python pandas.DataFrame调整列顺序及修改index名的方法
2019/06/21 Python
Python函数式编程指南:对生成器全面讲解
2019/11/19 Python
Python使用QQ邮箱发送邮件实例与QQ邮箱设置详解
2020/02/18 Python
Python代码执行时间测量模块timeit用法解析
2020/07/01 Python
Django静态文件加载失败解决方案
2020/08/26 Python
html5 利用canvas实现超级玛丽简单动画
2013/09/06 HTML / CSS
字中字效果的实现【html5实例】
2016/05/03 HTML / CSS
Draper James官网:知名演员瑞茜·威瑟斯彭所创品牌
2017/10/25 全球购物
Unix里面如何在后台运行程序
2016/10/14 面试题
管理学院毕业生自荐信范文
2014/03/10 职场文书
党员民主生活会个人整改措施材料
2014/09/16 职场文书
2014年变电站工作总结
2014/12/19 职场文书
交通事故起诉书
2015/05/19 职场文书
Java数据开发辅助工具Docker与普通程序使用方法
2021/09/15 Java/Android