机器学习中—sklearn对于鸢尾花如何进行数据集划分

机器学习中,我们熟知的开发流程是:获取数据——数据处理——特征工程——机器学习算法训练模型——模型评估—–应用实际

所以对于一个我们已有的数据集,不能全部用作建立模型,还要有一部分数据集用来进行我们建立的模型的训练评估,这就涉及到数据集的划分,要用到这个代码进行数据集的划分:

x_train,x_test,y_train,y_test=train_test_split(iris.data,iris.target,random_state=22)

这串代码的具体解释如下:

train_test_split()是sklearn包的model_selection模块中提供的随机划分训练集和测试集的函数;

使用train_test_split函数可以将我们已有的数据集按照一定比例划分训练集和测试集。

x,y是原始的数据集的特征值和标签值。

x_train,y_train 是原始数据集划分出来作为训练模型的.

x_test,y_test 这部分的数据不参与模型的训练,而是用于评价训练出来的模型好坏。

其中,test_size=? 是测试集的划分比例,里面如果不设置,自己定义为0.25,

random_state:是随机数的种子。相同的随机种子时,同样的代码,得到的训练集数据相同。不同随机种子时,同样的代码,得到的训练集数据就会不同。

对于鸢尾花数据划分的整体代码如下:

from sklearn.datasets import load_iris
#小规模数据集用load,大规模数据集用fetch
from sklearn.model_selection import train_test_split
#导入鸢尾花数据集
#实例化对象
iris=load_iris()
print('鸢尾花数据集:\n',iris)#可以看出是字典形式的
#查看特征值
print('鸢尾花的特征值:\n',iris['data'],iris.data.shape)#可以通过字典类型获取,也可以通过.属性的方法获取键值对
#查看特征值的名字
print('鸢尾花的特征值:\n',iris.feature_names)
#查看数据集的描述
print('鸢尾花的数据集描述:\n',iris['DESCR'])#可以看到他的特征值的描述有哪些
'''众所周知,在机器学习种,数据和特征决定了其上限,而模型和算法只是逼近这个上限'''
#数据集的划分,将原始数据集划分为训练集和测试集
x_train,x_test,y_train,y_test=train_test_split(iris.data,iris.target,random_state=22)
print('训练集的特征值:',x_train,x_train.shape)#x_train.shape可以知道几行几列

Original: https://blog.csdn.net/Superman980527/article/details/124383246
Author: 漂泊的小森
Title: 机器学习中—sklearn对于鸢尾花如何进行数据集划分

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/701027/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球