決定係数 (R-squared)
目的
決定係数 (R-squared) は、線形回帰モデルの独立変数 X で説明される応答変数 y の変化に比例する量を表します。決定係数が大きいほど、線形回帰モデルで説明される変動性が大きくなります。
定義
決定係数は、モデルで説明される二乗の総和の比率です。Rsquared
(近似モデルのプロパティ) は次の 2 つのフィールドをもつ構造体です。
Ordinary
— 通常の (自由度未調整) 決定係数Adjusted
— 係数の個数に対する自由度調整済み決定係数SSE は二乗誤差の総和、SSR は二乗回帰の総和、SST は二乗和の総和、n は観測数、p は回帰係数の個数です。p には切片が含まれることに注意してください。したがって、たとえば線形近似の場合は p が 2 になります。決定係数は回帰モデルの予測子の変数の追加にともない増加するため、自由度調整済み決定係数はモデルの予測子変数の数に対して調整されます。このため、予測子の数が異なるモデルとの比較に便利です。
使用方法
近似モデル (mdl
など) を取得した後、fitlm
または stepwiselm
を使用して、ドット表記でプロパティのインデックスを使用し、決定係数の値をスカラーとして取得することができます。次に例を示します。
mdl.Rsquared.Ordinary mdl.Rsquared.Adjusted
また、同じ名前でプロパティを使用して、SSE、SSR、SST を取得することもできます。
mdl.SSE mdl.SSR mdl.SST
決定係数の表示
この例では、決定係数と自由度調整済み決定係数の表示方法を説明します。標本データを読み込み、応答変数および独立変数を定義します。
load hospital
y = hospital.BloodPressure(:,1);
X = double(hospital(:,2:5));
線形回帰モデルをあてはめます。
mdl = fitlm(X,y)
mdl = Linear regression model: y ~ 1 + x1 + x2 + x3 + x4 Estimated Coefficients: Estimate SE tStat pValue _________ ________ ________ __________ (Intercept) 117.4 5.2451 22.383 1.1667e-39 x1 0.88162 2.9473 0.29913 0.76549 x2 0.08602 0.06731 1.278 0.20438 x3 -0.016685 0.055714 -0.29947 0.76524 x4 9.884 1.0406 9.498 1.9546e-15 Number of observations: 100, Error degrees of freedom: 95 Root Mean Squared Error: 4.81 R-squared: 0.508, Adjusted R-Squared: 0.487 F-statistic vs. constant model: 24.5, p-value = 5.99e-14
決定係数と自由度調整済み決定係数の値はそれぞれ 0.508 と0.487 です。モデルは応答変数の変動性の約 50% を説明します。
近似 LinearModel
オブジェクトのプロパティを使用して決定係数と自由度調整済み決定係数の値にアクセスします。
mdl.Rsquared.Ordinary
ans = 0.5078
mdl.Rsquared.Adjusted
ans = 0.4871
自由度調整済み決定係数の値は通常の決定係数の値より小さくなっています。
参考
LinearModel
| fitlm
| stepwiselm
| anova