R二乗に関する追加情報
Details_of_R_square
フィットの良さは、どのように決まるのでしょうか?1つの明確な基準は、フィット曲線が実際のデータポイントにどの程度近いのかということです。前のセクションから、残差二乗和 (RSS) または既約カイ二乗値が、このような距離を評価するのに使用できる定量的な値であることが分かっています。しかし、残差二乗和(RSS) の値は、データセットによって異なり、この値を一定の範囲で再スケールする必要があります。一方、データの特徴を説明するために y 値の平均を使いたいこともあります。このような場合、フィット曲線は水平線 になり、 予測変数 x は線形的に y 値を予測できません。これを確認するには、最初に、次のような式でデータポイントとその平均との差、平均についての二乗和を計算します。
![TSS=\sum_{i=1}^n(y_i-\overline{y})^2 \,\! TSS=\sum_{i=1}^n(y_i-\overline{y})^2 \,\!](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-d13055e359b42226d0b8ae6ba915df63.png)
最小二乗フィッティングでは、TSS を回帰によって明らかになる変化量と回帰によって明らかにならない変化量の2つの部分に分けることができます。
- 回帰の二乗和 SSreg は、回帰モデルで明らかになる変化量の一部です。
|
![SSreg=\sum_{i=1}^n(\widehat{y_i}-\overline{y})^2 \,\! SSreg=\sum_{i=1}^n(\widehat{y_i}-\overline{y})^2 \,\!](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-f4247da7269e1f6bd96b1cb786a8daa7.png)
|
- 残差の二乗和 RSS は、回帰モデルで明らかにならない 変化量の一部です。
|
![RSS=\sum_{i=1}^n(y_i-\widehat{y_i})^2 \,\! RSS=\sum_{i=1}^n(y_i-\widehat{y_i})^2 \,\!](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-634bbb984efc22841c46916fdb141a1e.png)
|
明らかに、データポイントはフィット曲線に近いほどば、RSS が小さくなり、SSregで表される合計変化量の比率は大きくなります。つまり、TSSに対する SSreg の比は、 回帰モデルの性質の1つの尺度として使うことができます。この量は、決定係数と呼ばれ、次の式で計算されます。
![R^2=\frac{SSreg}{TSS}=1-\frac{RSS}{TSS} \,\! R^2=\frac{SSreg}{TSS}=1-\frac{RSS}{TSS} \,\!](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-c816efca2c109e12f1095236ff58d882.png)
上記の式から、良いフィットモデルを使うと、 は0から1の間で変化するということが分かります。1に近い値は、フィットが良いものだということを示しています。
数学的には、自由度が に影響します。それは、モデルに変数を追加すると、 が大きくなりますが、これはフィットが良くなったことを示しているわけではありません。この影響を避けるため、調整 を見ることができます。
![\overline{R}^2=1-\frac{RSS/df_{Error}}{TSS/df_{Total}} \,\! \overline{R}^2=1-\frac{RSS/df_{Error}}{TSS/df_{Total}} \,\!](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-56ed207e01d9d11e34c2fa201b98e00b.png)
数式から、補正 が の増加に勝っていることが分かります。特に複数の予測変数 (k) モデルでサンプルサイズ (n) が小さいフィットの場合にそうなります。通常、決定係数を「R二乗値」と呼びますが、実際には R値の二乗ではありません。ほとんどの場合、その値は0から1の間になりますが、フィット結果が良くないときにはR^2 は負の値になることもあります。これは、 を計算する数式が であるために起こります。悪いモデルが使われた場合、2番目の項が1より大きくなります。
しかし、 あるいは補正 を使うことは十分ではありません。例えば、次のグラフでは、プロットBからDで表されるフィット曲線は、高い 値になりますが、見かけ上のモデルが不適切です。そのため、残差分析によって回帰の結果を診断する必要があります。
![Goodness of Fit.jpg](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/Goodness_of_Fit.jpg)
線形フィットでのR二乗
交点を含む線形フィット
線形フィットに交点が含まれている場合、以下の関係に基づきます。
![\sum_{i=1}^n (y_i-\bar{y})^2 = \sum_{i=1}^n (y_i-f(x_i))^2 + \sum_{i=1}^n (f(x_i)-\bar{y})^2 \sum_{i=1}^n (y_i-\bar{y})^2 = \sum_{i=1}^n (y_i-f(x_i))^2 + \sum_{i=1}^n (f(x_i)-\bar{y})^2](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-f27785e30b46e8d63fc44e61bc5097d7.png)
ここで、 はフィットデータ、 は従属変数の平均、 はフィット値を表しています。
上記数式の左辺は総平方和を表します。
![TSS = \sum_{i=1}^n (y_i-\bar{y})^2 TSS = \sum_{i=1}^n (y_i-\bar{y})^2](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-65662ccc390f7d7235cfde7790068791.png)
右辺の最初の項は残差平方和を表します。
![RSS = \sum_{i=1}^n (y_i-f(x_i))^2 RSS = \sum_{i=1}^n (y_i-f(x_i))^2](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-5b6fe5a5e38d5b1e0c1295c200aef14f.png)
右辺の2番目の項は、回帰による平方和を表します。
![SSR = \sum_{i=1}^n (f(x_i)-\bar{y})^2 SSR = \sum_{i=1}^n (f(x_i)-\bar{y})^2](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-98c4dfa1b52ea241deb3e3f72a8ede46.png)
よって、TSS = RSS + SSR.が成り立ちます。
決定係数(R二乗値)はSSRとTSSの比率で定義されます。
![R^2=\frac{SSR}{TSS}=1-\frac{RSS}{TSS}=1-\frac{\sum_{i=1}^n (y_i-f(x_i))^2}{\sum_{i=1}^n (y_i-\bar{y})^2} R^2=\frac{SSR}{TSS}=1-\frac{RSS}{TSS}=1-\frac{\sum_{i=1}^n (y_i-f(x_i))^2}{\sum_{i=1}^n (y_i-\bar{y})^2}](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-87012079a131e26d822f0af602776401.png)
よって、R二乗値は交点を含んだときのフィット結果で説明できる平均についての偏差の比率を表しています。
固定切片のための線形フィット
線形フィットで切片が固定されている場合、上記切片を含む線形フィットで説明された関係は満たされなくなります。悪いフィットの場合、 切片を含む線形フィットで定義した式では負のR二乗値を生む結果になってしまう可能性もあります。それでは、意味をなしません。
線形フィットの切片が固定されている場合、以下の関係に基づきます。
![\sum_{i=1}^n y_i^2 = \sum_{i=1}^n (y_i-f(x_i))^2 + \sum_{i=1}^n (f(x_i))^2 \sum_{i=1}^n y_i^2 = \sum_{i=1}^n (y_i-f(x_i))^2 + \sum_{i=1}^n (f(x_i))^2](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-4bb63ecc585d86a8829dec4019fe998f.png)
そして、TSSとSSRは再定義する必要があり、RSSについては変更はありません。
![TSS = \sum_{i=1}^n y_i^2 TSS = \sum_{i=1}^n y_i^2](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-898716dfe4c0756a5032aff8d5101712.png)
![SSR = \sum_{i=1}^n (f(x_i))^2 SSR = \sum_{i=1}^n (f(x_i))^2](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-120a95f050e837d97b73fecc20722464.png)
決定係数(R二乗値)は以下のように再定義されます。
![R^2=\frac{SSR}{TSS}=1-\frac{RSS}{TSS}=1-\frac{\sum_{i=1}^n (y_i-f(x_i))^2}{\sum_{i=1}^n y_i^2} R^2=\frac{SSR}{TSS}=1-\frac{RSS}{TSS}=1-\frac{\sum_{i=1}^n (y_i-f(x_i))^2}{\sum_{i=1}^n y_i^2}](//d2mvzyuse3lwjc.cloudfront.net/doc/ja/UserGuide/images/Details_of_R_square/math-5b936b2331157d838945fac4f2fa4bda.png)
この方法で、R二乗値は常に整数(負の数ではない)になります。また、R二乗値は切片を固定したときのフィット結果で説明できる0付近の値についての偏差の比率を表しています。
|