タイタニック号沈没事故で生き残れるのは誰?

OVERVIEW

沈没事故の死亡者と生存者のデータを解析するAIをRで実装

[概要]

 どのような特徴を持つ乗客であれば、沈没事故が起きても生存しやすいかを判定できるAIを実装 する。

[使用テクニック]

 線形回帰、ロジスティック回帰、SVM、決定木、ナイーブベイズ、ニューラルネットワーク、K 平均法、主成分分析、自己組織化マップ、連関規則、など (使用しなかったものあり)

[判別方法]

 tarain.csvからデータセットを複数選択し、

 選択したデータごとに振り分けを行い図に示す。

 今回の選択データは以下である。

  Survived(生存フラグ) 0=死亡、1=生存

  Pclass(チケットクラス) 1=上層クラス、2=中級クラス、3=下層クラス

  Sex(性別) male=男性、female=女性

  Age(年齢)、Fare(料金)、Parch(同乗している親/子供の数)

  Embarked(出港地) C=cherbourg、Q=Queenstown、S=Southampton

[判別結果]

 判別結果は以下の図のようになった。

 

[考察]

 決定木を上から見ていく。まずはじめに、男女であるが、圧倒的に男性の方が死亡率が高い。実際に命の危機である状況でも女性を避難させることに徹したか、男性が集まるような場所から水没したことが考えられる。次に男性の年齢を見てみると、6.5歳以下は半数が生き残っている。母数は少ないものの、家族や周りの方が子供優先に動いたのであろう。

 次に女性を見てみる。はじめに、チケットのクラスであるが、下層クラスの半数に比べて、中級以上はほとんど生き残っている。やはり、チケットが高ければ高いほど、上の階が用意されていたと考えられる。

 下層クラスの中でも、Fareが23以下で37歳以下の若い方の生存率が高いことが読み取れる。ただし、37歳以上の母数が少ないため、必ずしも若い方が救われたとは断定できない。また、Fareの多さは下層クラスでは関係していないことが読み取れた。

[反省]

 より精密に判別するために増やしたが、結果に反映されなかった。おそらく関係していない出港地なども結果に反映されなかった。

[データ精度]

URL:https://github.com/EndoYuma/dataminig