鱼C论坛

 找回密码
 立即注册
查看: 1720|回复: 0

[技术交流] 机器学习系列------投票分类器

[复制链接]
发表于 2018-6-21 06:12:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
        这次用一个新的数据,也是sklearn自带的数据库make_moons,这个数据集 是有许多个点组成的,有的点是第一类,有的点是第二类,输出项只有0和1两类,不像鸢尾花是3个种类,所以相对来说比较简单,我们先把数据分为训练集和测试集:
from sklearn.datasets import make_moons
from sklearn.model_selection import StratifiedShuffleSplit
from sklearn.model_selection import StratifiedShuffleSplit

X,y=make_moons(n_samples=500, shuffle=True, noise=0.3, random_state=42)

split=StratifiedShuffleSplit(n_splits=1,test_size=0.2,random_state=42)
for train_index,test_index in split.split(X,y):
    X_train=X[train_index]
    X_test=X[test_index]
    y_train=y[train_index]
    y_test=y[test_index]
        然后做一个投票分类器的模型:
from sklearn.ensemble import RandomForestClassifier
from sklearn.ensemble import VotingClassifier
from sklearn.linear_model import LogisticRegression
from sklearn.svm import SVC

log_clf=LogisticRegression()
rnd_clf=RandomForestClassifier()
svm_clf=SVC(probability=True)

voting_clf=VotingClassifier(
    estimators=[('lr',log_clf),('rf',rnd_clf),('svc',svm_clf)],
    voting='soft'
)
voting_clf.fit(X_train,y_train)
        投票分类器是由许多个分类器组合成的,精确度和稳定性会有所提高,我们看看预测数据:
from sklearn.metrics import accuracy_score
for clf in (log_clf,rnd_clf,svm_clf,voting_clf):
    clf.fit(X_train,y_train)
    y_pred=clf.predict(X_test)
    print(clf.__class__.__name__,accuracy_score(y_test,y_pred))
        以上为4种分类器的预测得分,输出为:
LogisticRegression 0.81
RandomForestClassifier 0.88
SVC 0.9
VotingClassifier 0.88
        可以看出第四种是投票分类器,虽然分数不是最高但是会很稳定,他是对其他分类器的综合评价得分。还有一种综合型的分类器也很好用:
from sklearn.ensemble import BaggingClassifier
from sklearn.tree import DecisionTreeClassifier

bag_clf=BaggingClassifier(
    DecisionTreeClassifier(),n_estimators=500,
    max_samples=100,bootstrap=True,n_jobs=-1
)
        看看评分:
bag_clf.fit(X_train,y_train)
y_pred=bag_clf.predict(X_test)
accuracy_score(y_test,y_pred)
        输出为:0.93000000000000005。这个分数又高又稳定。

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-22 09:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表