「自由度調整済み決定係数」と「補正R2」は同じものですか?

はい、まったく同じものです。

こんにちは。ゆうせいです。

現場や教科書によって呼び方が違うと混乱しますよね。でも安心してください。「自由度調整済み決定係数」と「補正R2(補正決定係数)」は、どちらも英語の Adjusted R-squared を指す言葉で、中身は完全に一緒です。

新人エンジニアのあなたに向けて、この指標が裏でどんな計算(=仕事)をしているのか、その「仕組み」を感覚的に理解できるように解説しますね。


仕組み:変数に「コスト」を支払わせる

前回、「説明変数を増やすと決定係数は勝手に上がってしまう」という話をしました。これを防ぐために、この指標は「変数を増やすことに対するペナルティ(コスト)」を計算式に組み込んでいます。

イメージとしては、「利益(精度の向上)」から「経費(変数の数)」を差し引いたものが、最終的な評価(自由度調整済み決定係数)」になるという仕組みです。

1. 決定係数の正体(おさらい)

まず、普通の決定係数( R^2 )は、ざっくり言うとこんな計算をしています。

決定係数 = 1 - \frac{説明できなかったエラーの総量}{データの全バラつき}

「エラー」が減れば、引き算される量が減るので、スコア(決定係数)は1に近づきます。変数を増やせば、無理やりエラーを減らせるので、スコアは上がります。

2. ここに「自由度」の補正が入る

自由度調整済み決定係数では、この「エラー」の部分に、以下のような補正をかけます。

「エラーの総量」を、ただ足し合わせるのではなく、「データの数 - 変数の数」で割るのです。

これが「自由度で割る」という操作の正体です。

3. なぜこれで「ペナルティ」になるの?

ここが一番のポイントです。割り算の分母に注目してください。

  • 分母 = データの数 - 変数の数

もしあなたが、「精度を上げたいから変数を増やそう!」として変数の数を増やしたとします。すると、分母(割る数)は小さくなりますよね?

「ある数を、より小さな数で割る」と、どうなりますか?

そう、答え(割り算の結果)は大きくなります。

つまり、変数を増やすという行為は、「計算上のエラーの値を(割り算によって)大きく膨らませてしまう効果」を持つのです。

  • 変数を増やす
    • → 予測のエラー自体は少し減る(プラス要素)
    • → でも、割り算の分母が減るせいで、計算上のエラー値が膨らむ(マイナス要素=ペナルティ)

この2つの綱引きが行われます。

もし「変数を増やした効果」が「ペナルティ」を上回るほど劇的にエラーを減らしたなら、スコアは上がります。

逆に、ゴミのような変数を増やしてエラーがほとんど減らなかった場合、「ペナルティ」の方が勝ってしまい、計算上のエラー値が大きくなり、結果としてスコアは下がります。

エンジニア的な例え話

もっと直感的に、プロジェクトマネジメントで例えてみましょう。

  • プロジェクトの成果:モデルの予測精度
  • チームメンバー:説明変数

普通の決定係数は、「成果の総量」だけを見ます。

「メンバーを100人に増やして、成果が1%上がった」なら、「すごい!成果が上がった!」と評価してしまいます。たとえ99人がサボっていても、成果の合計が増えればOKなのです。

自由度調整済み決定係数(補正R2)は、「1人あたりの生産性」を厳しく見ます。

「メンバーを増やしたなら、その人件費以上のアウトプットを出せよ?」というプレッシャーをかけてくる上司のようなものです。

もしメンバー(変数)を増やしても、それに見合うだけの劇的な成果アップがなければ、「効率が悪くなった」と判断されて評価(スコア)を下げられます。

まとめ

  • 同じものです:「自由度調整済み決定係数」=「補正R2」です。
  • 仕組み:計算式の分母(自由度)を操作することで、変数を増やすと「見かけのエラー値」が膨らむように細工されています。
  • 結果:本当に役立つ変数を追加したときだけ数値が上がり、無駄な変数を追加すると数値が下がるようになります。

これで、変数を追加するときに「これは本当にコスト(ペナルティ)に見合う価値があるデータか?」と考えるクセがつきますね。

セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。