鸢尾花Iris训练数据和测试数据的分割和训练数据的散点图矩阵绘制

ops/2024/11/28 4:48:06/

鸢尾花Iris训练数据和测试数据的分割和训练数据的散点图矩阵绘制

鸢尾花Iris训练数据和测试数据的分割和训练数据的散点图矩阵绘制

  • 鸢尾花Iris训练数据和测试数据的分割和训练数据的散点图矩阵绘制
    • 一、训练数据和测试数据
      • 1.1 训练数据(training data)
      • 1.2 测试数据(test data)
      • 1.3 泛化能力 (Generalization ability)
    • 二、训练数据和测试数据分割
      • 2.1 训练数据和测试数据的比例
      • 2.2 Python中scikit-learn中训练数据和测试数据分割方法
    • 三、基于散点图矩阵的数据观察
      • 3.1 安装pandas工具包
      • 3.2 安装mglearn工具包
      • 3.3 绘制散点图矩阵
    • 四、总结

一、训练数据和测试数据

1.1 训练数据(training data)

用于构建机器学习模型的数据,叫作训练数据(training data)或训练集(training set)。

1.2 测试数据(test data)

用于评估模型性能的数据,称作测试数据(test data)或测试集(test set)或留出集(hold-out set)。

1.3 泛化能力 (Generalization ability)

泛化能力 (Generalization ability) 指的是一个模型在未见过的数据上的表现能力。 它衡量一个模型学习到的知识是否能够推广到新的、不同的数据,而不是仅仅在训练数据上表现良好。 一个具有良好泛化能力的模型,即使面对训练数据中未出现的情况,也能做出准确的预测或决策。

二、训练数据和测试数据分割

2.1 训练数据和测试数据的比例

训练数据与测试数据的分配比例可以是随意的,但是以25%的数据作为测试数据是一种好的经验法则。
训练集和测试集: 评估泛化能力的关键在于将数据集分成训练集和测试集。模型在训练集上进行学习,然后在从未见过数据的测试集上进行评估。测试集上的表现才是对泛化能力的真正检验。

2.2 Python中scikit-learn中训练数据和测试数据分割方法

在scikit-learn中,可以使用train_test_split函数进行数据集的分割。
例如,以鸢尾花数据集分割程序为例子:

python">## 1. 从sklearn中加载数据集datasets
from sklearn import datasets
## 2.取出datasets数据集中的鸢尾花数据赋值给iris
iris = datasets.load_iris()    #iris为字典类型数据## 3. 数据集分割为训练集和测试集
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test=train_test_split(iris['data'],iris['target'],random_state=0)## 4.对训练集结构进行查看
print('X_train shape:{}'.format(X_train.shape))
print('y_train shape:{}'.format(y_train.shape))## 5.对测试集结构进行查看
print('X_test shape:{}'.format(X_test.shape))
print('y_test shape:{}'.format(y_test.shape))

运行结果:
在这里插入图片描述
图1 运行结果

三、基于散点图矩阵的数据观察

3.1 安装pandas工具包

在电脑cmd指令窗,输入如下代码

python">pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple

安装完成如图2所示。

在这里插入图片描述
图2 pandas工具包安装过程

3.2 安装mglearn工具包

在电脑cmd指令窗,输入如下代码

python">pip install mglearn -i https://pypi.tuna.tsinghua.edu.cn/simple

安装完成如图3所示。

在这里插入图片描述
图3 mglearn工具包安装过程

3.3 绘制散点图矩阵

在绘制散点图矩阵前,除了安装pandas工具包、mglearn工具包外,还需要安装了sklearn工具包,matplotlib工具包等。
绘制散点图矩阵代码如下:

