0から始めるkaggle超初心者向け入門

## はじめに

「**kaggleって何？**」という人が、

* kaggleがなにかわかる（話が合わせられる）
* kaggleコンペに参加してみる（ノリ気になる）

ためのお手軽説明です(｀・ω・´)

## Agenda

1. kaggleとは？
2. データ分析のトレンドの変化
3. kaggleの仕組み
4. なぜkaggleをやるの？
5. やってみた(｀・ω・´)

## 1. kaggleとは？

世界最大の機械学習・データ分析のコンペを主催するプラットフォーム

![kaggle.png](https://qiita-image-store.s3.amazonaws.com/0/3975/82f25513-22ee-ba9a-0192-9e2b73d379fb.png)

https://www.kaggle.com

つまり

**データサイエンティストの世界最強を決める大会**


### kaggleの規模

- ユーザ数: 50万以上
- 国: 190カ国以上

らしい(｀・ω・´)


## 2. データ分析トレンドの変化

理論（theory）
↓
実践（practice）

### 昔

- 理解するのが大事（theory）

### 今

- 実践・役立つのが大事（practice）


### 実践を重視している具体例

- kaggle
  - コンペ
  - ノウハウの共有（コード・ディスカッション）
  - データの共有・公開
- fast.ai
  - deep learning for coders（開発者の深層学習）
  - 理論より実践、SOA（state of art: 最先端）

**AI社会による生活の向上**

by Andrew Ng (AIや機械学習の有名な教授・教師)

> *I hope we can build an AI-powered society that gives everyone affordable healthcare, provides every child a personalized education, makes inexpensive self-driving cars available to all, and provides meaningful work for every man and woman. An AI-powered society that improves every person’s life.*

![andrew.jpeg](https://qiita-image-store.s3.amazonaws.com/0/3975/2b76029a-51d4-b254-f9d0-22ffb55fa0f9.jpeg)

https://www.deeplearning.ai/deeplearning-ai-announcing-new-deep-learning-courses-on-coursera/


## 3. kaggleの仕組み


### 大まかな流れ

1. 主催者（企業など）がコンペを主催する
    1. データを準備
    1. 問題を定義する
1. 参加者は様々な手法を使ってベストなモデルを構築し、予測を提出する => スコアやランキングが分かる
1. 主催者は、精度が高い予測に賞金を払う


## 4. kaggleをなんでやるの？


### 参加者のメリット

- 様々なデータに触れられる（企業が実データを提供してくれる。レアい）
- 他の参加者から学べる
- 入賞すれば賞金 + 良い仕事をGET！
- 楽しい
- ~~ギャンブル感覚~~


### 主催者側のメリット

- 世界中のデータサイエンティストが問題解決の手法を試行錯誤してくれる
- ブランディング・PR
- データサイエンティストの採用

### kaggle依存の副作用（kaggle is drug）

が、しかし

<img width="483" alt="kaggle_addicted.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/bca502be-5961-36ff-c1c9-d9ce86ccc934.png">


### コンペが始まると仕事しなくなる人たち

<img width="633" alt="not_work.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/b5d270b6-cf39-4495-965b-151bacea7d5f.png">


## 5. 早速kaggleをやってみた(｀・ω・´)

### 1. コンペを選ぶ

<img width="978" alt="competition_list.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/1797a060-aa30-6d99-0b99-a5715aff9d72.png">


最近始まったばかりのコンペ(｀・ω・´)

<img width="952" alt="ga_competition.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/05aa1ea1-593a-5bc4-4477-0fbb23711fdc.png">


### 2. コンペの内容を読む

1. 概要: 大まかに把握
2. 評価指標: これが一番大事(｀・ω・´)
3. 賞金: できればほしいよね
4. 期限: 時間厳守
5. データ: だいたいCSVファイル（BigQueryも）


### 3. 他の参加者から学ぶ

1. コード（kernel）
2. ディスカッション（discussion）

<img width="951" alt="kernels.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/d98c906b-e91c-3e2a-f79d-a17ae6a4ca4f.png">

いろんな人がコードを載せてくれてるので助かる

<img width="942" alt="code.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/5e6fb4a7-9659-d70b-3c38-27a4b62a79b1.png">


see: [Simple Exploration+Baseline - GA Customer Revenue | Kaggle](https://www.kaggle.com/sudalairajkumar/simple-exploration-baseline-ga-customer-revenue)


### 4. 他の参加者の方法を真似てみる

コードをパクってローカルPCで実行するだけの簡単なお仕事(｀・ω・´)

<img width="1437" alt="imitation.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/a2a9a09c-1908-f422-3e3f-669d670c244c.png">


### 5. 助け合う <= New!

ちょうどライブラリのバージョンで上手く動作しなかったので、上手くいった方法を教え合う(｀・ω・´)

<img width="885" alt="comment.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/05c3f865-e2a5-50a9-39eb-6347d8d47f42.png">


### 6. めんどくさいので人のコードをforkする

<img width="1439" alt="fork_original.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/f5ac3b63-9934-7b4e-9cfd-05e9bfb3c82a.png">


forkしたコードを実行するだけ(｀・ω・´)

<img width="1439" alt="fork.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/84e995b9-cd9c-fcf0-af98-66e924080ca8.png">


実行中

<img width="1440" alt="fork_running.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/139e4aef-b42a-b21c-da98-7339f4e3970f.png">


### 7. 予測を提出する

<img width="1440" alt="submission.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/f132b270-0500-9d45-ba05-7952adf07192.png">


### 8. スコアとランクを確認

689位（全1,031チーム）

ちーん(｀・ω・´)

<img width="952" alt="result.png" src="https://qiita-image-store.s3.amazonaws.com/0/3975/ab3d77a1-2899-5abe-6fcf-480ef6b0f4c4.png">


結局言いたいのは

**パクった後が勝負**

## まとめ

- kaggleはデータサイエンティストのNo.1を決める大会
- 理論より実践のトレンド
- とりあえず人のコードをパクって頑張る
- kaggleは沼(｀・ω・´)

## 参考資料

- [Kaggle - Wikipedia](https://en.wikipedia.org/wiki/Kaggle)
- [What is Kaggle, Why I Participate, What is the Impact?](https://www.kaggle.com/getting-started/44916)
- [fast.ai · Making neural nets uncool again](http://www.fast.ai)
- [deeplearning.ai: Announcing new Deep Learning courses on Coursera](https://medium.com/@andrewng/deeplearning-ai-announcing-new-deep-learning-courses-on-coursera-43af0a368116)

### おわり(｀・ω・´)

ようこそkaggle沼へ

## ↓ スライド版はこちら

https://speakerdeck.com/yukinagae/easy-way-to-start-kaggle