2-2. 機械学習のプロセス

基礎集計 → 前処理 → 特徴量エンジニアリング → 計算(ここは割愛) → 性能評価のプロセスを、それぞれ見ていきましょう。

2-2-1. 基礎集計

データの動向を事前に把握します。
各種代表値(平均や分散)を見たり、散布図行列をプロットしたり、相関行列を表示して傾向を見たりします。

(相関行列って、どんなものを見ることなんだろうか?あとで調べよう。)

2-2-2. 前処理

データをモデルに正しく入力できる形にします。

用語:正規化

データをスケーリングする。

用語:標準化

平均を0、分散を1に変換します。

(あとで勉強)これはゼットスコアだけど、他にもある。

最大最小の方法が良くある。


用語:名寄せ

表記の揺れなどの統一だそうです。(データ連携でいう名寄せとは少し違う!

間違えやすい「正則化」は過学習を抑制するための手法であって、前処理の用語ではありません。

2-2-3. 特徴量エンジニアリング

モデルが認識しやすい特徴をデータから作ること。文字列の日付データを数値列に変換したり、多項式特徴量を生成したりすることなのだそうな。カテゴリカル変数(何かの種類を表す変)をカテゴリカル変数であるとわかるようにすることも、特徴量エンジニアリングです。

用語:特徴量

扱っているデータをよく表す特徴を数値で示したもの。

用語:one-hot-encoding

たった一つの成分だけが1、残りの成分が0という形の特徴量(ベクトル)に変換すること。
(これは、もう少し調べた方が良さそうですね。)

重回帰分析でやる多重共線性の検出も、このプロセスでやりますが、これについては別記事にて。

2-2-4. 性能評価

データは、訓練データとテストデータに分けます。テストデータを使ってモデルの性能評価をするわけです。モデルが過学習を起こしていないかを調べましょう。

用語:過学習(オーバーフィッティング)

学習に用いたデータに対しては高い精度で予測できるのに、学習に用いていないデータでは精度が上がらない事象のこと。機械学習における最大の問題と呼ばれています。

、、、さて、少し思うところがあるのですが、、、過学習って、学習データが多過ぎて学習しすぎて精度が下がる事象のことをいうと思っていたのですが、少しニュアンスが違うのですね!勘違いしていました、、、

さて、モデルの性能評価に用いる手法にはホールドアウト法と交差検証法の2種類があるのですが、これは文章の説明よりも図を見た方が分かりやすいと思います。

用語:ホールドアウト法

用語:交差検証法(クロスバリデーション法)

k分割交差検証という書き方になっていることもありますが同じものです。
計算量は大きくなりますが、データが少なくてもホールドアウト法と比較して信頼できる精度が得られます。


用語:正解率

以下のような混合行列をもとに、次の数式で正解率(accuracy)を求めます。
正解率だけでなく、適合率、再現率、F値という数値を用いて評価することもあります。覚えておきましょう。というのも、陰陽のデータが半々なら問題はないのですが、半々じゃない場合は、考えた方がよさそうです。

適合率:

予測が正の中で、正だと予測できたもの。

TP/(TP+FP)

試験では、「予測が」という言葉から始まっていたら適合率のことです。


再現率:

実際に正であるものの中で、正だと予測出来た者の割合。

TP/(TP+FN)

試験では、「実際に」という言葉から始まっていたら適合率のことです。


F値:

適合率と再現率の調和平均。適合率だけでも再現率だけでも予測が偏ってしまうことがあるために、こういう値を使うこともあります。]


用語:正則化

学習に用いる式に項を追加することによって、とりうる重みの範囲を制限して、過度に重みが訓練データに対してのみ調整されてしまうことを防ぐ手法です。ただし、やりすぎると、アンダーフィッティングを起こしてしまいます。


L1正則化:

一部のパラメーターをゼロにすることで、特徴選択をおこなうことができる。これを線形回帰に適用した手法をラッソ回帰と呼ぶ。

L2正則化:

パラメーターの大きさに応じてゼロに近づけることで汎化された滑らかなモデルを得ることができる。これを線形回帰に適用した手法をリッジ回帰と呼ぶ。そして、ラッソ回帰とリッジ回帰の両方を組み合わせた手法をElastic Netと呼びます。





0コメント

  • 1000 / 1000

DUO Select 倶楽部

毎日1週DUO Select