栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

交叉验证数据集划分--KFold类和cross

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

交叉验证数据集划分--KFold类和cross

目录
  • KFold
    • 一般使用格式
  • cross_val_score
    • 主要参数
    • 返回值
    • 一般使用格式

KFold
model_selection.KFold(n_splits=5, *, shuffle=False, random_state=None)

提供训练/测试指标用于分割在训练/测试集中的数据
将数据分为n_splits份(默认不打乱顺序),其中一份作为交叉验证数据集,剩余(n_splits-1)份作为训练数据集

该类是一个交叉校验器

一般使用格式

常与cross_val_score()函数一起使用来求模型的评分

cross_val_score
cross_val_score(estimator, X, y=None, *, groups=None, scoring=None, cv=None, n_jobs=None, verbose=0, fit_params=None, pre_dispatch='2*n_jobs', error_score=nan)

通过交叉验证来评估出一个分数

主要参数

x
array-like
要拟合的数据
y
array-like
监督学习时使用,表示标签
cv
交叉验证生成器(如kfold类)或可迭代类型
默认:5-fold
n_jobs
并行处理的任务数量
训练模型计算得分与交叉数据集分割同时进行
默认None:即1
-1表示使用所有处理器

返回值

数据类型:ndarray
模型为每个交叉验证数据集所估计的分数,比如我们使用kfold将数据集分为10份,除了1份用来验证模型的准确性外,其余的9份都会作为训练数据集参与估分

一般使用格式
kfold=KFold(n_splits=10)
cv_result=cross_val_score(model,x,y,cv=kfold)	# model表示模型,x,y分别表示数据集及其标签

cross_val_score()函数的意义:假设我们现在有一个数据集,我们需要将其分为训练集和测试集,但是这样分一次后得到的数据集合具有随机性,这就会导致每次分割得到的数据集不一样,模型训练后得到的分数也不一样,会影响我们的判断。
于是我们使用这样的一个方法,多次随机分配训练数据集和交数据集,然后求得模型准确性评分的平均值
上面代码中cross_val_score()函数总共计算10次不同数据集和交叉数据集组合得到的模型准确行评分

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/829702.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号