はじめに
昨日、kaggle の Getting Started Prediction Competition の一つである、Titanicのデータを分析して見たが、傾向はいまひとつよく分からず。
https://qiita.com/kznx/items/fcbc49320411f9d4fe81
せっかくなので、予測してsubmitしてみることにしました。手法としては、RandomForest や boostingが向いているようですが、サクッとkerasでどこまで行けるか、3時間ほど試して見ました。参考にしたのは下記のgithubです。コメント等は英語ですが、とても分かりやすいコードです。
方針
前処理は上記のsavarinさんの方針そのまま採用させていただきました。
- 'Name', 'Ticket', 'Cabin’は使わない
- ‘Age’, ‘Fare’ の欠損値は平均で埋める
- ‘Sex’ は 0,1 に
- ‘Embarked’ は Onehot ベクトルに
Neural Networkはシンプルに隠れ層 2層のMLPで。あとはそれらしいパラメータで。コードは以下に置きました。
終わりに
とりあえずsubmitしてみたところ、77%で6548位とのこと。とは言っても、同じ正解率の人が500人以上いるようで、中盤は競争が激しいようです。ハイパーパラメータチューニングすれば、80%ぐらいまでは行きそうな気がするので、ちょっと試してみたいと思います。