六、案例:鸢尾花种类预测–数据集介绍
学习目标:
- 知道sklearn中获取数据集的⽅法
- 知道sklearn中对数据集的划分⽅法
本实验介绍了使⽤Python进⾏机器学习的⼀些基本概念。 在本案例中,将使⽤K-Nearest Neighbor(KNN)算法对鸢尾花的种类进⾏分类,并测量花的特征。
本案例⽬的:
- 遵循并理解完整的机器学习过程
- 对机器学习原理和相关术语有基本的了解
- 了解评估机器学习模型的基本过程
1、案例:鸢尾花种类预测
Iris数据集是常⽤的分类实验数据集,由Fisher, 1936收集整理。Iris也称鸢尾花卉数据集,是⼀类多重变量分析的数据集。关于数据集的具体介绍:
2、scikit-learn中数据集介绍
(1) scikit-learn数据集API介绍
sklearn.datasets:加载获取流⾏数据集
sklearn小数据集
datasets.load_*():获取小规模数据集,数据包含在datasets⾥
sklearn.datasets.load_iris()
:加载并返回鸢尾花数据集
输入下面这段代码,可以得到sklearn预先下载的数据集
from sklearn.datasets import load_iris
iris=load_iris()
print(iris)
sklearn大数据集
datasets.fetch_*(data_home=None)
:获取⼤规模数据集,需要从网络上下载,函数的第⼀个参数是data_home,表示数据集下载的目录,默认是~/scikit_learn_data/
sklearn.datasets.fetch_20newsgroups(data_home=None,subset=‘train’)
subset:可以是 ‘train’ 或者 ‘test’,‘all’,可选,选择要加载的数据集。
分别代表训练集的 “训练” ,测试集的 “测试” ,两者的 “全部” 。
可以运行下面这段代码来获取大数据集
from sklearn.datasets import fetch_20newsgroups
news=fetch_20newsgroups()
print(news)
注:不知道什么原因,运行这个会报错
(2)sklearn数据集返回值介绍
load和fetch返回的数据类型datasets.base.Bunch(字典格式)
- data:特征数据数组,是 [n_samples * n_features] 的⼆维 numpy.ndarray 数组
- target:标签数组,是 n_samples 的⼀维 numpy.ndarray 数组
- DESCR:数据描述
- feature_names:特征名,新闻数据,⼿写数字、回归数据集没有
- target_names:标签名
from sklearn.datasets import load_iris
# 获取鸢尾花数据集
iris