本文转载自量子位,禁二次转载

天天跟数据打交道的研究人员,都有一个成为Kaggle顶级大师(Grandmaster)的梦想。

但每年的Kaggle参赛团队众多,通常一个项目都有数千人至上万人报名,如何在其中脱颖而出?

最近,自动化数据准备及协作平台Dataland的联合创始人Lavanya Shukla,在博客上分享了她在Kaggle竞赛中最终成为0.3%的获奖经验。

小姐姐在推特中表示,这份攻略里全都是干货,网友纷纷为其点赞。有网友表示,这份攻略非常棒,才知道脊回归如此强大!

*先放上原文地址:*

*https://www.kaggle.com/lavanyashukla01/how-i-made-top-0-3-on-a-kaggle-competition*

量子位将小姐姐的干货要点翻译整理如下,长文干货预警,建议先码后看:


开始一场数据科学竞赛是一项庞大的工作,所以我写了这篇在Kaggle经典房价预测题目(Advanced Regression Techniques)中获得TOP 0.3%成绩的比赛经验。

欢迎大家fork这份干货,也欢迎在实际问题中亲自实践这些代码。

祝你好运!

目标

  • 数据集中每一行都描述了房子的特征。

  • 我们的目标是根据这些特征,预测销售价格。

  • 评估模型好坏是根据模型预测的销售价格与实际销售价格之间的均方根误差(RMSE)。将RMSE转换成对数尺度,确保预测昂贵房屋和便宜房屋时的误差会对产生的分数影响相当。

模型训练过程中的关键特性

  • 交叉验证:使用12折交叉验证。

  • 模型:每次交叉验证拟合7个模型(包括ridge、svr、gradient boost、random forest、xgboost、lightgbm regressors等)

  • 堆叠:此外,我用xgboost训练了一个元StackingCVRegressor。

  • 混合:所有训练过的模型在不同程度上都存在对训练数据的过拟合。因此,为了做出最终的预测,我将它们的预测混合在一起以得到更可靠的预测。

模型表现

从下图可以看出,混合模型的RMSLE(均方根对数误差)为0.075,远优于其他模型。

这是我用来做最终预测的模型:

现在我们已经知道了一些信息,可以开始着手了:

EDA

目标

数据集中每一行都描述了房子的特征。

我们的目标是根据这些特征预测销售价格。

销售价格:我们打算预测的变量

特征处理

我们先将数据集中特征进行可视化:

并绘制出这些特征之间的关系,以及它们与销售价格的关系。

让绘制销售价格与数据集中的一些特性之间的关系。

特征工程

来看一下房子售价的分布情况。

可以看出,销售价格在右边倾斜,这是因为大多数ML模型不能很好地处理非正态分布数据。

我们可以应用log(1+x)变换来修正倾斜。

再画一次销售价格的分布:

现在,销售价格是正态分布的了。

添补缺失值

现在,我们可以为每个特性添加缺失的值。

这样一来,这不就没有缺失值了……

解决倾斜特征

我们用scipy函数boxcox1p来计算Box-Cox转换。我们的目标是找到一个简单的转换方式使数据规范化。

现在,所有的特种看起来都是正态分布的了。

创造有趣的特征

ML模型很难识别更复杂的模式,所以我们可以基于对数据集的直觉创建一些特征来帮助我们的模型,比如,每个房子地板总面积、浴室和门廊面积。

特征转换

我们通过计算数值特征的对数和平方变换来创建更多的特征。

编码分类特征

因为大多数模型只能处理数字特征,所以采用数字编码分类特征。

重新创建训练和测试集

可视化我们要训练模型的一些特性。

训练模型

设置交叉验证并定义错误度量

设置模型

训练模型

获得每个模型的交叉验证分数。

混合模型逼格得到预测值

确定性能最佳的模型

从上图中我们可以看出,混合模型的RMSLE为0.075,远远优于其他模型。这是我用来做最终预测的模型。

提交预测值

传送门

文章原文:
https://www.kaggle.com/lavanyashukla01/how-i-made-top-0-3-on-a-kaggle-competition

小姐姐的博客:
https://lavanya.ai/

致转行AI的在校大学生的一封信

【AI自学】 完备的 AI 学习路线,最详细的资源整理!

转行AI需要看的一些文章

转行学AI,具体细分方向如何选,来自一线工程师的感悟

【中美之争】其实已经失去了悬念 (深度好文)|湾区人工智能

【送书PDF】Python编程从入门到实践

Python从入门到精通,深度学习与机器学习资料大礼包!

【免费】某机构最新3980元机器学习/大数据课程高速下载,限量200份

长按扫码撩海归

觉得不错, 请随意转发,麻烦点个在看!

