本实验介绍了使⽤Python进⾏机器学习的⼀些基本概念。 在本案例中,将使⽤K-Nearest Neighbor(KNN)算法对鸢 尾花的种类进⾏分类,并测量花的特征。
Iris数据集是常⽤的分类实验数据集,由Fisher, 1936收集整理。Iris也称鸢尾花卉数据集,是⼀类多重变量分析的数据 集。关于数据集的具体介绍:
from sklearn.datasets import load_iris # 获取鸢尾花数据集 iris = load_iris() print("鸢尾花数据集的返回值:n", iris) # 返回值是⼀个继承⾃字典的Bench print("鸢尾花的特征值:n", iris["data"]) print("鸢尾花的⽬标值:n", iris.target) print("鸢尾花特征的名字:n", iris.feature_names) print("鸢尾花⽬标值的名字:n", iris.target_names) print("鸢尾花的描述:n", iris.DESCR) 12345678910 2.3 查看数据分布
通过创建⼀些图,以查看不同类别是如何通过特征来区分的。 在理想情况下,标签类将由⼀个或多个特征对完美分 隔。 在现实世界中,这种理想情况很少会发⽣。
seaborn介绍
Seaborn 是基于 Matplotlib 核⼼库进⾏了更⾼级的 API 封装,可以让你轻松地画出更漂亮的图形。⽽ Seaborn 的漂亮主要体现在配⾊更加舒服、以及图形元素的样式更加细腻。安装 pip3 install seabornseaborn.lmplot() 是⼀个⾮常有⽤的⽅法,它会在绘制⼆维散点图时,⾃动完成回归拟合%matplotlib inline # 内嵌绘图 import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # 把数据转换成dataframe的格式 iris_d = pd.DataFrame(iris['data'], columns = ['Sepal_Length', 'Sepal_Width', 'Petal_Length', 'Petal_Width']) iris_d['Species'] = iris.target def plot_iris(iris, col1, col2): sns.lmplot(x = col1, y = col2, data = iris, hue = "Species", fit_reg = False) plt.xlabel(col1) plt.ylabel(col2) plt.title('鸢尾花种类分布图') plt.show() plot_iris(iris_d, 'Petal_Width', 'Sepal_Length') 123456789101112131415
机器学习⼀般的数据集会划分为两个部分:
训练数据:⽤于训练,构建模型测试数据:在模型检验时使⽤,⽤于评估模型是否有效划分⽐例:
训练集:70% 80% 75%测试集:30% 20% 25%数据集划分api
sklearn.model_selection.train_test_split(arrays, *options)
from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split # 1、获取鸢尾花数据集 iris = load_iris() # 对鸢尾花数据集进⾏分割 # 训练集的特征值x_train 测试集的特征值x_test 训练集的⽬标值y_train 测试集的⽬标值y_test x_train, x_test, y_train, y_test = train_test_split(iris.data, iris.target, random_state=22) print("x_train:n", x_train.shape) # 随机数种⼦ x_train1, x_test1, y_train1, y_test1 = train_test_split(iris.data, iris.target, random_state=6) x_train2, x_test2, y_train2, y_test2 = train_test_split(iris.data, iris.target, random_state=6) print("如果随机数种⼦不⼀致:n", x_train == x_train1) print("如果随机数种⼦⼀致:n", x_train1 == x_train2) 12345678910111213
相关知识
【机器学习】KNN算法实现鸢尾花分类
【机器学习】基于KNN算法实现鸢尾花数据集的分类
KNN鸢尾花分类
【机器学习】鸢尾花分类:机器学习领域经典入门项目实战
KNN算法实现鸢尾花数据集分类
原生python实现knn分类算法(鸢尾花数据集)
机器学习之KNN算法及模型评估:鸢尾花分类实验
用Python实现简单机器学习模型:以鸢尾花数据集为例
朴素贝叶斯算法对鸢尾花分类
基于机器学习的鸢尾花数据集的三分类算法的实现 C++
网址: Python与机器学习实战:KNN算法应用于鸢尾花分类 https://m.huajiangbk.com/newsview1675271.html
上一篇: 利用C4.5算法对鸢尾花分类 |
下一篇: 高斯朴素贝叶斯方法进行鸢尾花分类 |