4
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

機械学習の流れ(kagglelを例に)

Last updated at Posted at 2019-06-02

機械学習とは

データを入力すると、データを出力する数式をモデルと呼ぶ。
- モデルは原形を持っているが、学習データを元にパラメータが決まる。
 例 y = ax +b という式の原形は決まっているが、aとbはパラメータで「学習」で調整される。
 y を目的変数、xを説明変数と呼ぶ。

  • 出力された値を元に「分類」や「値の予測(=回帰)」を行う。
     例 出力値を予測値として使う。10以上だったら「正」と判定する。

機械学習プログラムの手順

kaggleを例に手順を説明します。

データ読込み

CSVファイル等からデータを読み込みます。

EDA(探索的データ解析:Exploratory data analysis)

データの傾向を掴みます。(これにより、どの変数を使うか等を考えます。)
matplotlib,seaborn,pandas等を使います。

  • データの分布はどうなっているか?
  • データはどのような種類の値をとるか?
  • 外れ値がないか?
  • 欠損値(NULL)の値はないか?
  • 変数間の相関はないか?(使わなくてよい変数はないか?)
  • 目的変数の正解ラベルの分布はどうなっているか?

前処理

Pandasを使って、使用するデータを加工します。

  • 外れ値 外れ値がある場合は除外します。
  • 正規化 モデルによっては、0~1の間に変数の値が収まるように正規化した方がよい。(線形回帰など)  
  • カテゴリー変数の数値化 数値への変換、または、One-Hotベクトル化する。使用するモデルによっては必要ない。
  • 欠損値補完 欠損値がある場合、最大値や最頻値等で補完する。(あえて補完しない。補完する値も予測する等ある。)

モデル作成

モデルを作成します。
モデルの複雑度が上がるほど精度が上がるが、過学習しやすくなります。
単純なモデルほど解釈がしやすいです。

■分類
・ロジスティク回帰
・ニューラルネットワーク
・決定木
・決定木系(/Random Forest/XGboost/CatBoost/LightGBM)

■回帰系
・線形回帰モデル
・決定木系(Random Forest/XGboost/CatBoost/LightGBM)

チューニング

モデルのハイパーパラメータをチューニングします。(グリッドサーチ等の方法がある。)
例:決定木の木の数、深さ

検証

モデルが過学習を起こしていないか確認するため、学習データから検証用のデータを作成して評価します。

  • ホールドアウト法
  • 交差検証法

評価

評価指標には以下のようなものがあります。

分類・・・Accuracy(正解率)、AUC(偽陽性率、真陽性率を考慮)
回帰・・・RMSE(平均平方二乗誤差:Root Mean Square Error)

採択

モデルを採択します。(精度がよい。分かりやすい等の基準で選びます。)

備考

from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()

le.fit(train["Sex"])
train["Sex"] = le.transform(train["Sex"])
test["Sex"] = le.transform(test["Sex"])
```

```
le2 = LabelEncoder()
le2.fit(train["Embarked"])
train["Embarked"]  = le2.transform(train["Embarked"])
test["Embarked"]  = le2.transform(test["Embarked"])
```
4
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?