机器学习鸢尾花各种模型准确率对比
流程
获取数据集导入需要的包读取数据划分训练集和测试集调用各种模型比较准确率获取数据集
链接:https://pan.baidu.com/s/1RzZyXsaiJB3e611itF466Q?pwd=j484 提取码:j484 --来自百度网盘超级会员V1的分享 1234
导入需要的包
import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns import warnings warnings.filterwarnings('ignore') import matplotlib as mpl ## 设置属性防止中文乱码 mpl.rcParams['font.sans-serif'] = [u'SimHei'] mpl.rcParams['axes.unicode_minus'] = False # 导入各种模型 svm,knn,RidgeClassifier(),LogisticRegression(逻辑回归) # 支持向量机分类svc,最近邻居 knn,lr逻辑回归,rc # SVM=Support Vector Machine 是支持向量 # SVC=Support Vector Classification就是支持向量机用于分类,这里是分类问题所以引入SVC # SVR=Support Vector Regression.就是支持向量机用于回归分析 from sklearn.linear_model import LogisticRegression,RidgeClassifier from sklearn.svm import SVC from sklearn.neighbors import KNeighborsClassifier # 到这里四种方式引入完毕 # 引入sklearn的划分训练集和测试集合 from sklearn.model_selection import train_test_split # 计算模型准确率 from sklearn.metrics import accuracy_score`在这里插入代码片`
12345678910111213141516171819202122232425读取数据
iris_data=pd.read_csv('iris.csv', usecols=[ 1, 2, 3, 4,5]) 12
划分训练集和测试集
x = iris_data[['sepal_length', 'sepal_width', 'petal_length', 'petal_width']] r = iris_data['species'] x_train, x_test, r_train, r_test = train_test_split(x, r, random_state=0) 123
调用各种模型
SVC# svc训练 svm = SVC(C=1, kernel='linear') ## 模型训练 svm.fit(x_train, r_train) 12345 KNN
# knn训练 knn = KNeighborsClassifier(n_neighbors=1) # 模型训练 knn.fit(x_train, r_train) 1234
逻辑回归和RidgeClassifier
# 逻辑回归和RidgeClassifier训练 lr = LogisticRegression() rc = RidgeClassifier() # 模型训练 lr.fit(x_train, r_train) rc.fit(x_train, r_train) 123456
得到四个模型的测试集合准确度
# 得到4个模型测试集准确率 svm_score2 = accuracy_score(r_test, svm.predict(x_test)) lr_score2 = accuracy_score(r_test, lr.predict(x_test)) rc_score2 = accuracy_score(r_test, rc.predict(x_test)) knn_score2 = accuracy_score(r_test, knn.predict(x_test)) 12345678
print(svm_score2) print(lr_score2) print(rc_score2) print(knn_score2) #0.9736842105263158 #0.9736842105263158 #0.7631578947368421 #0.9736842105263158 12345678 绘图比较
# 绘图得到四个对比数据 x_tmp = [0,1,2,3] # y_score1 = [svm_score1, lr_score1, rc_score1, knn_score1] y_score2 = [svm_score2, lr_score2, rc_score2, knn_score2] plt.figure(facecolor='w') # plt.plot(x_tmp, y_score1, 'r-', lw=2, label=u'训练集准确率') plt.plot(x_tmp, y_score2, 'g-', lw=2, label=u'测试集准确率') plt.xlim(0, 3) plt.ylim(np.min((np.min(y_score1), np.min(y_score2)))*0.9, np.max((np.max(y_score1), np.max(y_score2)))*1.1) plt.legend(loc = 'lower right') plt.title(u'鸢尾花数据不同分类器准确率比较', fontsize=16) plt.xticks(x_tmp, [u'SVM', u'Logistic', u'Ridge', u'KNN'], rotation=0) plt.grid() plt.show() 123456789101112131415
相关知识
【机器学习】鸢尾花分类:机器学习领域经典入门项目实战
机器学习(五) 鸢尾花案例调优
机器学习入门实践——鸢尾花分类
【机器学习】Sklearn 集成学习
【机器学习】应用KNN实现鸢尾花种类预测
机器学习之KNN算法及模型评估:鸢尾花分类实验
【机器学习】鸢尾花分类
机器学习项目实践——鸢尾花分类
机器学习鸢尾花数据集
机器学习算法
网址: 机器学习鸢尾花各种模型准确率对比 https://www.huajiangbk.com/newsview1354206.html
上一篇: 鸢尾花数据集分类 |
下一篇: 园林花卉学思维导图 |
推荐分享

- 1君子兰什么品种最名贵 十大名 4012
- 2世界上最名贵的10种兰花图片 3364
- 3花圈挽联怎么写? 3286
- 4迷信说家里不能放假花 家里摆 1878
- 5香山红叶什么时候红 1493
- 6花的意思,花的解释,花的拼音 1210
- 7教师节送什么花最合适 1167
- 8勿忘我花图片 1103
- 9橄榄枝的象征意义 1093
- 10洛阳的市花 1039