はじめに
こちらの記事では「AIC、自由度調整済み決定係数」について考えていきます。
「AICや自由度調整済み決定係数って何のための指標なの?」
「AICや自由度調整済み決定係数を用いることでどんなメリットがあるの?」
といった疑問に答えていきたいと思います!
学習結果のテスト
今回のテーマは線形回帰分析のモデル評価指標についてです。
モデルというのは説明変数と目的変数のセットを学習することで見出した関数式、つまり「関係性のルール」のことです。
機械学習の”モデル” = 関係性のルール!!
ここでおさらいですが、線形回帰分析においてはこの関係性のルールが「直線」であるという前提のもと、その「傾き度合い」を推定するという分析を行っていました。
そして直線の精度を確かめるために見出した直線による予測と実際の目的変数の値との差を使ってテストを行うという話でした。
例としてDay6では以下のようなマンションの駅徒歩所要時間(説明変数)とマンション価格(目的変数)、そして見出した直線による予測結果のデータについて考えました。
説明変数 | 駅徒歩4分のときは? | 駅徒歩7分のときは? | 駅徒歩10分のときは? |
---|---|---|---|
目的変数 | 7,920万円 | 7,570万円 | 7,340万円 |
予測結果 | 7,900万円 | 7,600万円 | 7,300万円 |
差 | +20万円 | -30万円 | +40万円 |
上記の目的変数の値と予測結果の「差」が小さければ精度の高い直線だと評価できるという話でした。

罰則を与える
前回「ステップワイズ法とは?」で見たように線形回帰分析ではどの説明変数を学習するかがポイントでした。

そのうえでなるべく学習する価値の高い説明変数に集中して学習を行いたい…
そこでステップワイズ法により説明変数を段階的に選択し、各々の精度を確認し学習対象とするべき説明変数の最適な組み合わせを探していくという話でした。
ステップワイズ法 = 説明変数の最適な組み合わせを探す!!
Day14では触れませんでしたが実はこれは簡単なことではありません。。。
というのも選択する説明変数の種類が単純に多ければ多いほど見た目の精度は向上していってしまうからです。
例えばDay14でも見た以下のマンションに関するデータで考えてみましょう。
説明変数 | 駅徒歩3分 | 駅徒歩6分 | 駅徒歩9分 |
---|---|---|---|
説明変数 | 面積80㎡ | 面積70㎡ | 面積65㎡ |
説明変数 | 畳屋5km | 畳屋2km | 畳屋10km |
目的変数 | 8,000万円 | 7,700万円 | 7,200万円 |
目的変数は[マンションの価格]です。
一方の説明変数は[駅徒歩所要時間] [面積] [畳屋との距離]という3種類が与えられています。

このとき[畳屋との距離]という説明変数は(論理的にもデータ的にも)マンション価格と関係性があるようには思えません。
しかし、[駅徒歩]と[面積]だけを学習したときよりも、それに加えて[畳屋との距離]も学習したときの方が正解(実際の目的変数の値)と予測との差は小さくなってしまいます!
Day6ではこの点について「当てはまり」という言葉で考えました。

つまり学習する説明変数の種類が増えると、学習した「説明変数と目的変数のセット」への当てはまり自体はどんどん良くなってしまいます。
仮にその説明変数が本当は学習する価値がないものだっとしても、です。
したがって単に正解(実際の目的変数の値)と予測との差だけに着目すると説明変数の種類がただ多ければ精度が高まるということになります。
そうすると学習する説明変数の取捨選択ができません。
そこである工夫を行うのですが、それが学習する説明変数の多さに応じて「罰則を与える」という考え方です。
そして「罰則を与える」代表的な指標こそが以下で見ていくAICと自由度調整済み決定係数になります!
AIC
AICは赤池情報量基準というモデルの評価指標です。
詳細な数式は本ブログの趣旨ではないので割愛しますが、基本的な考え方は正解と予測との差を計算することに加え、学習した説明変数の種類の多さに応じた罰則を与えるものです。
どんな罰則かざっくり言うと、説明変数の数を2倍したものを罰則として加算したうえで指標を計算します(※)。
(※)実際の数式は以下になります。

