首页 > 分享 > 以鸢尾花分类三个模型(LR、SVC、RF)融合硬投票与软投票

以鸢尾花分类三个模型(LR、SVC、RF)融合硬投票与软投票

文章目录 前言1软投票与硬投票区别2鸢尾花分类举例2.1硬投票2.2软投票 总结

前言

什么是AI?
The theory and development of computer systems able to perform tasks normally requiring human intelligence.(–Oxford Dictionary)
Using data to solve problems.(–cy)

1软投票与硬投票区别

在这里插入图片描述

2鸢尾花分类举例

2.1硬投票

from sklearn.datasets import load_iris #数据集导入 iris=load_iris() x=iris.data y=iris.target#数据特征和标签已经导入了 #用3个模型 训练一下 #3个模型训练 from sklearn.linear_model import LogisticRegression from sklearn.svm import SVC from sklearn.ensemble import RandomForestClassifier model1=LogisticRegression(C=0.1) model2=SVC(C=0.1,probability=True) model3=RandomForestClassifier(n_estimators=10,max_depth=2) #投票 from sklearn.ensemble import VotingClassifier from sklearn.model_selection import cross_val_score#做一下交叉验证 print("硬投票:")#下面这个参数voting='hard' ensemble_model=VotingClassifier(estimators=[('LR',model1),('SVC',model2),('RF',model3)],voting='hard') for model,label in zip([model1,model2,model3,ensemble_model],['LR','SVC','RF','Voting']): scores=cross_val_score(model,x,y,cv=5,scoring='accuracy')#交叉验证 print('{}准确率平均数:{}'.format(label,scores.mean()))

123456789101112131415161718192021

硬投票:
LR准确率平均数:0.9466666666666667
SVC准确率平均数:0.9200000000000002
RF准确率平均数:0.9399999999999998
Voting准确率平均数:0.96
(从结果看出,投票之后的分数确实有提升)

2.2软投票

from sklearn.datasets import load_iris #数据集导入 iris=load_iris() x=iris.data y=iris.target#数据特征和标签已经导入了 #用3个模型 训练一下 #3个模型训练 from sklearn.linear_model import LogisticRegression from sklearn.svm import SVC from sklearn.ensemble import RandomForestClassifier model1=LogisticRegression(C=0.1) model2=SVC(C=0.1,probability=True) model3=RandomForestClassifier(n_estimators=10,max_depth=2) #投票 from sklearn.ensemble import VotingClassifier from sklearn.model_selection import cross_val_score#做一下交叉验证 print("软投票:")#下面这个参数voting='soft' ensemble_model=VotingClassifier(estimators=[('LR',model1),('SVC',model2),('RF',model3)],voting='soft') for model,label in zip([model1,model2,model3,ensemble_model],['LR','SVC','RF','Voting']): scores=cross_val_score(model,x,y,cv=5,scoring='accuracy')#交叉验证 print('{}准确率平均数:{}'.format(label,scores.mean()))

123456789101112131415161718192021

软投票:
LR准确率平均数:0.9466666666666667
SVC准确率平均数:0.9200000000000002
RF准确率平均数:0.9533333333333334
Voting准确率平均数:0.96
(每次运行的结果都不一样,不一定有提升)

总结

(如果您发现我写的有错误,欢迎在评论区批评指正)

相关知识

第一个机器学习项目(鸢尾花分类问题)
智能植物浇水系统开发:投票自动化项目
AI技术为生物多样性保护提供支持
基于Logistic回归模型对鸢尾花数据集的线性多分类
作业5:SVM实现鸢尾花分类
使用神经网络模型进行鸢尾花分类 matlab神经网络分类鸢尾花
鸢尾花(Iris)数据集入门
5 MLP版本的鸢尾花分类任务
Knn算法实现鸢尾花分类
用svm进行鸢尾花分类

网址: 以鸢尾花分类三个模型(LR、SVC、RF)融合硬投票与软投票 https://m.huajiangbk.com/newsview839756.html

所属分类:花卉
上一篇: 放榜啦 | 征文投票结果新鲜出炉
下一篇: 集成学习 (投票分类器 & ba