shine-Notes

ゆるふわ思考ダンプ

KaggleのTitanicチュートリアルをやってみた話

【サマリ】

  • 「取り敢えずやってみろ」と言われてやってみたが、取り敢えずやってみる価値がある。
  • 勝手にハードル高く感じていたが、チュートリアルサイトを見てしまえばそれ程ではない。
  • 概念は薄くさらっておいた方が楽しい。が、必須なのかは結局は人による。

【モチベーションと経緯】

昨年11月くらいから機械学習の勉強をぼちぼちやっている。 読んだ本とか勉強内容はまた別エントリでやるとして、基本的には機械学習はガチ素人だ。Watsonのデモを少し触ったことあるくらいで、機械学習そのものには今まで全く踏み込んでこなかった。とにかく参考書を11,12月は読んでいた。

そんな感じの報告を年末に同じく機械学習を勉強している他社の方に話したとき、「Kaggleやりました?とにかくまずやったほうが良いですよ!」との言葉を頂いた。

結論から言うとこの方の言う通りだった。尻込みしていた自分のような人物に向けての記録を残そうと思う。

【実際にやったこと】

  • 「決定木」を使うらしいと聞いていたので、ざっと概念を確認。
    • kindle unlimitedに良い感じの洋書があったので読む(英語だが絵が多いので意外と読めた) Amazon CAPTCHA
    • Youtubeの決定木に関する動画もちょっと見る(英語だが字幕つけて絵を見るとなんとなく分かる) www.youtube.com
  • codexaのチュートリアルを見ながら進める。 www.codexa.net

これで「取り敢えずサブミットする」までいける。(チュートリアルから少し脱線してSubmitしたらスコアは0.784になった)

【どれくらい徒手空拳で臨めるもんなのか】

11~12月に読んでた本はDeepLearning周りだったので、今回のチュートリアルの内容には直結するものではなく、そういう意味では、このチュートリアルのへの挑戦そのものには思っていたほどの準備は必要なかったと思う。

ただ個人的には、自分のようなデータ分析童貞の人は、少しだけ前提知識を仕入れといて、「サブミットする」快感を覚えるのが大事だと感じている。

  • 決定木がどういう仕組なのかさらっておくと、scikit-learnがいきなり出てきても、「目的変数と説明変数入れるだけで決定木一瞬で作れんのかすげー」くらいのに納得できる
  • 当たり前だけどチュートリアルそのままではなく、ちょっと脱線すると楽しい。「そういやタイタニックの救命ボートって女子供優先で乗せてたよなー」とかを思い出し、親子供の有無を1/0に変換したら少し変えたらスコアが変わったのも面白かった。

この辺りが凄く楽しかった。月1つくらいを目標に、継続的に取り組んでいきたいと思う。

以上。