機械学習

正則化(縮小推定)とは? [Day16]

はじめに

こちらの記事では線形回帰分析の傾き度合いを縮小する「正則化(縮小推定)」について考えていきます。

「正則化ってどんなものなの?」

「正則化ってAICや自由度調整済み決定係数とは何が違うの?」

といった疑問に答えていきたいと思います!

tota
tota
文系出身データアナリストのtotaです!初心者でも分かるように解説していきますね!

正則化とは

前回のDay15ではAICや自由度調整済み決定係数という指標について考えました。

これらはある説明変数と目的変数のセットを一旦学習して関係性のルール(直線および傾き度合い)を見出し、

それについて説明変数の数の多さに応じた罰則を考慮して評価するものでした。

つまり、まず関係性のルールを推定し、次にその関係性のルールを罰則も考慮して評価する、という2STEPの作業となっていました。

なお説明変数の数の多さに罰則を与えるのは、説明変数の数が増えると(仮にそれが学習する価値のない説明変数だったとしても)多少は精度が改善(答えと予測の差が減少)してしまい評価がうまくできないからでした。

この辺は以下のDay15もご覧ください。

AIC / 自由度調整済み決定係数(R2乗)とは? [Day15]はじめに こちらの記事では「AIC、自由度調整済み決定係数」について考えていきます。 「AICや自由度調整済み決定係数って何のた...

今回考える正則化も説明変数の数の多さに応じた罰則を考慮したいという点ではAICや自由度調整済み決定係数と同じです。

しかしそれらとの決定的な違いは2STEPではなく1STEPでそれを行うということです。

というのも正則化は関係性のルールを推定するまさにその段階で説明変数の多さに応じた罰則も同時に考慮してあげる手法だからです。

通常、線形回帰分析では正解(実際の目的変数の値)と予測の差が最小となるように直線の傾き度合いを推定します。

これに対し正則化では「ある制約の下で」正解と予測の差が最小となるように直線の傾き度合いを推定します。

この「ある制約」というのが学習する説明変数の多さに応じた罰則としての機能を果たします。

例えば以下のようなマンションのデータ(Day15で見たものと同じです)があったとします。

説明変数 駅徒歩4分のときは? 駅徒歩7分のときは? 駅徒歩10分のときは?
目的変数 7,920万円 7,570万円 7,340万円
予測結果 7,900万円 7,600万円 7,300万円
-20万円 +30万円 -40万円

説明変数が2種類以上あるので、これを線形回帰分析する場合はDay7で考えた重回帰分析となります。

重回帰分析とは? [Day7]はじめに この記事では機械学習における「重回帰分析」について考えていきます。 「重回帰分析ってどういうもの?」 「重回帰分...

重回帰分析においては説明変数の種類ごとに直線の傾き度合いを推定します。

先ほどの「ある制約」とはこの「説明変数の種類ごとの傾き度合い」の「合計」に制約を課すような条件になります。

例えば上記のデータで言うと、各説明変数の直線の傾き度合いの合計、すなわち、”駅徒歩”の傾き度合い、”面積”の傾き度合い、”畳屋距離”の傾き度合いの3つの傾き度合いの「合計」が一定以下となるような制約が課されるのです。

つまり正則化とは、正解と予測の差が最小となるように傾き度合いを推定するのだけれど、

同時に各説明変数の傾き度合いの「合計」が一定以下となるようにしましょう、

という分析手法になります。

その結果、推定される傾き度合いは、単純に正解と予測の差が最小となることだけを目指した場合よりも小さくなります。

言い換えると「縮小」されます。

このことから正則化のことを縮小推定とも呼びます。

リッジ回帰

正則化には2つの代表的な手法があります。

リッジ回帰Lasso(ラッソ)回帰です。

両者の違いは各説明変数の傾き度合いの「合計」についての考え方の違いだけです

(ただその違いがとても重要です)

まずはリッジ回帰について見ていきましょう。

リッジ回帰は制約としての各説明変数の傾き度合いの合計を考える際、

各説明変数の傾き度合いを2乗したうえで合計を計算します。

つまり先ほどのデータの例で言うと以下のように考えます。

各説明変数の傾き度合いの「合計」
=”駅徒歩”の傾き度合いの2乗
+”面積”の傾き度合いの2乗
+”畳屋距離”の傾き度合いの2乗

これが一定以下となるような制約(条件)の下で各説明変数の傾き度合いを推定する手法がリッジ回帰になります。

Lasso回帰

一方でLasso回帰では各説明変数の傾き度合いの合計を「2乗」ではなく単純な和で計算します。

つまり先ほどのデータで言うと以下のようになります。

各説明変数の傾き度合いの「合計」
=”駅徒歩”の傾き度合い
+”面積”の傾き度合い
+”畳屋距離”の傾き度合い

リッジ回帰のように2乗するのでなく単純な和で計算しています。

この単純な和が一定以下となるような制約(条件)の下で各説明変数の傾き度合いを推定する手法がLasso回帰になります。

罰則の意味

上記のような制約によりなぜ説明変数の種類の多さに罰則を与えられるのでしょうか。

もう一度先ほどのマンションデータを見てみましょう。

説明変数 駅徒歩4分のときは? 駅徒歩7分のときは? 駅徒歩10分のときは?
目的変数 7,920万円 7,570万円 7,340万円
予測結果 7,900万円 7,600万円 7,300万円
-20万円 +30万円 -40万円

そもそも説明変数の種類が多いと学習する価値が低い説明変数まで混ざってしまうことが問題でした。

上記の例では”畳屋との距離”はあまり学習価値はなさそうです。

というのも”畳屋との距離”と目的変数であるマンション価格との関係性はあまりなさそうだからです。

