Task5 模型融合

杂乱!!

stacking的理解:
  1. 多个数据的和在一起——>预测新的内容
  2. 还有一种结合策略是使用另外一个机器学习算法来将个体机器学习器的结果结合在一起,这个方法就是Stacking。
  3. 算法示意:在这里插入图片描述

(思路:不断的train test 与predict进行比较)

如何使得后期的模型拟合更好:
5. 次级模型尽量选择简单的线性模型
6. 利用K折交叉验证
在这里插入图片描述
个人理解:
运用同一个组,分别取组内其余数据(n-1)作为原始值,一组数据作为predict的值,(进行n次)——》 最后得到n个predict——》取average——》做多次,运用最初说到的整合来进行推测。

融合函数:代码示例
在这里插入图片描述

voting投票机制:

硬投票:
对多个模型直接进行投票,不区分模型结果的相对重要度,最终投票数最多的类为最终被预测的类
在这里插入图片描述
软投票:
和硬投票原理相同,增加了设置权重的功能,可以为不同模型设置不同权重,进而区别模型不同的重要度在这里插入图片描述
在末尾数据上看到了四种不同的答案:
XGBBoosting
random forest
SVM
Ensemble
没有见过SVM&Ensemble

SVM:

支持向量机(Support Vector Machine)是Cortes和Vapnik于1995年首先提出的,它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中
详细学习链接
link

Ensemble:

Ensemble方法是监督式学习的一种,训练完成之后就可以看成是单独的一个”假设”(或模型),只是该”假设”不一定是在原”假设”空间里的。
我个人觉得不错的链接学习:
link

Blending:

(对于学习链接上的复制,觉得很好的)
Blending,其实和Stacking是一种类似的多层模型融合的形式

其主要思路是把原始的训练集先分成两部分,比如70%的数据作为新的训练集,剩下30%的数据作为测试集。

在第一层,我们在这70%的数据上训练多个模型,然后去预测那30%数据的label,同时也预测test集的label。

在第二层,我们就直接用这30%数据在第一层预测的结果做为新特征继续训练,然后用test集第一层预测的label做特征,用第二层训练的模型做进一步预测

其优点在于:

1.比stacking简单(因为不用进行k次的交叉验证来获得stacker feature)
2.避开了一个信息泄露问题:generlizers和stacker使用了不一样的数据集
缺点在于:

1.使用了很少的数据(第二阶段的blender只使用training set10%的量)
2.blender可能会过拟合
3.stacking使用多次的交叉验证会比较稳健 ‘’’

在这里插入图片描述

加权融合的代码:

在这里插入图片描述
嗷,突然发现现在已经是最后一次打卡了
· 感觉这样的大强度的关于数据类型的代码我还是真的没有接触过,在很多的信息点上我都只是能学习一下比较basic的点,笔记也会比较着重知识点。
· 我也许先得把自己的基础代码搞好之后再回来看这次的整个模型系统,亲手实操,才有更多自己的看法
· 嗷,虽然对我来说还是蛮难的,尤其有时候偷看别人的学习笔记上,都发现大家都有类似的经历也有自己独特的感受,感觉自己有很多需要学习的,我也偷偷码下这次的笔记,(希望datawhale不要删原始记录!)
· (这次的4次打卡,还是让我对于数据之类的产生大量的兴趣,学校的专业太过于文科,还是喜欢这样逻辑性强的东西!)
· 嗷,谢谢datawhale这次学习的帮助!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python模型融合是一种将多个模型组合在一起以提高整体表现的技术。在机器学习比赛中,特别是团队参与的比赛中,模型融合是一个重要的手段,可以在模型相差较大但表现良好的情况下显著提升结果。 在Python中,有几种常见的模型融合方法。其中一种是投票法(Voting),它通过集成多个模型预测结果,并根据多数投票的原则来确定最终的预测结果。在使用Python进行投票法模型融合时,可以使用`sklearn.ensemble.VotingClassifier`类来实现。 另一种常见的模型融合方法是堆叠法(Stacking),它通过训练一个元模型融合多个基模型预测结果。在Python中,可以使用`mlxtend.classifier.StackingClassifier`类来实现堆叠法模型融合。 除了投票法和堆叠法,还有其他的模型融合方法,如加权平均、Bagging等。这些方法都可以在Python中通过相应的库和函数来实现。选择何种方法取决于具体的问题和数据集的特点。 总结起来,Python模型融合是一种将多个模型组合在一起以提高整体表现的技术。投票法和堆叠法是常见的模型融合方法,在Python中可以使用相应的库和函数来实现。具体选择哪种方法需要根据问题和数据集的特点来决定。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [模型融合](https://blog.csdn.net/Lemon_pudding/article/details/108813638)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Python数据科学竞赛模型融合](https://blog.csdn.net/qq_43240913/article/details/110822100)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值