Kaggle
Keras
titanic

Kaggle の Titanic Prediction Competition に、Keras でモデル作成し submit してみるまで

はじめに

 昨日、kaggle の Getting Started Prediction Competition の一つである、Titanicのデータを分析して見たが、傾向はいまひとつよく分からず。
https://qiita.com/kznx/items/fcbc49320411f9d4fe81

 せっかくなので、予測してsubmitしてみることにしました。手法としては、RandomForest や boostingが向いているようですが、サクッとkerasでどこまで行けるか、3時間ほど試して見ました。参考にしたのは下記のgithubです。コメント等は英語ですが、とても分かりやすいコードです。

https://github.com/savarin/neural-networks

https://github.com/savarin/python_for_ml

方針

 前処理は上記のsavarinさんの方針そのまま採用させていただきました。

  • 'Name', 'Ticket', 'Cabin’は使わない
  • ‘Age’, ‘Fare’ の欠損値は平均で埋める
  • ‘Sex’ は 0,1 に
  • ‘Embarked’ は Onehot ベクトルに

 Neural Networkはシンプルに隠れ層 2層のMLPで。あとはそれらしいパラメータで。コードは以下に置きました。

https://github.com/kznx/kaggle_titanic

終わりに

 とりあえずsubmitしてみたところ、77%で6548位とのこと。とは言っても、同じ正解率の人が500人以上いるようで、中盤は競争が激しいようです。ハイパーパラメータチューニングすれば、80%ぐらいまでは行きそうな気がするので、ちょっと試してみたいと思います。