自分のバックグラウンド
文系大学3年生が
2019年度内までにKaggle Masterになる
過程において、
その日学んだことをアウトプットしていきます。
間違いやご指摘などが御座いましたらご教示願います!
Santanderコンペを終えて
先日Kaggleにて、Santander Customer Transaction Predictionが終了しました。
結果として、
2545/9038
で終わりました。
そもそも、一番スコアの高いKernelを最後まで超えることはできませんでしたから、当然の結果です。
9,000人以上も参加者がいるにも関わらず、この成績は幾ら何でも
雑魚すぎます。
それでは本題に入ります。
何故自分はいつまでもKaggleで雑魚なのか。
大学生で人生において一番時間がある時期にも関わらず
全く好成績を収められていないのは
完全に努力不足
でしかないのですが、
これをもっと深掘りして自分なりに分析してみたいと思います。
- わからないことをわからないままにしている
- サーバーと思考の時間投入量不足
- 先人の功績を見て学んでいない
以上の3つが主な原因だと感じました。
順番に説明していきます。
1. わからないことをわからないままにしている
これは特に自分に対して言えることなのですが、
わからないことをわからないままにしている
ということが非常に大きな問題でした。
本来のKernelの目的は、KernelのEDAやモデルを見ることで機械学習とコンペに対しての理解を深めることであるはずのに、
自分の場合は、Kernelをコピペしてとりあえず動かして、ある程度高いスコアを取ることで満足することで終わっていました。
要は、ただの自己満足で、本質的に何の成長も遂げていませんでした。
これが1つ目の問題です。
2. 思考とサーバーの時間投入量不足
上位陣の方々が平均して3桁くらいの量のサブミットをしているのに対して、自分は15しかしていませんでした。
また、そもそも自分の思考を用いてコードを用いてサブミットしたのは10つくらいでいずれも一番スコアの高いKernelを超えられていません。
またサーバーを動かしていた時間やKernelを動かしていた時間も同様のことが言えて、おそらく平均して1日のうちのたった2時間ほどであり、
思考とサーバーの時間投入量不足であることは明白でした。
そもそもこういった時間投入量で初心者が負けていたら技術と経験と思考力で勝る玄人に勝てる訳がありません。
これが2つ目の問題です。
3. 先人の功績を見て学んでいない
ここでいう功績とは、
実際の入賞者のgithubであったり、コードであったり、discussionであったり、記事であったりです。
(*自分が参考になると感じたトークなどは明日全てまとめて記事にして書きます。)
今回のコンペでは、インターネットで多くのこうした貴重な資料があるにも関わらず、それらに全く目を向けずに、盲目的に進んでいる部分が少なからずありました。
現在自分は全く実績もなくただの雑魚なのですが、
今回のコンペを通じて感じたことは
やはり上位に入賞するには、
すでに上位に入賞した方々の
ノウハウをそのまま真似ること
が初心者の僕にとっては一番手っ取り早いかもしれませんということです。
過去のコンペを含めて一度網羅的に先人たちのノウハウを取得することは、今の自分に一番必要であることであると感じています。
先人の功績を見て学ばずに、完全に我流で(中途半端な熱量で)進めてしまったこと、
これが3つ目の問題です。
最後に
- わからないことをわからないままにしている
- サーバーと思考の時間投入量不足
- 先人の功績を見て学んでいない
以上の3点が
自分がKaggleでいつまで経っても雑魚である
主な原因であると感じました。
これらの反省を踏まえて、
- 毎日【Kaggle日記】としてoutputしていく
- 明日、自分が参考になると感じた先人たちの資料をまとめる
- 自分が雑魚であるということを徹底的に理解する
の3つで実際の行動に落とし込みます。
最後に、
間違いやご指摘などが御座いましたらご教示願います!