そしてこの指標が最小となるときが最適な問題の組み合わせであると判断します。
注意したいのはAICは直線(あるいはその傾き度合い)の推定に直接的に影響するものではないという点です。
まず説明変数と目的変数のセットから関係性のルールを推定し、そのうえでその関係性のルールについてAICを算出する、という2STEPであることに注意しましょう。
これは次に見る自由度調整済み決定係数も同様です。
(直線を推定する段階で同時に罰則も考慮する手法は正則化と呼ばれ、別の記事にて考えていきます)
自由度調整済み決定係数
AICは小さくなるほど良い指標であったのに対し、自由度調整済み決定係数は大きくなるほど良いと判断する指標です。
そもそも決定係数というのは、学習することによって「正解と予測の差をどれくらい減らせたか」を表しています。
したがって正解と予測の差を減らせた度合いが大きければ決定係数は大きくなります。

この図でいうと、差が小さいほどあてはまりがよくなって決定係数は大きくなります。
自由度調整済み決定係数はこの決定係数に説明変数の多さに応じた罰則を与えます。
具体的には学習後にまだ残っている正解と予測の差を、学習した説明変数の種類が多いほど過大に見積もるような計算式を用います(※)。
残っている差を過大評価するので、その逆の減らせた度合いは過小評価することになります。

- 決定係数=1ー[正解と予測との間に残っている差(残差)]
- 自由度調整済み決定係数=1ー[正解と予測との間に残っている差(残差)]✕[説明変数の多さ] ※意訳した概略式です
これによって説明変数の多さに応じた罰則を与えています。
交差検証
ここまで見てきたAICや自由度調整済み決定係数を用いることで確かに学習する価値の高い説明変数に絞り込むことができそうです。
ここで全く別の観点からアプローチすることも考えてみます。
以下のDay13で交差検証について考えたことを覚えてますでしょうか。

機械学習の目的は未知なるデータに対して正しい予測値を導くことであり、そのために交差検証により手元のデータの一部を未知なるデータとみなしてテストを行うという話でした。
一方でここまで見てきたAICや自由度調整済み決定係数は、学習済みの説明変数と目的変数のセットに対する当てはまりの良さを考えるものです。
これはあくまでも学習したデータを使って未知なるデータに対する精度を推定するという作業です。
交差検証によるテストは大きなサンプルサイズを必要とし計算量も非常に多くなります。
そのためかつてはAICや自由度調整済み決定係数により未知なるデータに対する精度を推定することが多かったです。
ところが近年はサンプルサイズや計算量について心配することが少なくなり、交差検証により直接的に未知なるデータに対する精度を検証できるようになっています。
もちろんAICや自由度調整済み決定係数は現在でも一般的に使われる手法ですが、交差検証により未知なるデータへの精度を直接的に検証することができるということも改めて頭に入れておきましょう。
まとめ
最後に今回の記事のポイントを整理しておきます。
- 線形回帰分析においては学習する価値の高い説明変数の組み合わせを選びたい
- 単純に正解(実際の目的変数の値)と予測した値の差を見るだけでは学習する説明変数を取捨選択できない
- 説明変数を取捨選択するために説明変数の数の多さに応じた「罰則」を与える
- その代表的な指標がAICや自由度調整済み決定係数
- 一方で交差検証により未知なるデータへの精度を直接的に検証することもできる
AICや自由度調整済み決定係数はとくに統計学の分野で用いられる重要な指標です。
データ分析に関する会話や説明のなかで頻繁に出てくるワードだと思いますので、ぜひここでその意味を理解しておきましょう。
今回は以上になります。
最後まで読んでいただきありがとうございました!




統計学の基礎を効率的に学べるベーシック講座です。統計学の入り口となる「確率分布・推定・検定」について豊富な図を用いて説明していきます。
2021年3月リリース後すでに20,000人以上の方に受講いただき大人気ベストセラーコースとなっています!ぜひこの機会に統計学や確率思考という一生モノのスキルを一緒に身につけましょう!
※上記リンクからですと時期によってはクーポンが自動適用されます。
※Udemyは世界最大級のオンライン学習プラットフォームです。以下記事にてUdemyをご紹介しておりますのでよろしければこちらもご覧ください。
