0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

又一位Kaggle大神!半年拿5次金牌晋升Grandmaster

DPVg_AI_era 来源:lp 2019-03-18 09:10 次阅读

知乎大神“Seu Tao”,仅用半年时间参加了5次Kaggle比赛,就拿到了5个金牌(包括一个 solo gold),顺利成为了 Competitions Grandmaster。最近,他分享了比赛经验。

又一位Kaggle大神!

Kaggle是全球首屈一指的数据科学、机器学习竞赛和分享平台,企业和研究者可以在Kaggle平台发布数据、举行/参加竞赛,通过“众包”的形式产生最好的模型,现在注册用户数量超过100万。

在Kaggle Competitions排行榜中,有一个头衔是众多用户都十分向往的,那就是“Kaggle Grandmaster”,他们是排名0.1‰的顶级高手。目前,Kaggle只有136位Grandmaster。

Grandmaster除了代表你参加过很多竞赛并且多次获得冠军,这个头衔在投简历找工作时也很具吸引力。同时,参加大企业举办的大型竞赛,还能获得奖金。

知乎上有一位大神“Seu Tao”,他从2018年9月份到2019年3月,仅历时半年,共参加了 5 次 Kaggle比赛,就拿到了5 个金牌(包括一个 solo gold),顺利成为了 Competitions Grandmaster!

Seu Tao告诉新智元,他17年本硕士毕业于东南大学,目前在某创业公司任职视觉算法工程师,这5次Kaggle比赛,也都是计算机视觉类的任务。最近,Seu Tao把他参赛经历和经验分享出来,我们一起膜拜下。

Kaggle 五次比赛成绩(按名次排序)

2nd in Humpback Whale Identification (2/2131, top 1%,Solo Gold Medal)

4th in TGS Salt Identification Challenge (4/3234, top 1%,Gold Medal)

8th in Airbus Ship Detection Challenge (8/884, top 1%,Gold Medal)

9th in Human Protein Atlas Image Classification (9/2236, top 1%,Gold Medal)

12th in Google Doodle Recognition Challenge (12/1316, top 1%,Gold Medal)

SeuTao Kaggle主页:

https://www.kaggle.com/shentao

五次比赛介绍(按时间排序,记录下 5 次比赛的过程)

1. TGS Salt Identification Challenge(4/3234)金牌 2018.10

TGS 盐体识别挑战赛,挑战者需要开发出能准确分割地表以下沉积盐分布的算法。地震数据是通过地震反射(reflection seismology)收集的,这种方法要求能量的受控震源(如压缩气体或地震振动器),以及记录来自地下岩石界面反射的传感器。之后处理记录的数据,创建地球内部的 3D 视图。地震反射类似于 X 光、声波定位仪和回波定位。

比赛任务:地震图像语义分割

这是我第一次完整的 Kaggle 比赛经历,坚持刷 discussion,follow 蛙神的实验。比赛中后期一直保持着 top5 左右的名次,ddl 前一度上了 top1,最终 public 第 2,private 第 4。金牌 + 奖金,一次 Kaggle 全体验。

solution 介绍:

https://www.kaggle.com/c/tgs-salt-identification-challenge/discussion/69178

代码:

https://github.com/SeuTao/Kaggle_TGS2018_4th_place_solution

关于本次比赛的一些详细解读可以参考@AlexL的文章,他们是这次比赛的第 5 名团队:

https://zhuanlan.zhihu.com/p/47412338

2. Airbus Ship Detection Challenge(8/884) 金牌 2018.11

Airbus 的遥感图像分割检测比赛Airbus Ship Detection Challenge,airbus 也就是空中客车公司,悬赏金额 6 万美金。航运流量增长迅速。更多的船只增加了海上违规行为的机会,这迫使许多组织对公海进行更密切的监视。在过去的 10 年里,人们做了大量的工作,从卫星图像中自动提取目标,取得了显著的效果,但在实际操作中存在许多不足。现在空中客车公司与 kaggle 共同举办比赛,寻求更好更快的船舶自动检测方案。

比赛任务:从卫星图片中找到所有的船只

刚结束 TGS 比赛,此时距离 Airbus deadline 仅剩下不到一个月了,好在之前训练了一个基础的 unet 模型,同时把 TGS 的经验迁移过来,敲定方案是 unet 语义分割模型 + mask rcnn 检测模型,几位队友合力之下顺利上升到了 PB 第 2 的位置。这题 AB 榜 shakeup 很大。最终我们 team PB 第 5,private 第 8。Do not trust LB, trust ur CV!

solution 介绍:

Do not trust the LB, trust your CV. (5th/8th in public/private LB)

https://www.kaggle.com/c/airbus-ship-detection/discussion/71601

代码:

https://github.com/SeuTao/Kaggle_Airbus2018_8th_place_solution