Kaggle 美女小姐姐自述:我是怎么成为竞赛中 Top 0.3% 的?相关推荐

  1. Kaggle大牛小姐姐自述:我是怎么成为竞赛中Top 0.3%的 | 干货攻略

    原文:Lavanya Shukla 铜灵 编译整理 量子位 出品 | 公众号 QbitAI 天天跟数据打交道的研究人员,都有一个成为Kaggle顶级大师(Grandmaster)的梦想. 但每年的Ka ...

  2. 良许被百万大V安排得服服帖帖,还跟美女小姐姐合影了……

    大家好,我是良许. 很多人问我说,良许,你在工作之余还花这么多时间精力去写公众号运营自媒体,到底是为了什么? 其实原因很简单,就是想做个副业,万一到了 35 岁真的失业了,我至少还有另外一份收入,不至 ...

  3. 从小开始学编程的小姐姐自述:我变成更好程序员的三点心得体会

    Keri Savoca 发在 Medium  量子位 报道 | 公众号 QbitAI 编者按:最近,国外一名小姐姐分享了自己的编程学习经验,引起了不少关注.她名为Keri Savoca,小时候就学了H ...

  4. 华为美女小姐姐,被外派墨西哥后,发生的事...

    Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 作者丨潘昱 来源丨<华为人>.心声社区 ...

  5. Python爬虫,知乎问答美女小姐姐图片与文字内容采集爬虫

    谢邀,人在美国,刚下飞机! 上面这段几乎是逛知乎社区的大(比)佬耳熟能详的段子,从几何起,知乎也已经蜕变成最大的段子,灌水,钓鱼贴的集合区,质量度远远没有以前那么高了,当然其中还有河蟹神兽出没,莫(牛 ...

  6. 【python】美女小姐姐无码壁纸高清下载,诱惑来袭

    目录 前言 环境使用: 扩列知识点 代码展示: 尾语

  7. Web自动化神器,批量下载小姐姐美图,可直接导入使用

    大家好,我是小碗汤,今天为大家分享一款前端自动化操作神器: Automa 文末有流程图获取方式,可自行导入享用. Automa介绍 它是一款 Chrome 插件,即使你不会写代码,也能按照自己的需求, ...

  8. iframe 返回上一页_寻找高颜值小姐姐难吗!直到我在Github上发现了这个Python库

    Python真的是无所不能,有同学说万能的Python,其实就是指的Python的库真的很多很多!坐地铁的时候,经常看到周围人刷抖音的,看短视频.抖音上面的美女小姐姐真的是很多,今天在Github上一 ...

  9. 小姐姐让我帮忙修照片

    关注下方公众号,分享硬核知识 作者 | 小K 出品 | 公众号:小K算法 (ID:xiaok365) 01 故事起源 小姐姐听说我是程序员... 02 分析 这是原图. 解决问题的第一步肯定是先找出问 ...

最新文章

  1. php常用20函数,PHP常用函数
  2. spring中aop设计与实现
  3. c语言中把一个数缩小十倍_C语言实例第04期,在控制台打印出著名的杨辉三角...
  4. 国内首家!平头哥宣布开源RISC-V内核MCU芯片设计平台;IBM驳斥谷歌量子霸权主张;Facebook将赔偿350亿美元……...
  5. CRM系统-----学员管理系统---admin自定义开发3
  6. lj245a引脚功能图_JRC4558中文资料|引脚图及功能|应用电路图
  7. 微信小程序 弹出确定取消框
  8. 武汉大学计算机学院csc,2018年春武汉大学CSC公派出国留学录取名单
  9. 蓝牙键盘常用快捷键记录
  10. NDoc 用户指南(一)
  11. 上海职称英语计算机取消,上海地区职称英语考试是不是取消了?
  12. Win10下Windows徽标键键盘快捷键大全
  13. 不可错过的爬虫实例(一):教你爬取优美图库
  14. C#工控上位机实例_南京物流仓库【仓库物流】_智能云仓储库存wms管理分配货_电子标签价签拣货系统_工控erp上位机软件开发设计...
  15. 云控系统机房搭建为什么用到网络交换机?
  16. Python爬取豆瓣短评
  17. 【特色小镇】智慧小镇:小镇建设总体规划方案
  18. 超级简单的SASS教程和使用指南
  19. .Cisco 路由器、交换机密码恢复
  20. 中小型园区网络的设计与实现 (二)

热门文章

  1. 事务处理与SQL查询
  2. 【LeetCode】剑指 Offer 32 - II. 从上到下打印二叉树 II
  3. 力扣69. x 的平方根
  4. 39个必知必会的SQL 性能调优方法
  5. LeetCode 116. 填充每个节点的下一个右侧节点指针
  6. 使用Python scikit-learn 库实现神经网络算法
  7. angularjs的基础知识
  8. Android开发心得-使用File ExPlorer无法访问系统内部文件
  9. 从excel导入数据库过程中遇到的空格转义符(#160;)
  10. vscode 插件推荐 - 献给所有前端工程师(2018.4.29更新)