---
title: kaggleハンズオン
tags: 
author: [加藤まる](https://www.docswell.com/user/marbou090)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/5G758ZQ748.jpg?width=480
description: kaggleハンズオンを行った時の資料です。
published: April 19, 21
canonical: https://www.docswell.com/s/marbou090/V5GMD5-2021-04-19-132114
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/5G758ZQ748.jpg)

kaggle入門 ゆるく入門する

# Page. 2

![Page Image](https://bcdn.docswell.com/page/V9J2KRWERX.jpg)

自己紹介 まるです。 FUNCoder kaggle部門 今日から隔週でみんなとkaggleのお 勉強します

# Page. 3

![Page Image](https://bcdn.docswell.com/page/5DEYND97M9.jpg)

目的 ・機械学習の大まかな流れをつかむ ・kaggle部門においでよ

# Page. 4

![Page Image](https://bcdn.docswell.com/page/2VJNX6DE8K.jpg)

アジェンダ 1. 2. 3. 4. kaggleとは コンペの流れ いざ尋常に！kaggle！ まとめ

# Page. 5

![Page Image](https://bcdn.docswell.com/page/GYE98L8J3P.jpg)

kaggleとは https://www.kaggle.com/

# Page. 6

![Page Image](https://bcdn.docswell.com/page/5GE88XZEDR.jpg)

kaggle 機械学習・データサイ エンスに携わっている 約40万人の方が集ま るコミュニティ 使用言語 R , Python

# Page. 7

![Page Image](https://bcdn.docswell.com/page/MLELR81ER1.jpg)

kaggle コンペに参加し、企 業や政府が提示す る課題を行い、最も 制度の高い分析モ デルは買い取られ る

# Page. 8

![Page Image](https://bcdn.docswell.com/page/54JMR657W1.jpg)

参加者のメリット ● 様々なデータに触れられる（企業が実データを提供してくれ る。） ● 他の参加者から学べる ● 入賞すれば賞金 + 良い仕事をGET！

# Page. 9

![Page Image](https://bcdn.docswell.com/page/ZPJRRPZJ9L.jpg)

主催者側のメリット ● 世界中のデータサイエンティストが問題解決の手法を試行錯 誤してくれる（クラウドファンディングに似てる） ● ブランディング・PR ● データサイエンティストの採用

# Page. 10

![Page Image](https://bcdn.docswell.com/page/NPEXR31EXY.jpg)

実行環境「Karnel」 ブラウザ上に環境構築が不要 な、実行環境が用意されてい る。Script形式かNotebook形式 を選択可能。

# Page. 11

![Page Image](https://bcdn.docswell.com/page/63EKRYM7DY.jpg)

実行環境「Karnel」 機械学習モデルの構築に必要 なさまざまなパッケージがあら かじめインストールされている。 一般的なノートパソコン以上の 性能が自由に使える環境が 整っている。

# Page. 12

![Page Image](https://bcdn.docswell.com/page/4L73892E5P.jpg)

実行環境「Karnel」 モデルを学習させるとき、60分以 上かかると自動で学習がストップ してしまう。賞金を狙うのであれ ば、ローカル環境を整えないとい けない。

# Page. 13

![Page Image](https://bcdn.docswell.com/page/V87DMG67GD.jpg)

コンペの流れ

# Page. 14

![Page Image](https://bcdn.docswell.com/page/4VJPR8Z786.jpg)

コンペの流れ 1. 主催者（企業など）がコンペを主催する 2. 参加者は様々な手法を使ってベストなモデルを構築し、予測を 提出する =&gt; スコアやランキングが分かる 3. 主催者は、精度が高い予測に賞金を払う

# Page. 15

![Page Image](https://bcdn.docswell.com/page/L2EVRNMJQW.jpg)

コンペの概要 1. 概要: どういう設定になっているのか 2. 評価指標: これが一番大事(｀・ω・´) 3. 賞金: 「knowledge」「Kudos」「Swag(Stuff We All Get）」「money」 4. 期限: 時間厳守 5. データ: CSVファイル（どれくらいの大きさ？）

# Page. 16

![Page Image](https://bcdn.docswell.com/page/Z57GMKX7LR.jpg)

何をするゲームなのか 何かしらの予測値を出すゲーム （家の売れる値段、画像認識、動画のコンセプト、手書き文字認 識、芸術作品の写真からタグ付け）

# Page. 17

![Page Image](https://bcdn.docswell.com/page/V4EQRN57P5.jpg)

もらえるデータ ・「予測したい値がもう出てるサンプルのデータ群」 ・「実際に予測値を出してほしいデータ群」 1つ目のデータでモデルを学習し、それを使い予測をする。

# Page. 18

![Page Image](https://bcdn.docswell.com/page/DKJ48GVE1Q.jpg)

いざ尋常に

# Page. 19

![Page Image](https://bcdn.docswell.com/page/PLE12D47GD.jpg)

大まかな作業の流れ 1. 2. 3. 4. 5. コンペの概要をチェック・下準備 データの特徴を捉える データの下準備 モデルの学習・評価 提出

# Page. 20

![Page Image](https://bcdn.docswell.com/page/8GEWRYZ726.jpg)

概要チェック・下準備

# Page. 21

![Page Image](https://bcdn.docswell.com/page/W47ZRXLJ3Y.jpg)

今回説明に使うコンペ

# Page. 22

![Page Image](https://bcdn.docswell.com/page/KYJ6R4MEVZ.jpg)

今回説明に使うコンペ

# Page. 23

![Page Image](https://bcdn.docswell.com/page/5GJ58QQJ48.jpg)

Titanic : Machine Learning from Disaster 1. 2. 3. 4. 5. どんな種類の人が生き残る可能性が高いかの分析 スコアは、正しく予測した乗客の割合 知識 なし CSVファイル

# Page. 24

![Page Image](https://bcdn.docswell.com/page/4LE38VZJ5P.jpg)

Titanic : Machine Learning from Disaster 誰が生き残って誰が死ぬのかを予測する

# Page. 25

![Page Image](https://bcdn.docswell.com/page/V8EDM84EGD.jpg)

パッケージの読み込み

# Page. 26

![Page Image](https://bcdn.docswell.com/page/4V7PR8VE86.jpg)

ファイルの読み込み train.csv : 機械学習の訓練用データ test.csv : 予測を実施するデータ gender_submission.csv : 提出のサンプル

# Page. 27

![Page Image](https://bcdn.docswell.com/page/L2JVRNR7QW.jpg)

データの特徴を捉える

# Page. 28

![Page Image](https://bcdn.docswell.com/page/Z5EGMK6ELR.jpg)

データの確認

# Page. 29

![Page Image](https://bcdn.docswell.com/page/V4JQRN2EP5.jpg)

データの確認

# Page. 30

![Page Image](https://bcdn.docswell.com/page/DK748GPJ1Q.jpg)

データの確認

# Page. 31

![Page Image](https://bcdn.docswell.com/page/PLJ12DXEGD.jpg)

データの確認

# Page. 32

![Page Image](https://bcdn.docswell.com/page/8GJWRYKE26.jpg)

データの確認

# Page. 33

![Page Image](https://bcdn.docswell.com/page/W4EZRXN73Y.jpg)

データの確認でわかったこと ・データの大きさ（891×12） ・欠測値を持つカラムがある（Age , Cabin） ・このままではモデルの学習させられない形のデータがある （Name , Sex , etc…）

# Page. 34

![Page Image](https://bcdn.docswell.com/page/KY76R49JVZ.jpg)

データの可視化

# Page. 35

![Page Image](https://bcdn.docswell.com/page/5G758QD748.jpg)



# Page. 36

![Page Image](https://bcdn.docswell.com/page/V9J2KWMERX.jpg)

わかったこと 強い負の相関を持つのがいくつかある →Sex , Pclassを見てみる

# Page. 37

![Page Image](https://bcdn.docswell.com/page/5DEYNLP7M9.jpg)

実際に比べる ～性別～

# Page. 38

![Page Image](https://bcdn.docswell.com/page/2VJNX4ME8K.jpg)

実際に比べる ～チケットクラス～

# Page. 39

![Page Image](https://bcdn.docswell.com/page/GYE98QWJ3P.jpg)

実際に比べる ～チケットクラス～

# Page. 40

![Page Image](https://bcdn.docswell.com/page/5GE88GREDR.jpg)

わかったこと 年齢、チケットクラス、性別が 生存に関わっていそう

# Page. 41

![Page Image](https://bcdn.docswell.com/page/MLELRG2ER1.jpg)

データの下準備

# Page. 42

![Page Image](https://bcdn.docswell.com/page/54JMRQ97W1.jpg)

特徴量エンジニアリング 次のような処理を「特徴量エンジニアリング」と呼ぶ ・データを機械学習で扱える形に変換 ex ) 欠損を穴埋め、maleとfemaleを0と1に変換 ・訓練用データから、予測する上で有用な新しい特徴量を作る

# Page. 43

![Page Image](https://bcdn.docswell.com/page/ZPJRR89J9L.jpg)

ここでやること ・欠測値を補う ・モデルの学習を行える形に変換する ・より精度のよい予測をするためにデータを整理する

# Page. 44

![Page Image](https://bcdn.docswell.com/page/NPEXR83EXY.jpg)

欠測値を補う 脳死で補う（例えば０ばっかで埋める）と予測データに影響する →工夫して補う必要がある →年齢は標準偏差をと中央値を使ってえいや！って埋める →Cabinはあまりに欠測値が多いので削除

# Page. 45

![Page Image](https://bcdn.docswell.com/page/63EKRKN7DY.jpg)

学習できる形に変換 ・Nameの[Mr][Mrs][Dr]等を、多いものと少ないもの工夫して特徴 量として使う ・Ageは四分位数を利用して変換 ・SibspとParchを足して家族人数を新しく特徴量として使う ・Embarkedを数字に変換 ・Fareは四分位数を利用して変換

# Page. 46

![Page Image](https://bcdn.docswell.com/page/4L738ZZE5P.jpg)

データを整理 ・新しい特徴量としてまとめたものは、元の特徴量は削除 ・Ticket削除

# Page. 47

![Page Image](https://bcdn.docswell.com/page/V87DMR47GD.jpg)

最終的にこうなる

# Page. 48

![Page Image](https://bcdn.docswell.com/page/4VJPRWV786.jpg)

モデルの訓練・評価

# Page. 49

![Page Image](https://bcdn.docswell.com/page/L2EVR8RJQW.jpg)

モデルの訓練とスコア

# Page. 50

![Page Image](https://bcdn.docswell.com/page/Z57GM567LR.jpg)

コードの説明 random_forest = RandomForestClassifier(n_estimators=100) random_forest.fit(X_train, Y_train) acc_random_forest = round(random_forest.score(X_train, Y_train) * 100, 2) Y_pred = random_forest.predict(X_test)

# Page. 51

![Page Image](https://bcdn.docswell.com/page/V4EQRZ27P5.jpg)

コードの説明 ＃インスタンスの作成 random_forest = RandomForestClassifier(n_estimators=100) 何かいろいろ処理が書いてある設計図（RandomForestClassifier()）を実際に値をぶち込 んで部品にして（random_forest）使うぞ！っていう場面death。詳しくは「オブジェクト指向」 で検索。

# Page. 52

![Page Image](https://bcdn.docswell.com/page/DKJ483PE1Q.jpg)

コードの説明 ＃実際に訓練用データでモデルの訓練 random_forest.fit(X_train, Y_train) X_trainのほうが”Survived”なし、Y_trainが”Survived”だけ。教師あり学習。 もうすでに予測値が出てるデータとないデータを使って訓練させる。

# Page. 53

![Page Image](https://bcdn.docswell.com/page/PLE121X7GD.jpg)

コードの説明 ＃スコアを出す acc_random_forest = round(random_forest.score(X_train, Y_train) * 100, 2) これは正解率を求めて桁数指定で四捨五入をしている。 他にもモデルの評価方法はいろいろある。

# Page. 54

![Page Image](https://bcdn.docswell.com/page/8GEWR8K726.jpg)

コードの説明 ＃予測を実施する Y_pred = random_forest.predict(X_test) 訓練したモデルで予測を実施させてる。

# Page. 55

![Page Image](https://bcdn.docswell.com/page/W47ZR8NJ3Y.jpg)

モデルの評価 それぞれのモデルを組み合わ せて使ったり、モデルの微調整 を行ったりなどもできるが今回は 省略。 なんでDecision TreeとRandom Forest一緒 なのかわからない。

# Page. 56

![Page Image](https://bcdn.docswell.com/page/KYJ6RP9EVZ.jpg)

提出

# Page. 57

![Page Image](https://bcdn.docswell.com/page/5GJ58KDJ48.jpg)

提出用CSVファイルを作成

# Page. 58

![Page Image](https://bcdn.docswell.com/page/V9E2K6M7RX.jpg)

ランキングとスコアを確認

# Page. 59

![Page Image](https://bcdn.docswell.com/page/5D7YN9PJM9.jpg)

まとめ

# Page. 60

![Page Image](https://bcdn.docswell.com/page/2VENXLM78K.jpg)

たのしい

# Page. 61

![Page Image](https://bcdn.docswell.com/page/GY7984WE3P.jpg)

ほかにも ・特徴量いじるのももっと工夫できる ダミー変数正規表現正則化スケーリング特徴量生成 ・モデルももっといじれる 交差検証グリッドサーチランダムサーチアンサンブルメソッド

# Page. 62

![Page Image](https://bcdn.docswell.com/page/5G788QR7DR.jpg)

みんなもやろう。 https://www.kaggle.com/

