kaggle expertになるために必要だと思うこと

私事ですが、2019 Data Science Bowlで2つ目の銀メダルを獲得しkaggle expertになることができました。(1つ目はIEEE-CIS Fraud Detection)

なぜこの記事を書くのか


 kagglerが増えてほしいから。

- ○ヶ月でkaggleで銀メダルをとった話
- ○ヶ月でkaggle expert(master)になった話
- kaggle expert(master)になるまでの記録
などのような記事がググればたくさん出てきますが、自分が実際にやってきてメダルを取るにはもっと大事なことがあるんじゃないかと思ったからです。
※本記事では具体的な手法や技術については記載しません。

kaggleでメダルを取る上で大事なことは?

具体的な手法や取り組んだことが注目されますが私はそれよりも大事なことがあると思ってます。それは、継続するモチベーションです。
私は、Twitterや現実世界で「kaggleやるぞ!まずはexpertを目指す!」と言って結局何もしない人をたくさん見てきました。(kaggleに限らないですが)
こういう方は、手法などを読んでわかった気になり結局何もしないことが多いです。(私もそうでした。)
正直、私(低スペック)でもexpertになることができたのでモチベーションがあればexpertには誰でもなれると思っています。
一緒に頑張りましょう!(kaggler増えてほしい)

本を読むのをやめてを手を動かす

何事もそうですが、本や記事で得た知識は活かさなければ意味がありません。kaggle本を買って読んでも、実際にkaggleをやらなければ意味がありません。kaggleをやると言ってやらない人はだいたい以下のことを言います。

まずは知識をつけてから・・・

これはやめましょう。kaggleに必要な知識は無限大なので知識をつけるのに何ヶ月もかかってしまいます。
まずは手を動かし、わからなければその都度本や記事を読み知識をつけるのが良いです。

kernelコピってsubmitしただけでやった気になるな

初心者にありがちです。自分で何も理解していない高得点kernelをコピーしsubmitするだけである程度高い順位になって満足するやつです。何の意味もありません。kernelは読みにくいことが多いですが、読んで理解し自分で工夫するのが大事だと思います。(kernelをベースにするのではなく自分のコードにkernelの手法を取り入れることが一番理解が深まると思ってます。)

kaggleは時間がかかる

Novice/Contributorがメダルを取るには時間をかける必要があると思います(例外もありますが)。MasterやGMは終盤に少し参加してメダルを取っていくことはありますがNovice/Contributorではほぼ無理です。できるだけコンペの最初から参加をしてkernelとDiscussionをたくさん読むのがいいです。
私は2019 Data Science Bowlで休日の殆どの時間をkaggleに費やしました。kaggleにそんなに時間をかけたくない、という方は中々メダルを取るのは難しいと思います。

たくさん検証をする

kernelやDiscussionを読むと「あれやったらどうだろう?」と思うことがあるはずです。ここで面倒臭がらずに検証をしてみるのが大事です。どこかのkagglerの記事で「思いついたことは全部試す」というのを見たことがありますが、それが本当に大事です。
私は2019 Data Science Bowlで有名なMasterやGMの方々とチームを組んでいましたが、皆さん自ら手を動かしたくさん検証をしていました。
たくさん検証をするMasterやGMにkernelコピってるだけのContributorが勝てるわけないです。(それができるからMasterになれたんでしょうけど)

スクリーンショット 2020-02-29 22.34.16

は?こんなチームだったらメダル取れて当たり前だろw

ごもっともです。ただ、途中までソロで15位くらいでマージ依頼が来たから許してください。上位にいるとマージ依頼が飛んできます。

結局何が言いたいのか

kaggleは非常に面倒なことが多いですが、それを乗り越えて時間をかけて手を動かし続ければ誰でもメダルは取れます。(金は+αが必要だと思います。。)
手を動かしていれば、基本的な手法などは身についていきます。本を読むだけでは無理です。

kaggle expertは凄いのか

凄いkaggle expertの方もいればそうでない方もいます。
極端なことを言えば銀メダル10枚持っていてもexpertですし、銅メダル2枚でもexpertです。また、チームマージだけしてメダルとってる人もexpertになれます。(masterにもなれる)

最後に

この記事を読んで、
- こいつでexpertになれるなら俺でもなれるわw
- 時間をかけてでもメダル取れるように頑張ろうかな
などと思ってくれる方がいれば幸いです。全力で取り組んでメダルが取れるとめっちゃ嬉しいです。頑張りましょう。
私は引き続きkaggle masterになることを目標にkaggleを続けていきます。

この記事が気に入ったらサポートをしてみませんか?