python">## 1. 从sklearn中加载数据集datasets
from sklearn import datasets
## 2.取出datasets数据集中的鸢尾花数据赋值给iris
iris = datasets.load_iris()    #iris为字典类型数据## 3. 数据集分割为训练集和测试集
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test=train_test_split(iris['data'],iris['target'],random_state=0)## 4.对训练集结构进行查看
print('X_train shape:{}'.format(X_train.shape))
print('y_train shape:{}'.format(y_train.shape))## 5.对测试集结构进行查看
print('X_test shape:{}'.format(X_test.shape))
print('y_test shape:{}'.format(y_test.shape))## 6.散点图矩阵绘制
import matplotlib.pyplot as plt     #使用缩减的plt代替matplotlib
import pandas as pd
import mglearn
from pandas.plotting import scatter_matrix
iris_dataframe=pd.DataFrame(X_train,columns=iris.feature_names)
grr=scatter_matrix(iris_dataframe,c=y_train,figsize=(16,16),marker='o',hist_kwds={'bins':20},s=60,alpha=.8,cmap=mglearn.cm3)
plt.show()   #图显示

运行结果如图4所示:
在这里插入图片描述
图4 Iris数据集的散点图矩阵,按类别标签着色

四、总结

本文以鸢尾花数据iris数据为例,首先介绍了鸢尾花Iris数据分割为训练数据和测试数据并对train_test_split函数进行使用分割,最后对训练数据的散点图矩阵绘制进行了代码介绍并绘图。


http://www.ppmy.cn/ops/137259.html

相关文章

error Unexpected ‘debugger‘ statement no-debugger

[eslint] D:\System File\Desktop\后台\test\test\src\components\HelloWorld.vue 19:5 error Unexpected debugger statement no-debugger ✖ 1 problem (1 error, 0 warnings) You may use special comments to disable some warnings. Use // eslint-disable-next-li…

阿里发布 EchoMimicV2 :从数字脸扩展到数字人 可以通过图片+音频生成半身动画视频

EchoMimicV2 是由阿里蚂蚁集团推出的开源数字人项目,旨在生成高质量的数字人半身动画视频。以下是该项目的简介: 主要功能: 音频驱动的动画生成:EchoMimicV2 能够使用音频剪辑驱动人物的面部表情和身体动作,实现音频与…

Web day02 Js Vue Ajax

目录 1.javascript: 1.js的引入方式: 2.js变量 & 数据类型 & 输出语句: 模板字符串: 3.函数 & 自定义对象: 4. json 字符串 & DOM操作: 5. js事件监听: 6.js的模块化导入或者导出&a…

Unity 中 Application 四种常用目录总结

Unity 中 Application 提供了多种目录路径用于不同场景,以下是四种常用目录路径的区别、用途和跨平台下的具体路径示例: 1. Application.dataPath 描述 指向项目的 数据目录。在编辑器中指向 Assets 目录,打包后的应用程序中是构建的 Data …

docker compose的安装和使用

1. Docker Compose 简介 Docker Compose 是一个工具,用于定义和运行多容器的 Docker 应用。通过编写一个 docker-compose.yml 文件,可以一次性启动所有容器,并且方便管理容器之间的依赖。 2. 安装 Docker Compose 前提条件 确保已安装 Do…

【设计模式】【结构型模式(Structural Patterns)】之桥接模式(Bridge Pattern

1. 设计模式原理说明 桥接模式(Bridge Pattern) 是一种结构型设计模式,用于将抽象部分与实现部分分离,使它们可以独立变化。这种模式有助于解决因实现细节的变化而导致的代码膨胀问题。桥接模式的核心思想是通过组合而不是继承来…

ArcGIS 10.2软件安装包下载及安装教程!

今日资源:ArcGIS 适用系统:WINDOWS 软件介绍:ArcGIS是一款专业的电子地图信息编辑和开发软件,提供一种快速并且使用简单的方式浏览地理信息,无论是2D还是3D的信息。软件内置多种编辑工具,可以轻松的完成地…

上天入地 灵途科技光电技术赋能空间感知

近来,人工智能技术频频亮相各大马拉松赛事,成为引人注目的科技亮点。 11月3日,杭州马拉松首次启用了机器狗作为配速员,以稳定的节奏为选手提供科学的跑步节奏。 11月11日,亦庄半程马拉松的终点处,人形机器…