集成学习

本文介绍了集成学习的概念及其在机器学习中的应用。通过结合多种算法的预测结果,采用少数服从多数的原则来提高整体的预测准确性。文章展示了如何手动实现集成学习,并使用sk-learn库中的VotingClassifier来简化这一过程。
摘要由CSDN通过智能技术生成

我们学习了很多机器学习算法,对应不同算法给出的结果不同,这种情况下我们听那个算法的结果呢?

我们完全可以把多个算法集中起来,让不同的算法对同一个问题都进行运算,看看结果,最终少数服从多数


生活中的集成学习:买东西找别人推荐,我们找很多人推荐,然后看他们投票,因为每一个人经历不同,视角不同,他们给出的决策原因就不同,我们集成更多人的意见,通常来讲,最终得到的决策很有可能最合适

病情确诊:我们去医院得到检查报告,能够得到患有什么疾病,需要有经验的医生来进行最终确诊,通常对于一些比较大的疾病来说我们就倾向多跑几个医院,多找几个大夫,对不同的人看看同一份检查报告的结果是怎么样的,对于重大疾病医院也会组织专家会诊来集合判断,最终得到结果


投票:少数服从多数


我们自己写一个集成学习代码并不难,我们选择几个算法,对同一个数据运行一下,最终判断少数服从多数


sk-learn 给出了结构 Voting Classifier


对于不同算法进行投票的分类器

使用这样的方式我们就可以很容易实现集成学习



我们给n_samples = 500, 默认是100

我们需要量大一些

noise=0.3这个相对较大,我们的数据点相应比较乱

随机种子random_state = 42


我们加载后分成训练和测试

我们先用逻辑回归


发现是0.863999999

我们使用SVM


我们使用决策树





我们现在用三种分类器来对其预测


不难理解这种方式就得到了投票


这是一个布尔向量

我们也可以换成整形向量


我们的y_predict,先看看10个,然后在看看得分


我们发现比三个都多

集成学习提高了我们继承准确度


这是我们手动的,SK-learn有接口


ensemble learning就是集成学习的意思

estimartors传入投票的算法

第一个元素是分类器,第二个元素是实例化


第二个参数voting='hard'

我们学习的这种方式就是hard,相应的还有soft



实例化了以后直接fit就好勒


我们看看评分


和之前手动是一样了0.896000000000000002


不过我们没有对投票的算法调参,我们可以先调参再一起使用来看最终的结果

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值