#はじめに
機械学習を実務で使う場合に、どのような工程を踏むのか、自分の頭の中の整理をかねて大枠を書いていければと思います。
文章ばかりで見づらいと思いますが、自分の頭の整理をかねて投稿します。
##データサイエンスの流れ
##分析目的の明確化
ビジネスゴールから分析ゴールへの翻訳
「売上向上」がビジネス課題であれば、売上について細かく分解します。
分解方法はロジックツリー、カスタマージャーニーなど、
#####ポイント
会社が何かしら打ち手を講じる事で、影響を与えられるように分解する事。
会社にどうしようもできない分解を行っても意味がありません。
例:「プラスチックストローの売上が減少している。向上させたい。」
↓
分解:社会のニーズ×購入率
↓
打ち手:「社会のニーズ向上を目指せば、売上が伸びるのではないか?」
一企業で社会の環境意識を後退させようとしても、できる事が限られています。
##データの準備
データを1から作成する場合
#####ポイント
データセットを自分で作成する場合、どんなデータを用意するかは人間が決めなくてはいけません。
データサイエンティストのビジネス課題の理解力・想像力・観察眼・仮説力が問われます。
そのためにも、ビジネス課題を分析目標に落とし込む作業が重要となります。
(この過程を実務でゴリゴリ経験積んでいる人は、今後とても強いだろうなあ・・・)
###データの前処理の流れ
- データの読み込み
- 欠損の確認
- 分布の理解
- 要約統計量の確認
- 特徴量の設計
2~3の工程は順不同
#####要約統計量とは・・・?
値の平均値・中央値・最小値・最大値など
pandasでは下記で確認
dataset.descride()
#####特徴量の設計
ダミー変数
Feature Engineerring(特徴量の組み合わせを自身で作成)
##分析
統計学と機械学習は分析ステップで用います。
####統計学
- 特徴や構造を理解
- 因果関係を検証
- 影響度を推定
####機械学習
- 予測(教師あり学習)・・・・・回帰問題/分類問題
- クラスタリング(教師なし学習)
##教師あり学習の流れ
- 特徴量(説明変数)を用意
- 機外学習モデルに特徴量を食わせる
- 予測結果の算出(predict)
- 予測結果と(答え)目的変数の残差を計算する(残差を目的関数という)
- 目的関数が最小となるよう、モデルの更新
- 予測したい新しいデータに、最適化された機械学習モデルを食わせる
- 予測結果のアウトプット
2~5の工程を、機械学習モデルに学習させるといわれています。
##予測モデルの構築プロセス
- データの準備
- データの前処理
- モデルの構築
- モデルの性能評価
####ポイント
- 特徴量の選択
- 用いる機械学習アルゴリズムの選択
- 精度指標の選択
この工程を何度も繰り返し行う必要があります。
##ビジネスインパクトの評価
精度を追求する場合、
外れ値に強い・弱い場合,
金額予測の場合、誤差の下振れを減らしたい場合など、
評価方法も、分析目的によって変わっていきます。
#####主な精度指標(ほんの一部です)
- 回帰
- MSE
- RMSE
- MAE
- 分類
- AUC
- Logloss
- 混同行列
- Precision
- Recall
- F1_score
- AUC