附:来自@Pascal的方案:

https://zhuanlan.zhihu.com/p/48381892

3. Google Doodle Recognition Challenge(12/1316)金牌 2018.12

这次比赛识别的是 Quick, Draw! 游戏的 5000 万张涂鸦,它们由来自全球各国的超过 1500 万玩家贡献,画得大多是一些苹果啊,浴缸啊,计算器啊之类的日常用品。

比赛任务:灵魂画手涂鸦分类

跟 airbus 比赛一样,花了一个月左右的时间去完成。跟之前比赛认识到的伙伴们组成了 8 人小队。赛题的数据量和需要的计算资源都很大,模型迭代的效率相对比较低。比赛结束之前也没有太多有效的探索。有幸的是最终还是能够 private 榜逆袭,拿下金牌的最后一名。

拿下这块金牌之后,顺利拿到了 kaggle master 头衔 :)

代码占坑:

https://github.com/SeuTao/Kaggle_Doodle2018_code

4. Human Protein Atlas Image Classification (9/2236)金牌 2019.01

多标签蛋白质图像分类比赛。数据极不均衡,且原始图像尺寸较大。

比赛任务:蛋白质图像多标签分类

连续几个月每天都用大量业余时间来做比赛确实比较辛苦,拿到 kaggle master tier 之后本来想着休息一段时间。本人本硕 BME 毕业,看到医学图像相关的主题异常亲切,决定还是试一试蛋白分类比赛。跟队友二人集成 baseline 结果之后,进入了金牌区(集成提升巨大)。之后就是加入了杨老师的队伍:

杨佶 Kulbear:Kaggle Human Protein Atlas 蛋白质分类比赛第九名总结和复盘

https://zhuanlan.zhihu.com/p/54734559

结果是 public 第 19,private 第 9,金牌 :)

5. Humpback Whale Identification (2/2131)金牌 2019.03

为了帮助鲸鱼保护,科学家们使用照片监视系统 (Photo Surveillance Systems) 来监视海洋活动。他们使用鲸鱼尾巴这一独一无二的标记来在连续的图像中识别鲸鱼,并对它们的活动进行细致地分析。在过去的四十年里,大部分工作基于科学家们的手工作业,这也使得大量的数据未被充分利用。5004 个 id 鲸鱼数据,其中许多 id 仅有 one shot 的数据。这是一个 few shot learning 和细粒度分类的问题。

比赛任务:座头鲸识别

Kaggle Grandmaster tier 要求 5 块金牌,其中包括一块 solo gold,遂决定一鼓作气尝试 solo,争取拿下 GM title。比赛时间比较充裕,面对的问题也是我相对熟悉的,很快成绩就进入了前 10。然而 PB 达到 0.910 之后,实验一度没有进展,名次在逐步下滑。急于打破僵局,尝试了相关的各种方案,sota 人脸 loss,Person reid 的模型结构,metric learning,pytorch 下也重新搭建了 siamese net 的 pipeline。然而尝试得越多,导致每条路线实验不够充分,更难以得到提升。(后续比赛结果也证明,任何一条路线,工作足够细致,都是能够在比赛中取胜的)冷静下来还是回归最初的方案,稳扎稳打,最终 rank 2nd。

solution:

https://www.kaggle.com/c/humpback-whale-identification/discussion/83885

代码:

https://github.com/SeuTao/Kaggle_Whale2019_2nd_palce_solution

Kaggle 参赛感受总结

关于成绩:6 个月连续五次比赛全部金牌,这是我开始做第一个比赛时没有想到的,其中运气也占了很大成分。每个比赛的初期,我的预期都不会是一块金牌(因为完全不知道会做成什么样),而是随着比赛的进行,不断提升对自己成绩的要求(5%->1%->top10->top5)。

投入精力:在做竞赛之前,我的业余时间主要是用来做一些自己的 project 和学习充电。参加 kaggle 竞赛半年来,我把所有的业余时间都献给了这个平台。周末,国庆,元旦甚至春节假期,几乎都是在 kaggle 中度过,kaggle 可以说成为了我的第二职业。

收获回报:从学习角度来说,kaggle 上我收获了对不同问题,不同数据的认识,相关技能上也有不少提升;从荣誉角度来说,得到了多块金牌,成为了 Grandmaster,在平台 10w 用户中能够排名 top38(虽然对于很多大佬来说不算什么);还能够认识很多竞赛爱好者,并且相互交流提升;最后,奖金也是一个很好的回报 :)

