机器学习之输入特征判断鸢尾花的种类

简介: 机器学习之输入特征判断鸢尾花的种类

保存算法模型

1、加载数据集

data = load_iris()

2、数据集划分

train_x,test_x,train_y,test_y = train_test_split(data['data'],data['target'])

3、特征工程(标准化)

std = StandardScaler()
train_x = std.fit_transform(train_x)
test_x = std.transform(test_x)

4、模型选择

可以选择不同的算法

逻辑回归

 lg = LogisticRegression()
 lg.fit(train_x,train_y)

KNN算法

lg = KNeighborsClassifier(n_neighbors=3)
 lg.fit(train_x,train_y)

朴素贝叶斯

 lg = MultinomialNB()
 lg.fit(train_x,train_y)

支持向量机

 lg = SVC()
 lg.fit(train_x,train_y)

决策树

 lg = DecisionTreeClassifier()
 lg.fit(train_x,train_y)

随机森林

lg = RandomForestClassifier()
lg.fit(train_x,train_y)

保存模型

joblib.dump(std,'lg_std.pkl')
joblib.dump(lg,'lg.pkl')

代码:

from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import precision_score,recall_score,f1_score
from sklearn.neighbors import KNeighborsClassifier
from sklearn.naive_bayes import GaussianNB,MultinomialNB,BernoulliNB
from sklearn.tree import DecisionTreeClassifier
from sklearn.svm import SVC
from sklearn.ensemble import RandomForestClassifier
import joblib
#1、加载数据集
data = load_iris()
#2、数据集划分
train_x,test_x,train_y,test_y = train_test_split(data['data'],data['target'])
#3、特征工程(标准化)
std = StandardScaler()
train_x = std.fit_transform(train_x)
test_x = std.transform(test_x)
#4、模型选择
# lg = LogisticRegression()
# lg.fit(train_x,train_y)

# lg = KNeighborsClassifier(n_neighbors=3)
# lg.fit(train_x,train_y)

# lg = MultinomialNB()
# lg.fit(train_x,train_y)

# lg = SVC()
# lg.fit(train_x,train_y)

# lg = DecisionTreeClassifier()
# lg.fit(train_x,train_y)

lg = RandomForestClassifier()
lg.fit(train_x,train_y)

joblib.dump(std,'lg_std.pkl')
joblib.dump(lg,'lg.pkl')

使用算法模型

import joblib
import numpy as np
x1 = input("请输入鸢尾花花萼的长度")
x2 = input("请输入鸢尾花花萼的宽度")
x3 = input("请输入鸢尾花花瓣的长度")
x4 = input("请输入鸢尾花花瓣的宽度")

x = np.array([x1,x2,x3,x4]).reshape(1,4)
std = joblib.load('lg_std.pkl')
x = std.transform(x)

lg = joblib.load('lg.pkl')

y = lg.predict(x)
print(y)
目录
相关文章
|
23天前
|
机器学习/深度学习 人工智能 自然语言处理
机器学习之线性回归与逻辑回归【完整房价预测和鸢尾花分类代码解释】
机器学习之线性回归与逻辑回归【完整房价预测和鸢尾花分类代码解释】
|
1月前
|
机器学习/深度学习 Python
【机器学习】包裹式特征选择之递归特征消除法
【机器学习】包裹式特征选择之递归特征消除法
160 4
|
1月前
|
机器学习/深度学习 数据采集 监控
机器学习-特征选择:如何使用递归特征消除算法自动筛选出最优特征?
机器学习-特征选择:如何使用递归特征消除算法自动筛选出最优特征?
71 0
|
19天前
|
机器学习/深度学习 数据可视化 算法
【python】Python大豆特征数据分析 [机器学习版一](代码+论文)【独一无二】
【python】Python大豆特征数据分析 [机器学习版一](代码+论文)【独一无二】
|
1月前
|
机器学习/深度学习 数据采集 数据可视化
【机器学习】样本、特征、标签:构建智能模型的三大基石
【机器学习】样本、特征、标签:构建智能模型的三大基石
214 0
|
1月前
|
机器学习/深度学习 数据挖掘 Python
机器学习-特征选择:如何使用互信息特征选择挑选出最佳特征?
机器学习-特征选择:如何使用互信息特征选择挑选出最佳特征?
35 1
|
1月前
|
机器学习/深度学习 算法
机器学习-特征选择:如何使用交叉验证精准选择最优特征?
机器学习-特征选择:如何使用交叉验证精准选择最优特征?
38 0
|
1月前
|
存储 机器学习/深度学习 Apache
Apache Hudi与机器学习特征存储
Apache Hudi与机器学习特征存储
29 0
|
1月前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】包裹式特征选择之递归特征添加法
【机器学习】包裹式特征选择之递归特征添加法
63 5
|
2月前
|
机器学习/深度学习 人工智能 异构计算
人工智能平台PAI问题之Tag类型特征等长如何解决
人工智能平台PAI是指阿里云提供的机器学习平台服务,支持建模、训练和部署机器学习模型;本合集将介绍机器学习PAI的功能和操作流程,以及在使用过程中遇到的问题和解决方案。
45 0

热门文章

最新文章