前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python机器学习之旅|手把手带你探索IRIS数据集

Python机器学习之旅|手把手带你探索IRIS数据集

作者头像
刘早起
发布2020-05-12 09:31:31
5720
发布2020-05-12 09:31:31
举报
文章被收录于专栏:早起Python

前言

大家好,关于数据挖掘或者机器学习的理论我想大家应该都已经了解很多,而数据挖掘的工具例如PandasNumPySklearn等在历史文章都有所介绍,因此今天我们将开始第二个案例实战也是使用非常多的IRIS数据集:根据花瓣和花萼的长宽预测鸢尾花的种类。

加载数据

首先我们打开Jupyter Notebook导入相关库

代码语言:javascript
复制
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn import model_selection
from sklearn.metrics import accuracy_score
from sklearn.linear_model import LogisticRegression
from sklearn.linear_model import LinearRegression
from sklearn.ensemble import RandomForestClassifier
from sklearn.neighbors import KNeighborsClassifier
from sklearn.svm import SVC
from pandas.plotting import scatter_matrix

接下来就是加载数据集,虽然在Sklearn库中内置了IRIS数据集,但是在这我使用处理好的数据

可以看到我们一共有150条数据,每条数据的前四列对应是花萼长度,花萼宽度,花瓣长度,花瓣宽度,最后一列就是花的种类,现在我们就需要通过这4个特征预测鸢尾花卉属于(iris-setosa/iris-versicolor/iris-virginica)中的哪一品种。

探索性分析

本节对数据集进行一些探索性分析,首先查看每一类的情况

可以看到我们的数据很完整,一共150条数据每类50条,再查看数据的描述统计

接着我们通过箱线图直方图来观察数据的最值,中位数和偏差与数据分布

进一步,我们可以绘散点图来观察四个变量之间的关联

可以看到有些变量之前有着明显的相关性,因此我们可以进行预测

建模分类

现在开始建模分类,和之前的例子一样,我们将数据集划分为训练集和测试集。因为我们的数据集只有150条记录,所以将使用120条记录来训练模型,剩下的30条记录用来评估模型

代码语言:javascript
复制
array = data.values
X = array[:,0:4]
Y = array[:,4]
x_train, x_test, y_train, y_test = model_selection.train_test_split(X, Y, test_size=0.2, random_state=7)

用于分类的模型很多,本文将使用以下四种经典算法来建模并进行评估:

  • K近邻(KNN)
  • 支持向量机(SVM)
  • 随机森林(RF)
  • 逻辑回归(LR)

关于这几种算法的理论并不会在本文详细展开,事实上可以通过百度轻松查到每一种算法的推导与应用,你应该了解后再往下进行。


OK,现在我们直接来实现,在Python中实现并不困难,以KNN为例,仅需4行代码即可完成训练模型和评估

代码语言:javascript
复制
model = KNeighborsClassifier()
model.fit(x_train,y_train)
predictions = model.predict(x_test)
print(accuracy_score(y_test, predictions))

其他三种算法的实现过程也是类似的,最后我们来看来四种算法的正确率

从结果可以看到,KNN的效果最好为90%,而基于决策树的随机森林表现较差为83.3%,当然由于随机性每次的结果可能不同,感兴趣的读者可以多试几次。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 早起Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 加载数据
  • 探索性分析
  • 建模分类
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档