比赛与工作:比赛与工作的关系,像是训练场与实战。作为一个从业者,比赛给我提供了非常好的训练环境,有非常多的新鲜问题和数据,在限制的条件下供我探索。在这里我想说明的是,比赛成绩好,决不能代表实际工作中能够表现出色。但是反过来,一个算法工程师如果不具备在竞赛中得到好名次的能力,又怎么能胜任实际工作呢?

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 图像
    +关注

    关注

    2

    文章

    1063

    浏览量

    40038
  • 机器学习
    +关注

    关注

    66

    文章

    8116

    浏览量

    130550
  • 数据科学
    +关注

    关注

    0

    文章

    163

    浏览量

    9981

原文标题:Kaggle大神亲述:我是如何半年拿5次金牌晋升Grandmaster的?

文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    i2c通信实验左移一位有啥用?

    这个圈着的左移一位有啥用?
    发表于 04-08 08:08

    寻找一位编程员

    寻找一位编程员。请法邮件 j_helmut@163.com
    发表于 04-02 13:34

    xmc7200开发COOLDIM_PRG_BOARD,用逻辑分析仪捕捉输出的最后一位直为低电平的原因?

    我使用 xmc7200 开发 COOLDIM_PRG_BOARD。 我用PWM输出正弦波,我用逻辑分析仪捕捉输出的最后一位异常,最后一位应该是高电平,但长时间低电平,为什么?
    发表于 01-18 09:37

    请问WATHR取值为Pmax电能寄存器的每一位代表多少电能呢?

    请问WATHR取值为Pmax 电能寄存器的 每一位代表多少电能呢?书大佬指教。
    发表于 12-26 07:55

    AD9220 ADC数据是并行输出,有一位数据输出的电平应该直是低但在时钟周期内会出现段高的情况怎么解决?

    我用的是AD9220采集信号,这款ADC数据是并行输出,测试的时候我给的0V输入(VINA-VINB=0),其中有一位数据输出的电平应该直是低,但是在时钟周期内会出现段高的情况。 如图,蓝色是时钟信号,黄色为我测试的其中
    发表于 12-12 07:29

    AD7768-4的四个通道第一位芯片错误直是1的原因?

    大家好,我正在使用AD7768-4,引脚模式,使用外部晶振。目前收到的四个通道第一位芯片错误直是1,其他bit都是0。通过示波器可以看到DCLK和DRDY都是正常的。最有可能是什么原因造成的?希望大家能帮忙看
    发表于 12-07 06:28

    51单片机如何控制8数码管中的一位按秒闪烁?

    请问下: 在51单片机中如何控制8数码管中的一位按秒闪烁? 而其它的保持原先的状态. 有代码可以参考吗?谢谢!
    发表于 11-15 12:44

    为什么我用定时器做的秒表第一位直显示0?

    做的秒表0.000到9.999的,为什么第一位直是0,不是毫秒那三,毫秒那三不用准确。是秒的那一位
    发表于 10-31 07:23

    请问C语言中为什么字符串通常都要多一位

    C语言中为什么字符串通常都要多一位
    发表于 10-08 08:32

    大神手工自制CPU的过程

    为了深入理解这个问题,大神耗时整整半年,“逐点”焊接,自制了一个CPU,杰作如下图所示。
    的头像 发表于 09-27 09:41 585次阅读
    <b class='flag-5'>大神</b>手工自制CPU的过程

    请问单片机C语言变量怎么一位一位的取出?

    用下面的算法,LCD1602显示个变量,按键按一次变量++,数值在99内显示正常,超过就显示乱码。比如按了123,取十的时候就是123/10=12.3这个运算就不对了,不知道应该
    发表于 09-26 07:30

    一位AT32F415 MCU关于灯光行业升降球的程序开发技术人员合作

    我在上海,现需要找一位熟悉AT32F415的灯光行业的程序开发技术人员,产品通讯是DMX512通讯的。板卡需要控制个闭环电机或者多个闭环步进电机,和几路灯光,有兴趣的朋友可以与我私聊!你不需要太了解整个板卡的功能。只需要会AT32F415的编程就可以。外围电路我可以配合
    发表于 06-27 14:25

    用NTC测温时,怎样处理温度显示最后们数跳动?

    如题:简单的用NTC测温,发现显示的温度最后一位数,在变化时有个不断来回跳动的过程.ADC转换中采用了8平均滤波,还是样,滤波次数增加后,问题还是样,不知如何处理.特请教各位
    发表于 06-20 09:29

    PyTorch教程5.7之在Kaggle上预测房价

    电子发烧友网站提供《PyTorch教程5.7之在Kaggle上预测房价.pdf》资料免费下载
    发表于 06-05 15:20 1次下载
    PyTorch教程5.7之在<b class='flag-5'>Kaggle</b>上预测房价

    是否有等效的PORT_PCR[LK]可以锁定PORTA5直到下一次系统复位?

    是否有等效的 PORT_PCR[LK] 可以锁定 PORTA5 直到下一次系统复位? 复位引脚功能在 uC 运行期间不得修改。
    发表于 06-05 06:15