引言
鸢尾花分类是《Python机器学习基础教程》中的第一个应用,是一个监督学习问题,概述了使用scikit-learn库进行监督学习的基本流程:
获取数据→数据集拆分→观察数据→构建模型→评估模型→预测
博主使用的编程环境:
Sublime Text 3 + Jupyter Notebook + Anaconda 3
默认导入库:
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import mglearn
#博主使用的Anaconda 3并未默认安装mglearn,需要打开anaconda prompt输入pip install mglearn进行安装
应用
一 获取数据鸢尾花(Iris)数据集是机器学习和统计学中的一个经典数据集,包含于scikit-learn的datasets模块中,可调用load_iris()来导入:
from sklearn.datasets import load_iris
iris_dataset = load_iris()
load_iris()返回的是一个Bunch对象,有五个键:
①target_names: 鸢尾花的三个品种
②feature_names: 鸢尾花的四个特征
③DESCR: 对数据集的简要说明
④data: 鸢尾花四个特征的具体数据
⑤target: 鸢尾花的品种,由0,1,2来表示
二 数据集拆分通常我们将数据用大写的X来表示(因为数据是个二维数组),而标签用小写的y来表示
然后利用scikit-learn的train_test_split()将导入的数据集分为训练集(用于构建机器学习模型)与测试集(用于评估模型性能),通常采用3:1的随机分配方法。train_test_split()的随机种子每次执行都会改变,为了使结果可以验证,我们可以通过random_state设置固定的随机种子。
from