基于LogisticRegression的鸢尾花分类

简介: LogisticRegression中文叫做逻辑回归,是一种基础、常用的分类方法。2018年8月24日笔记1.数据集Iris(鸢尾花)数据集是多重变量分析的数据集。

LogisticRegression中文叫做逻辑回归,是一种基础、常用的分类方法。

2018年8月24日笔记

1.数据集

Iris(鸢尾花)数据集是多重变量分析的数据集。
数据集包含150行数据,分为3类,每类50行数据。
每行数据包括4个属性:Sepal Length(花萼长度)、Sepal Width(花萼宽度)、Petal Length(花瓣长度)、Petal Width(花瓣宽度)。可通过这4个属性预测鸢尾花属于3个种类的哪一类。
样本数据局部截图:

img_6d28d040e19ed7ed2c87d8b48d20b8c7.png
Iris.png

获取150个样本数据的3种方法:
1.完整的样本数据Iris.csv文件下载链接: https://pan.baidu.com/s/16N0ivGWFrmc73ustPLWPZA 密码: ugun
2.数据集链接: https://gist.github.com/curran/a08a1080b88344b0c8a7
3.在sklearn的skleanrn库中自带了iris数据集,可以导入sklearn库的datasets文件,调用datasets文件中的load_iris方法就可以获得iris数据集。
本文采用的是第3种方法,直接从sklearn库中获取数据。

2.观察数据

鸢尾花数据集详细中文解释链接:http://sklearn.apachecn.org/cn/0.19.0/datasets/index.html#iris
网页中内容如下图所示:

img_bc46758276b75c0deb80660f50011936.png
image.png

查看数据集对象的属性和方法,代码如下:

from sklearn.datasets import load_iris
dir(load_iris())

上面一段代码的运行结果如下:

['DESCR', 'data', 'feature_names', 'target', 'target_names']

查看数据集的描述,即打印数据集对象的DESCR属性,代码如下:

from sklearn.datasets import load_iris
print(load_iris().DESCR)

与上图中文文档的图对照阅读,可以加强对数据集的理解。
上面一段代码的运行结果如下图所示:


img_c4549b60bd49dc052be41632731a0e29.png
image.png

将150个样本4个特征组成的矩阵赋值给变量X,变量X为大写字母的原因是数学中表示矩阵使用大写字母。
将150个样本1个预测目标值组成的矩阵赋值给变量y。
载入数据集的代码如下:

from sklearn.datasets import load_iris
X = load_iris().data
y = load_iris().target

3.逻辑回归模型

利用交叉验证方法得出模型得分。
代码如下:

from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import cross_val_score
from sklearn.model_selection import ShuffleSplit

logisticRegression_model = LogisticRegression()
cv_split = ShuffleSplit(n_splits=5, train_size=0.7, test_size=0.2)
score_ndarray = cross_val_score(logisticRegression_model, X, y, cv=cv_split)
print(score_ndarray)
score_ndarray.mean()

上面一段代码的运行结果如下图所示:


img_2877de3a351b9339aa8559c03f3a7896.png
交叉验证.png
目录
相关文章
|
5月前
鸢尾花数据集分类问题(3)
鸢尾花数据集分类问题
31 2
|
5月前
鸢尾花数据集分类问题(1)
鸢尾花数据集分类问题
35 1
|
5月前
|
机器学习/深度学习
鸢尾花数据集分类问题(2)
鸢尾花数据集分类问题
37 1
|
5月前
鸢尾花数据集分类问题(4)
鸢尾花数据集分类问题
26 0
|
机器学习/深度学习 移动开发 资源调度
机器学习算法(二): 基于鸢尾花数据集的朴素贝叶斯(Naive Bayes)预测分类
机器学习算法(二): 基于鸢尾花数据集的朴素贝叶斯(Naive Bayes)预测分类
|
机器学习/深度学习 Python
【统计学习方法】K近邻对鸢尾花(iris)数据集进行多分类
【统计学习方法】K近邻对鸢尾花(iris)数据集进行多分类
238 0
|
机器学习/深度学习 数据可视化
随机森林和KNN分类结果可视化(Sklearn)
随机森林和KNN分类结果可视化(Sklearn)
250 0
|
机器学习/深度学习 Python
【统计学习方法】感知机对鸢尾花(iris)数据集进行二分类
【统计学习方法】感知机对鸢尾花(iris)数据集进行二分类
724 0
【统计学习方法】感知机对鸢尾花(iris)数据集进行二分类
|
自然语言处理 算法 数据可视化
基于 sklearn 的鸢尾花分类
基于 sklearn 的鸢尾花分类
262 0
基于 sklearn 的鸢尾花分类
|
机器学习/深度学习 人工智能 算法
基于sklearn决策树算法对鸢尾花数据进行分类
基于sklearn决策树算法对鸢尾花数据进行分类
367 0
基于sklearn决策树算法对鸢尾花数据进行分类