Titanic: Machine Learning from Disaster
はじめに
Kaggleを始める人は、大抵タイタニック・チュートリアルから手を付けると思います。
タイタニック・チュートリアルの説明文の英語は、それ程難しくはありませんが日本語訳があった方が良いでしょう。
以下、それぞれの中見出しがタイタニック・チュートリアルページのタブに相当します。
Overview
Desctiption
Start here if...
新たにデータサイエンスや機械学習を始めたり、Kaggleのコンペへの簡単な導入を探しているのであれば、このタイタニック・チュートリアルから始めると良いでしょう。
Competition Description
タイタニック号の沈没事件は、歴史上最も有名な海難事故の一つです。1912年4月15日、タイタニック号はその処女航海中に氷山と衝突し海の藻屑と消えました。実に乗客と船員合わせて2224人の内1502人が死亡したのです。この悲劇は世界中に衝撃を与え、より安全な航海規則の導入を促しました。
この沈没事故が多くの人命を損なうこととなった一つの原因は、乗客・船員の人数に対して救命艇の数が充分でなかった事が上げられます。しかしそういった生存に関わる要素の欠落にも関わらず、女性、子供、上流階級といった幾つかの集団は他の集団よりも生存率が高かったのです。
このチャレンジでは、どういった種類の人たちがより生存率が高かったのかを詳細に分析する事が目的です。特に機械学習を用いて、乗客の悲劇からの生還を予測してください。
Practice Skills
- Binary classification (2値分類)
- Python and R basics
Data
Overview
タイタニック・チュートリアルのデータは2つのグループに分かれています。
- training set (train.csv)
- test set (test.csv)
トレーニング・セットはあなたが機械学習のモデルを構築するときに使うべきデータです。トレーニング・セットには、それぞれの乗客が生還したかどうかの結果も一緒に格納されています。例えば乗客の性別や社会階級といった特徴量を使ってモデルを構築する事もできますし、或いは特徴量エンジニアリングを行ない、新たな特徴量を作ることも可能です。
テスト・セットは、構築したモデルが未知のデータに対してどのように働くかを確認するために使うデータです。テスト・セットにあるデータには乗客が生還したかどうかの値が含まれていません。この値を予測する事が主たる目的になります。あなたが構築したモデルを用いて、テスト・セットに登場する彼ら彼女らがタイタニック号の悲劇から生存できたのか、を予測するのです。
gender_submission.csvというデータもあります。これは全ての女性の乗客について「生存」と予測した参考データです。このデータを試しにサブミットしてみて結果がどうなるか見てみると良いでしょう。
Data Dictionary
Variable | Definition | Key |
---|---|---|
survival | 生存したかどうか | 0 = No, 1 = Yes |
pclass | チケットのクラス | 1 = 1st, 2 = 2nd, 3 = 3rd |
sex | 性別 | |
Age | 年齢 | |
sibsp | 同乗している兄弟・配偶者の人数 | |
parch | 同乗している両親の人数 | |
ticket | チケット番号 | |
fare | 乗客の運賃 | |
cabin | 客室番号 | |
embarked | 搭乗港名 | C = Cherbourg, Q = Queenstown, S = Southampton |
Variable Notes
pclass: 社会経済状況の価値尺度
1st = 上流
2nd = 中流
3rd = 下流
age: 1歳未満は小数。もしその1歳未満の乗客の年齢が推測値の場合、小数点以下は.5としてある。
sibsp: このデータセットは、同乗している以下の親類数を数えている。
Sibling = 兄弟、姉妹、継兄弟、継姉妹
Spouse = 夫、妻 (未亡人と婚約者は数えない)
parch: このデータセットは、同乗している以下の親類数を数えている。
Parent = 父、母
Child = 息子、娘、継息子、継娘
何人かの子供は乳母と一緒に乗船しているがこれらについてはparch=0としている。
Rules
One account per participant
一人で複数アカウントを使ってサブミットする事は禁止されています。
No private sharing outside teams
自身が作成したコードを、チーム以外の人に私的に共有する事は禁止されています。しかしフォーラムを通じて全ての参加者に共有する事は可能です。
Team Mergers
チームの合併はチームリーダーのみが実行できます。合併する両チームの合計サブミット数が許可されている最大数以下でなければいけません。一日にサブミット可能な最大数と現在進行中のコンペの日数の積が最大数になります。
Team Limits
チームの人数上限はありません。
Submission Limits
一日に可能な最大サブミット数は10回です。
最終的にサブミットしたものから5個を選んで最終結果として送信します。
Competition Timeline
Start Date: 2012年9月28日 9:13 PM UTC
Merger Deadline: なし
Entry Deadline: なし
End Date: 2020年1月7日 12:00 AM UTC
このコンペの狙いは、機械学習の導入への手助けです。タイタニック号の悲劇の詳細はインターネット上を探せば見つかります。そこには生存者の情報もありますが……それを使って答えたりしないでくださいね。