はじめに
Coursera の 「How to Win a Data Science Competition」 のメモです。
英語字幕しかなかったので、翻訳の意味が分からないところがあるかもしれません。
Introduction & Recap
学習目標
- Describe competition mechanics
- Compare real life applications and competitions
- Summarize reasons to participate in data science competitions
- Describe main types of ML algorithms
- Describe typical hardware and software requirements
- Analyze decision boundries of different classifiers
- Use standard ML libraries
Competition mechanics
- Data
- Model
- Submission
- Evaluation
- Leaderboard
Data
- データは提供されているもの
データのフォーマットの種類
- SSV
- テキスト
- 写真付きのアーカイブ
- データベースのダンプ
- 無効化されたコード
Model
- コンペの時に作るもの
- データから答えに変換するもの(ある特定のアルゴリズムを指すのではない)
モデルの特性
- 最良の予測をする
- 再現性がある
Submit
- 予測結果を提出する
Evaluation
- モデルの質は正解率によって決められる
- コンベではどの評価関数を使うか決められている
Leaderboard
- スコア自体よりも他の参加者と比べて相対的な性能を見る
- データ分析 -> モデル改良 -> 提出 -> Leaderboard を見る を何度も繰り返す
- 提出物を評価する時、Public、Private の2つのテストデータがある
- Public はコンペ中の評価に使われるもの
- Private はコンペ終了時に最終評価するもの(非公開)
コンペに参加する理由
- 学習の機会
- 視野を広げる
- 賞金を獲得できるかもしれない…
Kaggle Overview
- Kaggle の Overview > Evaluation には、このコンペの評価関数が記載されている
- コンペの Rules を注意深くみること、参加人数、提出制限などなど、大事なことが書いてある
カーネルの目的
- アイデアを素早くチェックする
- 他の参加者にコードを共有する
Real World Application vs Competitions
実世界の機械学習
- ビジネスの観点から問題を理解する
- 問題の定式化
- データを集める
- データの前処理を行う
- モデルを構築する
- モデルを評価する方法
- モデルをデプロイする方法
コンペ
- データの前処理を行う
- モデルを構築する
コンペは実世界の機械学習と比べて、単純化されている。
データに関する洞察は、アルゴリズムよりも大切