初识Sklearn

笔记:机器学习入门---鸢尾花分类

Sklearn 本身就有很多数据库,可以用来练习。 以 Iris 的数据为例,这种花有四个属性,花瓣的长宽,茎的长宽,根据这些属性把花分为三类:山鸢尾花Setosa、变色鸢尾花Versicolor、韦尔吉尼娅鸢尾花Virginica
。sklearn iris数据包含植物学家已经进行了分类鉴定的150朵不同的鸢尾花,我们也可以对每一朵鸢尾花进行准确测量得到花萼花瓣的数据。

Code:

import numpy as np
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier

iris=datasets.load_iris()
iris_X=iris.data
iris_Y=iris.target
# print(iris.feature_names)
# print(iris.target_names)
# print(iris.target_names[iris.target[0]])
# print(iris_X)
print(iris_Y)

# 把150条数据分为训练集(135条)和测试集(条),其中的为 test_size=0.1,即测试集占总数据的10%
X_train, X_test, y_train, y_test = train_test_split(
    iris_X, iris_Y, test_size=0.1)

print(len(X_train))
print(len(X_test))

# 建立模型-训练-预测
# 定义模块方式 KNeighborsClassifier(), 用 fit 来训练 training data
knn = KNeighborsClassifier()
knn.fit(X_train, y_train)
print(knn.predict(X_test))
print(y_test)

Result:

[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2
 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
 2 2]
135
15
[1 0 1 1 0 2 1 0 2 1 2 1 2 2 1]
[1 0 1 1 0 2 1 0 2 1 2 1 2 2 1]
posted @ 2019-06-09 22:53  Rohmeng  阅读(177)  评论(0编辑  收藏  举报