作家
登录

Kaggle机器学习之模型融合(stacking)心得

作者: 来源: 2017-10-09 14:04:11 阅读 我要评论


Kaggle机械进修之模型融合(stacking)心得

此文道出了本人进修Stacking入门级应用的心路过程。

在进修过程中感激@贝尔塔的模型融合办法,以及如安在 Kaggle 首战中进入前 10%这篇文┞仿(作者是章凌豪)。对于两位供给的信息,感激不尽。同时还有Kaggle上一些关于ensemble的文┞仿和代码,比如这篇。

本文实用于被stacking熬煎的逝世去活来的新手,在网上为数不多的stacking内容里,我已经假设你早已经看过了上述所提到的那几篇有效的文┞仿了。然则,看完之后心坎照样卧槽的。我欲望下面的内容能成为,你在进修stacking的曲折门路上的一个小火把,给你供给一些微弱的光亮。

本文以Kaggle的Titanic(泰坦尼克猜测)入门比赛来讲解stacking的应用(两层!)。

数据的行数:train.csv有890行,也就是890小我,test.csv有418行(418小我)。

而数据的列数就看你保存了若干个feature了,因人而异。我本身的train保存了 7+1(1是预摆设)。

在网上为数不多的stacking内容里,信赖你早看过了这张图:

这张图,如不雅你能一会儿就能看懂,那就OK。

如不雅一会儿看不懂,就麻烦了棘在接下来的一段时光内,你就会卧槽卧槽地持续懵逼……

因为这张图极具‘误导性’。(留意!我没嗣魅这图是错的,尽管它就是错的!!!然则在网上为数不多教授教化里有张无码图就不错啦,感恩吧,我这个小弱鸡)。

我把图改了一下:

对于每一轮的 5-fold,Model 1都要做满5次的练习和猜测。

Train Data有890行。(请对应图中的上层部分)

每1次的fold,都邑生成 713行 小train, 178行 小test。我们用Model 1来练习 713行的小train,然后猜测 178行 小test。猜测的结不雅是长度为 178 的猜测值。

如许的动作走5次! 长度为178 的猜测值 X 5 = 890 猜测值,刚好和Train data长度吻合。这个890猜测值是Model 1产生的,我们先存着,因为,一会让它将是第二层模型的练习来源。

重点:这一步产生的猜测值我们可以转成 890 X 1 (890 行,1列),记作 P1 (大年夜写P)

接着说 Test Data 有 418 行。(请对应图中的基层部分,对对对,绿绿的那些框框)

每1次的fold,713行 小train练习出来的Model 1要去猜测我们全部的Test Data(全部!因为Test Data没有参加5-fold,所以每次都是全部!)。此时,Model 1的猜测结不雅是长度为418的猜测值。

如许的动作走5次!我们可以获得一个 5 X 418 的猜测值矩阵。然后我们根据行来就平均值,最后获得一个 1 X 418 的平均猜测值。

重点:这一步产生的猜测值我们可以转成 418 X 1 (418行,1列),记作 p1 (小写p)

走到这里,你的第一层的Model 1完成了它的任务。

第一层还会有其他Model的,比如Model 2,同样的走一遍, 我们有可以获得 890 X 1 (P2) 和 418 X 1 (p2) 列猜测值。

Titanic 栗子:

如许吧,假设你第一层有3个模型,如许你就会获得:

来自5-fold的猜测值矩阵 890 X 3,(P1,P2, P3) 和 来自Test Data猜测值矩阵 418 X 3, (p1, p2, p3)。

—————————————–

到第二层了………………

来自5-fold的猜测值矩阵 890 X 3 作为你的Train Data,练习第二层的模型

来自Test Data猜测值矩阵 418 X 3 就是你的Test Data,悠揭捉?练好的模型来猜测他们吧。

—————————————

最后 ,放出一张Python的Code,在网上为数不多的stacking内容里, 这个几行的code你也早就看过了吧,我之前一向卡在这里,如今加上一点点注解,欲望对你有赞助:

【编辑推荐】

  1. 辨认王者豪杰 – 一个PM的机械进修入门之旅
  2. cnBeta推出三款新机械进修对象 赞助开辟者打造AI应用
  3. 资本 | 8张思维导图帮你梳理深度进修&机械进修多个常识点
  4. 若何对待「机械进修不须要数学,很多算法封装好了,调个包久煨」这种说法?
  5. 解决机械进修问题有通法!看这一篇就够了!
【义务编辑:庞桂玉 TEL:(010)68476606】

  推荐阅读

  每个程序员都应该知道的基础数论

这篇文┞仿评论辩论了数论中每个法度榜样员都应当知道的几个重要概念。本文的内容既不是对数论的入门介绍,也不是针对数论中任何特定算法的评论辩论,而只是想要做为数论的一篇参考。如不>>>详细阅读


本文标题:Kaggle机器学习之模型融合(stacking)心得

地址:http://www.17bianji.com/lsqh/37733.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)