KaggleExpert になるまで - I'm chizuchizu
Chizuchizu's icon

チズチズ(chizuchizu)

14yo 統計学/Kaggle/Python/Linux

KaggleExpert になるまで

ようやく……Kaggle Expertになったぜ

chizuchizu

1 分で読めます

先日、M5コンペが終了し銀メダルと銅メダルを獲得することができました!従って私はKaggle Expertになりました。†俺は専門家†

嬉しい

image-20200701223031797

このExpertに昇格したことはある種の節目だと思うので今までのこととかを振り返っていこうと思います。

はじめに

なぐり書きなので所々修正するかもしれません。

質問があればいつでもください(僕で良ければ) DMでもリプでも

Begore→After

Kaggle始める前(2018年10月頃)

 自称パソコンマニア。狭い世界で生きている。チョットタイピングが速くて調子乗ってた。

この頃からTwitterやPythonをはじめた。

  • AtCoder灰(12月付近)
  • 教養は小卒レベル
  • AIは凄い何かの概念かと思ってた(多分)

今(2020年6月)

  • 統計検定2級
  • 高校数学ちょっとわかる
  • Kaggle Expert(テーブルデータならbaselineが自分で作れるくらい?)
  • 中学三年生

明らかに実装力は上がったと思います。特にPandasは。

Kaggleに登録する(2018年12月頃)

TLにいる周りの進学校の人たちはみんなAtCoderで青色や黄色になってる。僕はもうすぐ緑だけどモチベが保てなかった。同じ学校でAtCoderやってる人一人もいないしw

Pythonで何かできないかなと調べてたら機械学習に出会う→SIGNATEとKaggleのアカウント作ってみる

当時何してたか

アカウントは登録したものの、何からやればいいのか全くわからず適当にSIGNATEの練習コンペで鍛えてました。とはいっても情報が少ないので中身が一切わからないままLasso回帰使って練習コンペで1位取った記憶があります(参加者も少なかったし)

この頃はKaggleに対する敷居が高く感じていました。言語の壁ですね。英語ばっかりでoverviewを解読することさえ難しかった(Google翻訳を使っても)ので底辺をさまよってました。

自分が知らないことを知ろうという好奇心のもとはじめたのですが、数学や英語をちゃんと学んだ人じゃないと触れられない領域なのかなと思いながら中途半端にコンペやってました。

Kaggleコンペに参加したときも何も理解できず(英語も書いてあるコードも)適当にコピペして動いたからヨシ!としてたようなw

統計検定をとった(3月31日)

2月頃ですかね。KaggleやってたらTwitterで統計学のすゝめを受けたので勉強をすることにしました。嬉しかったのが中学数学でも理解できるような内容だったということですね。(2級は)

色々とあって3月31日に受けて合格しました〜

Kagglerに出会う(5月頃)

統計検定2級に最年少で合格したというツイートをしたらかなり反響があって†Kaggler†に声をかけられるようになりました。

今まではそういうKaggleのコミュニティにも参加していなくて黙々と適当にやってたのですが、Kaggle界隈に足を踏み入れることによって意識がかなり変わってきました。

kaggler-jaにも入りました。(たまに質問してる)

https://kaggler-ja-wiki.herokuapp.com/

計算機を整える(6月ごろ)

パソコンを新調しました。この頃から本気でKaggleやってやるというモチベが芽生えてきました。かなりお高かったです(気になったら調べてみてください)。結局後悔はしてないです。

関係ないですけど、自作にロマンを抱いていたので秋葉原でパーツを買って組みました。

Before

  • i3 8100
  • 16GB
  • GTX 1050Ti
  • Windows 10

After

  • i9 9900K
  • 32GB+50GB (swap)
  • RTX 2080
  • Ubuntu

ubuntuにしてよかった。

DeNA社に夏休み行った(7月~8月)

今考えてみると当時はk-foldの概要すら知らないような自分がKaggle Masterがたくさんいるような環境で話をしたり一緒に何かをする という出来事は人生初めてですし、かなり良い経験をさせてくれたと思っています。

色んなKagglerの話を聞いて、Kaggleの世界がわかってきた気がします。ネットだと怖そうですが、onoderaさんは会ってみると優しい人です。

Kaggleにまともに参加していない頃だったので自分は何をしたらいいのか彷徨ってた時期だった気がします。

コンペに参加し始める

SIGNATE マイナビコンペ(11th アイデア賞)

https://signate.jp/competitions/182

SIGNATEは日本のデータサイエンスプラットフォームで、基本的に日本語がわかればどうにかなるので初心者にオススメだと思います。

ここで初めてチームを組んで参加しました。後処理が大事なコンペでした。(リーク)

11thでアイデア賞でした。リアルイベント参加したかったのですが、ロボコンの大会があって行けなかったです(´;ω;`)

初賞金獲得でした。

IEEE(567th 銅メダル)

アイーーー

IEEEは結局データサイエンスせずに適当にKernel Forkしてモデル変えてアンサンブルしたらギリギリ残っただけなので運です。

成長したい……

M5コンペ(262th(Accuracy) 53th(Uncertainty) 銀&銅)

人生変わった。このおかげでPandasの処理が何となくわかってきたきがする。(効率の良い書き方とかも)

結局総データが30GB近くなっちゃって大変だったけどかなり勉強になりました。

30490(items) x 1940(days) ≒ 6000万 ア(つまり6000万行はあったということか)

初めはpaoさんとresistanceさんと組んでましたが、途中からカレーちゃんと石川さんとmergeして5人で挑みました。

過去のvalidationみてみるとrecursiveが割と良さそうだったのにprivate期間で急落下したのはとても悲しい。予測困難というか予測不能という感じもする。

チーム名が「LB.shuffle() == 1」だったので、優勝できなかったのは無念(?)ですがやりきった感があるので個人的には満足してます。

結局何が大事だったのか

自分はこう評価しています。特に補足はないです。

  1. わからないものでもわかろうとする
  2. 挫けない
  3. Twitterをする(New)

逆にあんまり意味がなかったのが理論書や数学でした。ただ、直接的に関係してないと思っているだけで裏ではそういう論理的思考が役立ってることはあるかもしれません。

今後

お受験がどうなるのかわからないのですが、このまま行くと受験終わるまでKaggle封印になりそうですw

ただ、ちゃんとソロ銀→金を取ってMasterになりたいとは思っています。あと積極的にdiscussionに参加したいとも思っています。今の時代はDeepLもあるのでそういうコミュニケーションはどうにかなる気がします。

comments powered by Disqus

最近の投稿

カテゴリ

About

チズチズという人が書いているブログです。気ままに技術系だったりまったり系の記事を投稿します。