だとしたら”畳屋との距離”については学習度合いを弱めてあげればいい、というのが正則化の発想です。

具体的には”畳屋との距離”を学習することによる正解と予測の差の減少度合い(いわば学習効果)と、

“畳屋との距離”について推定した傾き度合い(いわば学習度合い)を比べます。

そして仮に前者(学習効果)の方が小さければ後者(学習度合い)を縮小してあげます。

要は、上記のような各説明変数の傾き度合いの合計についての制約を課すことで、

学習効果の低い説明変数に対する学習度合いを弱めているイメージです。

こうすることで学習する価値が低い説明変数まで学習しすぎてしまうことを抑制しているのです。

正則化のうれしいこと

実は正則化にはうれしいことが他にも2つあります。

それは「計算量が少ないこと」「説明変数の絞り込みも可能」という点です。

まず「計算量が少ないこと」についてですが、これはAICや自由度調整済み決定係数が2STEPであるのに対し、正則化は1STEPであることに1つの要因があります。

どちらも説明変数の種類の多さへの罰則を考慮する手法ではありますが

AICや自由度調整済み決定係数の方は一度関係性のルールを見出し、その後に罰則を考慮してそれを評価するという2STEPでした。

それに対し正則化は最初から罰則を考慮して関係性のルールを見出すので1STEPで済みます。その結果、計算量も少なくなります。

また「説明変数の絞り込みも可能」という点についてはLasso回帰におけるうれしい点です(リッジ回帰にはこのメリットはありません)。

Lasso回帰もリッジ回帰も各説明変数の傾き度合いの「合計」を罰則として考慮していました。

この合計の増加度合い(学習度合いの合計)と正解と予測の差の改善度合い(学習効果)を見比べてその説明変数の傾き度合い(その説明変数の学習度合い)を調整します。

再度、先ほどのマンションデータおよびリッジ回帰とLasso回帰の傾き度合いの「合計」の考え方を見てみましょう。

説明変数 駅徒歩4分のときは? 駅徒歩7分のときは? 駅徒歩10分のときは?
目的変数 7,920万円 7,570万円 7,340万円
予測結果 7,900万円 7,600万円 7,300万円
-20万円 +30万円 -40万円

【リッジ回帰】
各説明変数の傾き度合いの「合計」
=”駅徒歩”の傾き度合いの2乗
+”面積”の傾き度合いの2乗
+”畳屋距離”の傾き度合いの2乗

【Lasso回帰】
各説明変数の傾き度合いの「合計」
=”駅徒歩”の傾き度合い
+”面積”の傾き度合い
+”畳屋距離”の傾き度合い

リッジ回帰とLasso回帰の違いは各説明変数の傾き度合いを2乗しているかどうかです。

ここで「2乗」の意味について考えてみたいのですが、2乗というのは「円」や「非線形」のイメージです。

つまり「線形(直線)ではない」というイメージですね。

さらに少々抽象的ですが「非線形」は丸みを帯びていて柔軟さを持ち合わせている一方、「線形」は真っ直ぐで不器用な特性があります。

つまりリッジ回帰は2乗して考える柔軟な特性の持ち主である一方、Lasso回帰は「線形」な真っ直ぐで不器用な特性の持ち主であると言えます。

リッジ回帰は持ち前の柔軟さによって、”駅徒歩”、”面積”、”畳屋との距離”という3つの説明変数すべてに対して傾き度合いを微調整して見出します。

一方でLasso回帰はその不器用さゆえに学習効果の低い説明変数に対してはバッサリと切り捨ててしまいます。

つまり、Lasso回帰は説明変数を絞り込む機能があるというわけです!

まとめ

最後に今回の記事のポイントを整理します。

  • 正則化は説明変数の種類の多さへの罰則を考慮して関係性のルールを見出す
  • リッジ回帰Lasso回帰も各説明変数の傾き度合いの合計に制約を加える手法
  • 傾き度合いの合計(学習度合いの合計)と、正解と予測の差の減少度合い(学習効果)を見比べて、各説明変数の傾き度合い(各問題の学習度合い)を調整するイメージ
  • その際、リッジ回帰は2乗で考える柔軟な特性の持ち主、Lasso回帰は単純な和で考える不器用な特性の持ち主
  • 正則化は計算量が少なくて済む
  • Lasso回帰はその不器用さゆえに学習効果の低い説明変数をバッサリ切り捨てることができる

正則化は統計学と機械学習のいいとこ取りをしたような手法です。

線形という関係性のルールがわかりやすい統計学的な手法を使いながら、

機械的に学習する説明変数を取捨選択するという機械学習的なアプローチも兼ね備えています。

そういう意味ではマーケティング活動やリサーチにおいても利用される場面は増えてきそうな手法ですので、ぜひここで一緒に理解しておきましょう。

今回は以上になります。

最後まで読んでいただきありがとうございました!

統計学ベーシック講座【確率分布・推定・検定】

統計学の基礎を効率的に学べるベーシック講座です。統計学の入り口となる「確率分布・推定・検定」について豊富な図を用いて説明していきます。

2021年3月リリース後すでに20,000人以上の方に受講いただき大人気ベストセラーコースとなっています!ぜひこの機会に統計学や確率思考という一生モノのスキルを一緒に身につけましょう!

※上記リンクからですと時期によってはクーポンが自動適用されます。
※Udemyは世界最大級のオンライン学習プラットフォームです。以下記事にてUdemyをご紹介しておりますのでよろしければこちらもご覧ください。

Udemyとは?セールでお得な世界最大級のオンライン学習プラットフォームこの記事では世界最大級のオンライン学習プラットフォームであるUdemyをご紹介していきます!まだUdemyを使っていない方やこれから使お...