決定係数(R²)とは?
決定係数(R²、R2乗とも呼ばれます)は、モデルの予測値が実際に観測されたデータにどれだけ当てはまっているかを示す指標です。具体的には、目的変数(従属変数)の分散のうち、モデルによって説明できる割合を表します。R²は最大で1(予測値が実測値と完全に一致する理想的な当てはまり)、0(平均値をそのまま予測するのと変わらない)まで変化し、さらにモデルが平均値ベースラインよりも劣る場合にはマイナスの値になることもあります。
この計算ツールの使い方
実際に観測された値(y)のリストと、それに対応する予測値(ŷ)のリストを、同じ順番でカンマ区切りの数値として入力してください。本ツールが両者をペアにし、実測値の平均を求めたうえで、残差平方和(SSres)と全平方和(SStot)を計算し、R²と説明できた分散の割合(%)を返します。
計算式の解説
$$R^{2} = 1 - \frac{SS_{res}}{SS_{tot}}$$ です。ここで \(SS_{res} = \sum (y_i - \hat{y}_i)^2\) は、モデルの予測後に残る誤差(残差)を表し、\(SS_{tot} = \sum (y_i - \bar{y})^2\) は、データがその平均値の周りでどれだけばらついているか、つまり全体の変動量を表します。SSres を SStot で割ると、モデルが説明できなかった変動の割合がわかり、それを1から引くことで、モデルが説明できた変動の割合が求められます。
計算例
実測値 = [3, −0.5, 2, 7]、予測値 = [2.5, 0.0, 2, 8] の場合。実測値の平均 = 2.875。\(SS_{res} = 0.5^2 + 0.5^2 + 0^2 + 1^2 = 0.25 + 0.25 + 0 + 1 = 1.5\)。\(SS_{tot} = (0.125)^2 + (3.375)^2 + (0.875)^2 + (4.125)^2 \approx 0.0156 + 11.3906 + 0.7656 + 17.0156 = 29.1875\)。$$R^{2} = 1 - \frac{1.5}{29.1875} \approx 0.9486$$ となり、このモデルは分散の約94.9%を説明できていることになります。
よくある質問(FAQ)
R²はマイナスになることがありますか? はい、あります。予測値が、毎回ただ平均値を当てる場合よりも悪い結果になると、SSres が SStot を上回り、R²はマイナスの値になります。
R²が高ければ良いモデルと言えますか? 必ずしもそうとは限りません。R²は過学習(オーバーフィッティング)や無関係な説明変数の追加によって、見かけ上高くなることがあります。残差プロットや未知データ(テストデータ)での性能と合わせて、必ず総合的に判断しましょう。
R²と相関係数の違いは何ですか? 単回帰分析の場合、R²は実測値と予測値の間のピアソン相関係数(r)の2乗に等しくなります。