如何理解R知道r的平方怎么求r= R* R=?

其实问题的本身也并不是那么清楚。 R 方(或 R^2 )的指代是明确的,就是拟合回归最后对拟合回归效果的一个评价指标。R^2 越接近于1,则拟合回归效果越好。如先前的各回复所述,相关系数衡量的是两个变量的线性相关程度。相关系数牵扯到两个变量,但问题并没有明确要说明哪两个变量的相关系数。不过最有可能的情况是,存在一系列样本 (x_i,y_i) ,或者说散点,其中 i=1,...,n ,问题想要问 x 和 y 的相关系数\rho(x,y) 和对散点 (x_i,y_i) 拟合回归得到的 R^2 二者之间的关系。为了完整性,先说明了最小二乘法和 \rho(y,\hat{y}) 。先说结论:1、对于线性回归的最小二乘拟合,有\rho(x,y)=\pm\sqrt{R^2}\\ 因此,就是常说的相关系数表征的是线性关系强弱。而非线性关系时,上式不成立。2、对于二维散点进行任意函数的最小二乘拟合,都可以得到\rho(y,\hat{y})=\sqrt{R^2}\\ 可见,无论线性拟合还是非线性拟合,都可以用R方来表征拟合的好还是坏。 1 线性回归与最小二乘法首先,从线性回归谈起。若用线性回归来表示自变量和因变量的关系:y=\beta_0+\beta_1x+\varepsilon ,其中 \hat{y}=\beta_0+\beta_1x 。用最小二乘法来拟合可知:最小二乘法:目标是最小化残差的平方和(SSR,Sum of Square Residuals) SSR = \sum^{n}_{i=1}{(e_i)^2}=\sum^{n}_{i=1}{(y_i-\hat{y}_i)^2}=\sum^{n}_{i=1}{(y_i-\beta_0-\beta_1x_i)^2} \\ 对SSR求参数的偏导,令偏导数等于零,可得最优参数: \frac{\partial SSR}{\partial \beta_0}=\sum^{n}_{i=1}2{(y_i-\beta_0-\beta_1x_i)}(-1)=0 \\ \frac{\partial SSR}{\partial \beta_1}=\sum^{n}_{i=1}{2(y_i-\beta_0-\beta_1x_i)(-x_i)}=0\\ 则
\sum^{n}_{i=1}{(y_i-\beta_0-\beta_1x_i)}=\sum_{i=1}^{n}(y_i-\hat{y}_i)=0 \\ \sum^{n}_{i=1}{(y_i-\beta_0-\beta_1x_i)x_i}=\sum_{i=1}^{n}(y_i-\hat{y}_i)x_i=0\\ 根据上面的式子,也可以得到一个中间结论: \overline{\hat{y}}=\frac{\sum_{i=1}^{n}\hat{y}_i}{n}= \frac{\sum_{i=1}^{n}y_i}{n}= \bar{y} \\ 2 相关系数 \rho(y,\hat{y}) 根据相关系数的公式\begin{align*} \rho(y_i,\hat{y}_i) &=\frac{cov(y_i,\hat{y}_i)}{\sqrt{var(y_i)var(\hat{y}_i)}}\\ &=\frac{\sum_{i=1}^{n}(y_i-\bar{y})(\hat{y}_i-\bar{y})}{\sqrt{\sum_{i=1}^{n}(y_i-\bar{y})^2\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}}\\ &=\frac{\sum_{i=1}^{n}(y_i-\hat{y}_i+\hat{y}_i-\bar{y})(\hat{y}_i-\bar{y})}{\sqrt{\sum_{i=1}^{n}(y_i-\bar{y})^2\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}}\\ &=\frac{\sum_{i=1}^{n}(y_i-\hat{y}_i)(\hat{y}_i-\bar{y})+\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}{\sqrt{\sum_{i=1}^{n}(y_i-\bar{y})^2\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}}\\ &=\frac{0+\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}{\sqrt{\sum_{i=1}^{n}(y_i-\bar{y})^2\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}}\\ &=\sqrt{\frac{\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}{\sum_{i=1}^{n}(y_i-\bar{y})^2}}\\ &=\sqrt{R^2}\\ \end{align*}\\
其中, \begin{align*} \sum_{i=1}^{n}(y_i-\hat{y}_i)(\hat{y}_i-\bar{y})&=\sum_{i=1}^{n}(y_i-\hat{y}_i)(\beta_0+\beta_1x_i-\bar{y})\\ &=(\beta_0-\bar{y})\sum_{i=1}^{n}(y_i-\hat{y}_i)+\beta_1\sum_{i=1}^{n}(y_i-\hat{y}_i)x_i\\ &=0 \end{align*}\\ \rho(y_i,\hat{y}_i) 永远为正,不然费半天劲去拟合干嘛,拟合后符号肯定是一致的。3 相关系数\rho(x,y) 其实 \rho(x,y) =\pm\rho(y,\hat{y})=\pm\sqrt{R^2} \\ 其中 \rho(x,y) =\frac{\sum_{i=1}^{n}(x_i-\bar{x})(y_i-\overline{y})}{\sqrt{\sum_{i=1}^{n}(x_i-\bar{x})^2\sum_{i=1}^{n}(y_i-\overline{y})^2}}\\ 证明如下: \begin{align*} \rho(\hat{y},y) &=\frac{\sum_{i=1}^{n}(\hat{y}_i-\bar{y})(y_i-\bar{y})}{\sqrt{\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2\sum_{i=1}^{n}(y_i-\bar{y})^2}}\\ &=\frac{\sum_{i=1}^{n}\beta_1(x_i-\bar{x})(y_i-\bar{y})}{\sqrt{\sum_{i=1}^{n}\beta_1^2(x_i-\bar{x})^2\sum_{i=1}^{n}(y_i-\bar{y})^2}}\\ &=sgn(\beta_1)\frac{\sum_{i=1}^{n}(x_i-\bar{x})(y_i-\bar{y})}{\sqrt{\sum_{i=1}^{n}(x_i-\bar{x})^2\sum_{i=1}^{n}(y_i-\bar{y})^2}}\\ &=sgn(\beta_1)\rho(x,y)\\ \end{align*}\\ 注意 \beta_1 的符号。4 相关系数 \rho(x,\hat{y}) x 与 \hat{y} 为线性关系,即可表示为 \hat{y}=\beta_0+\beta_1x ,则相关系数必定为 \pm1 。证明如下: \begin{align*}\rho(x,\hat{y}) &=\frac{cov(x_i,\hat{y}_i)}{\sqrt{var(x_i)var(\hat{y}_i)}}\\ &=\frac{\sum_{i=1}^{n}(x_i-\bar{x})(\hat{y}_i-\overline{\hat{y}_i})}{\sqrt{\sum_{i=1}^{n}(x_i-\bar{x})^2\sum_{i=1}^{n}(\hat{y}_i-\overline{\hat{y}_i})^2}}\\ &=\frac{\sum_{i=1}^{n}(x_i-\bar{x})\cdot\beta_1(x_i-\bar{x})}{\sqrt{\sum_{i=1}^{n}(x_i-\bar{x})^2\sum_{i=1}^{n}\beta_1^2(x_i-\bar{x})^2}}\\ &=sgn(\beta_1)\\ \end{align*}\\
其中, \hat{y}_i=\beta_0+\beta_1x_i\\ \overline{\hat{y}_i}=\beta_0+\beta_1\overline{x_i}\\ \hat{y}_i-\overline{\hat{y}_i}=\beta_1(x_i-\overline{x_i})\\ \hat{y}_i-\bar{y}=\beta_1(x_i-\bar{x}) 5 二次回归的 R^2 与 \rho(y,\hat{y}) 若用二次关系来拟合函数点,即 \hat{y}=\beta_0+\beta_1x+\beta_2x^2 。最小二乘法:目标是最小化残差的平方和( SSR ), SSR = \sum^{n}_{i=1}{(e_i)^2}=\sum^{n}_{i=1}{(y_i-\hat{y}_i)^2}=\sum^{n}_{i=1}{(y_i-\beta_0-\beta_1x_i-\beta_2x_i^2)^2}\\ 对SSR求参数的偏导,令偏导数等于零,可得最优参数:\frac{\partial SSR}{\partial \beta_0}=\sum^{n}_{i=1}2{(y_i-\beta_0-\beta_1x_i-\beta_2x_i^2)}(-1)=0\\ \frac{\partial SSR}{\partial \beta_1}=\sum^{n}_{i=1}{2(y_i-\beta_0-\beta_1x_i-\beta_2x_i^2)(-x_i)}=0\\ \frac{\partial SSR}{\partial \beta_2}=\sum^{n}_{i=1}{2(y_i-\beta_0-\beta_1x_i-\beta_2x_i^2)(-x_i^2)}=0\\ 可以得到\sum^{n}_{i=1}{(y_i-\beta_0-\beta_1x_i-\beta_2x_i^2)}=\sum_{i=1}^{n}(y_i-\hat{y}_i)=0\\ \sum^{n}_{i=1}{(y_i-\beta_0-\beta_1x_i-\beta_2x_i^2)x_i}=\sum_{i=1}^{n}(y_i-\hat{y}_i)x_i=0\\ \sum^{n}_{i=1}{(y_i-\beta_0-\beta_1x_i-\beta_2x_i^2)x_i^2}=\sum_{i=1}^{n}(y_i-\hat{y}_i)x_i^2=0\\ 根据上面式子可以得到:\overline{\hat{y}} = \bar{y}\\
根据相关系数的公式 \begin{align*} \rho(y,\hat{y}) &=\frac{cov(y_i,\hat{y}_i)}{\sqrt{var(y_i)var(\hat{y}_i)}}\\ &=\frac{\sum_{i=1}^{n}(y_i-\bar{y})(\hat{y}_i-\bar{y})}{\sqrt{\sum_{i=1}^{n}(y_i-\bar{y})^2\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}}\\ &=\frac{\sum_{i=1}^{n}(y_i-\hat{y}_i+\hat{y}_i-\bar{y})(\hat{y}_i-\bar{y})}{\sqrt{\sum_{i=1}^{n}(y_i-\bar{y})^2\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}}\\ &=\frac{\sum_{i=1}^{n}(y_i-\hat{y}_i)(\hat{y}_i-\bar{y})+\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}{\sqrt{\sum_{i=1}^{n}(y_i-\bar{y})^2\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}}\\ &=\frac{0+\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}{\sqrt{\sum_{i=1}^{n}(y_i-\bar{y})^2\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}}\\ &=\sqrt{\frac{\sum_{i=1}^{n}(\hat{y}_i-\bar{y})^2}{\sum_{i=1}^{n}(y_i-\bar{y})^2}}\\
&=\sqrt{R^2}\\ \end{align*}\\
其中, \begin{align*} \sum_{i=1}^{n}(y_i-\hat{y}_i)(\hat{y}_i-\bar{y})&=\sum_{i=1}^{n}(y_i-\hat{y}_i)(\beta_0+\beta_1x_i+\beta_2x_i^2-\bar{y})\\ &=(\beta_0-\bar{y})\sum_{i=1}^{n}(y_i-\hat{y}_i)+\beta_1\sum_{i=1}^{n}(y_i-\hat{y}_i)x_i+\beta_2\sum_{i=1}^{n}(y_i-\hat{y}_i)x_i^2\\ &=0 \end{align*} 可见只要通过最小二乘拟合, \rho(y,\hat{y})=\sqrt{R^2} 。这样看来,只要是多项式进行最小二乘拟合就可以得到 \rho(y,\hat{y})=\sqrt{R^2} 。又因为根据泰勒公式,所有的函数都可展开成多项式形式,所以可以大胆的推断对二维散点进行任意函数的最小二乘拟合,都可以得到 \rho(y,\hat{y})=\sqrt{R^2} 。但需要说明的是,进行非线性的拟合时, \rho(x,y)\ne\sqrt{R^2} ,因为此时 \rho(x,\hat{y})\ne\pm1 ,即二者并不是线性关系。谢谢小伙伴们指正!答案收到很多赞(我最多赞的一个回答),我一直以来也对这个问题有疑惑,也一直放在心上。写这个答案之前其实是受到Junyu Liu答案的启发,在这里表示感谢。再补充个chatgpt的回复,感觉他说的比较通俗易懂:R Square( R^2 )和Pearson相关系数是两个不同的概念,但是它们之间存在一定的关系。Pearson相关系数是用来衡量两个变量之间线性相关程度的指标,取值范围在-1到1之间,其中0表示无相关,正值表示正相关,负值表示负相关。Pearson相关系数的平方即为R^2,也被称为决定系数,表示一个变量能够被另一个变量解释的比例。R^2越接近1,说明一个变量能够被另一个变量很好地解释,也就是说,两个变量之间存在很强的线性相关关系;R^2越接近0,说明一个变量不能够被另一个变量很好地解释,也就是说,两个变量之间不存在线性相关关系。因此,可以说Pearson相关系数是用来衡量两个变量之间线性相关程度的指标,而R^2则是用来衡量线性回归模型的拟合程度的指标。它们都可以用来描述两个变量之间的关系,但是从不同的角度和目的出发,具有不同的解释和应用。}
这篇文章算是对之前通过看视频学到的一些知识的总结,包括:简单线性回归中拟合直线的两个参数 \beta_0,\beta_1 的推导(最小二乘法)简单线性回归中对 R^2 意义的一点个人理解从 R^2 推导 R^2=r^2 尽管我也很想整一个太长不看版……然鹅简单线性回归中拟合直线的两个参数 \beta_0,\beta_1 的推导本部分内容来自u管economic help的视频,国内搬运见https://www.bilibili.com/video/av45992101现在我们有一组数据点,比如说x代表体重,y代表腹围,那么y和x之间的关系可以用下面的式子表示y=\beta_0+\beta_1x+u 实际上我们不可能知道beta0,beta1和u,但是我们可以使用手上有限的数据推测出下面的线性方程\hat{y}=\hat{\beta_0}+\hat{\beta_1}x (1)于是真实值y和使用拟合直线预测出来的 \hat{y} 之间就会有偏差,用\hat{u}=y-\hat{y} 表示这个偏差。由于反复打\hat实在是很麻烦的一件事情,况且真实的beta0,beta1和u在下面的推导里都用不上,所以接下来 \hat{\beta_0}, \hat{\beta_1}, \hat{u} 都不会加hat,这里先提前说明一下其实简单线性回归说白了就是根据手上的数据点想办法优化拟合直线的两个参数,让预测值 \hat{y} 和真实值y之间的偏差尽可能的小。也就是让u(如上所述,为了省事这里不加hat了)的总和尽可能的小。问题是如果直接把u相加,有些u可能为正,有些u可能为负,而且举一个极端的例子,令 y=\bar{y} 作为拟合直线,这个时候的拟合水平相当于是最差的(在所有经过 (\bar{x},\bar{y}) 的直线中),但是根据平均值的性质,一组数据各项减去平均值差的和等于0. 为了避免这个尴尬的局面,仿照方差的定义,我们把各个u都作一个平方,然后把平方求和:\sum{u^2}=\sum{(y-\hat{y})^2}=\sum{(y-(\beta_0+\beta_1x))^2} (2)所以接下来需要做的就是求(2)式的极值。这个式子是一个二次方程,只有一个极小值,位于导数等于0的地方。于是(2)求最小值的问题可以通过对beta0和beta1分别求一阶导数,令一阶导数为0就可以求出符合要求的两个参数了。先看beta0符合极值要求的方程如下:\frac{d \sum{u^2}}{d \beta_0}=\sum{2(y-\beta_0-\beta_1x)(-1)}=0 这个式子将2和-1两个常数消掉,于是方程左边等于:\sum{(y-\beta_0-\beta_1x)}=\sum{y}-\sum{\beta_0}-\sum{\beta_1x}=\sum{y}-n\beta_0-\beta_1\sum{x} 由于 \sum{y}=n\bar{y}, \sum{x}=n\bar{x} ,上面的方程实际上就是:n\bar{y}-n\beta_0-n\beta_1\bar{x}=0 所以 \bar{y}-\beta_0-\beta_1\bar{x}=0\Rightarrow \bar{y}=\beta_0+\beta_1\bar{x} (3)也就是说,根据极值的要求, 拟合直线必须经过(\bar{x},\bar{y}) 这个点接下来看关于beta1的方程\frac{d \sum{u^2}}{d \beta_1}=\sum{2(y-\beta_0-\beta_1x)(-x)}=0 同样是消掉常数,把x乘进各项:\sum{xy}-\sum{\beta_0x}-\sum{\beta_1x^2}=0 将(3)代入上式,方程左边等于\sum{xy}-\sum{(\bar{y}-\beta_1\bar{x})x}-\sum{\beta_1x^2}=\sum{xy}-\sum{(\bar{y}x-\beta_1\bar{x}x)}-\sum{\beta_1x^2} 将常数( \bar{y},\bar{x},\beta_1 ) 提取出来:=\sum{xy}-\bar{y}\sum{x}+\beta_1\bar{x}\sum{x}-\beta_1\sum{x^2} 同样,由于\sum{y}=n\bar{y}, \sum{x}=n\bar{x}=\sum{xy}-n\bar{y}\bar{x}+n\beta_1\bar{x}\bar{x}-\beta_1\sum{x^2} 整理一下上面的式子,于是方程转化成下面的形式(\sum{xy}-n\bar{y}\bar{x})-\beta_1(\sum{x^2}-n\bar{x}^2)=0 也就是说 \beta_1=\frac{\sum{xy}-n\bar{y}\bar{x}}{\sum{x^2}-n\bar{x}^2}
在进一步转化以前,我们先看一下x和y的协方差Cov(x,y)(实际上是样本协方差 \hat{Cov(x,y)} ,和上面一样,这里为了省事就不打hat了)是什么:well,根据维基百科(https://en.wikipedia.org/wiki/Covariance):cov(X,Y)=E((X-E[X])(Y-E[Y])) well, 不大严谨的说呢,对一组样本量为n的数据的x值(我们假定样本里面每一个数据出现的概率是均等的), E(X)=\frac{\sum(x)}{n}=\bar{x} ,于是:Cov(x,y)=\frac{1}{n}\sum{(x-\bar{x})(y-\bar{y})} 上面这个不怎么严密简化而来的式子,做一下转换可以有Cov(x,y)=\frac{1}{n}\sum{(xy-\bar{x}y-\bar{y}x+\bar{x}\bar{y})} 只看sum这一块:分解开来,可以有:\sum{xy}-\bar{x}\sum{y}-\bar{y}\sum{x}+\bar{y}\bar{x}\sum{1}=\sum{xy}-2n\bar{x}\bar{y}+n\bar{x}\bar{y}=\sum{xy}-n\bar{x}\bar{y} 所以我们beta1的分子实际上不就是等于 nCov(x,y) 么?接下来看一下分母部分,这个就更眼熟了,我们看一下方差的公式:Var(X)=E((X-E(X))^2)=\frac{\sum({x-\bar{x}})^2}{n} 其中方差公式的分子部分:\sum({x-\bar{x}})^2=\sum{(x^2-2\bar{x}x+\bar{x}^2)}=\sum{x^2}-2\bar{x}\sum{x}+\bar{x}^2\sum{1} =\sum{x^2}-2n\bar{x}^2+n\bar{x}^2=\sum{x^2}-n\bar{x}^2 所以beta1的分母实际上就是nVar(X),综上:\beta_1=\frac{nCov(x,y)}{nVar(x)}=\frac{Cov(x,y)}{Var(x)} (4)对于R方意义的一些个人理解比如说现在我给你一组人(样本量为n)的腹围数据(也就是上面提到的y),除此以外什么都没有了。那现在你想要给出一个拟合直线,让所有的y值到这个拟合直线的距离 u=y-\hat{y} 的平方的和尽可能的小。鉴于我们没有其他的参数(比如说体重x),因此 \hat{y} 只能设置成一个常数。于是现在我们最好的选择就是使用样本均值,毕竟根据平均值的性质: \sum{(y-\hat{y})^2} 在 \hat{y}=\bar{y} 的时候是最小的,而这个SS我们记为SS_mean:SS_{mean}=\sum{(y-\bar{y})^2} 现在比如说,我们的数据集里增加了体重这一个参数(x),于是我们可以考虑根据x对y进行一个预测了,所以 \hat{y} 不必再设置为一个常数,而是可以按照下面的式子去计算:\hat{y}=\beta_0+\beta_1x ,那么根据新的 \hat{y} 推算出来的u平方的和我们记为SS_fitSS_{fit}=\sum{(y-\hat{y})^2}=\sum{(y-(\beta_0+\beta_1x))^2} 那么现在的SS_mean代表的是什么呢?也就是完全没有任何其他信息的时候,单纯从腹围这个变量自身出发可以得到的最低的误差平方和。而SS_fit又代表什么呢?它代表的是加入了x这个变量以后,在已经做了最优化的设置(比如使用最小二乘法)之后,还会残留的误差的平方和。于是有:R^2=\frac{SS_{mean}-SS_{fit}}{SS_{mean}} 这个R方的分子代表的是加入了x这个变量以后,可以消除多少的误差(原有的全部误差SS-剩下的误差SS),分母就是原有的全部误差SS。所以R方代表的是加入x变量以后,可以消除掉的误差SS的一个比例。所以当R方接近0 的时候,就说明新加入的这个变量基本没什么用,而接近1的时候,就说明这个新加入的变量大幅度的减少了预测的误差。接下来继续说点不严谨的个人看法。方差分析我们都知道,对吧?就拿最基本的单因素方差分析(比如说比较三个组的分数)来说,最后的统计值F是F=\frac{MSB}{MSW} , MSB=\frac{SSB}{k-1} , MSW=\frac{SSW}{N-k} (k是组数,N是全部组合在一起以后的样本量)。下面的讨论我们会看到,继续用x来表示分数会引起歧义,所以我们现在统一改用y来表示分数这个因变量。我们先写一下SST等于什么SST = \sum{(y-\bar{y})^2} ,很简单,就是把所有组的样本合在一起以后,求这一大堆东西的SS什么意思呢?回到线性拟合的例子,在我们没有x变量的时候,我们只能使用 \bar{y}
这个量作为估计值,获得的最小SS也就是SS_mean了。而在方差分析里,假如我不给你分组情况,那你也只能用 \bar{y} 作为所有样本的一个代表值,这时候求出来的SS_mean不就是SST么?SST = \sum{(y-\bar{y})^2}=SS_{mean} 那么什么是SSW呢?SSW=\sum\sum{(y-\bar{y_i})^2}=SST-SSB 同样的,在线性拟合的例子里,如果我给了你x这个变量,现在你可以进行拟合,计算 \hat{y} ,于是现在的SS会缩小成SS_fit。而在方差分析里,现在我给了你分组信息,这个分组信息也可以理解成一种自变量。比如说现在有三组,那也就是自变量可以取3个值[1组,2组,3组]。那对某一组来说,我的 \hat{y} 应该取什么才能让 \sum{(y-\hat{y})^2} 最小呢?那当然是这一组的平均值呀,也就是 \bar{y_i} 了。这不就是SSW么?SSW = \sum\sum(y-\bar{y_i})^2=SS_{fit} 所以我们的 R^2=\frac{SS_{mean}-SS_{fit}}{SS_{mean}}=\frac{SST-SSW}{SST}=\frac{SSB}{SST} 从这个角度再来看一下方差分析,分数y现在其实是一个我们要预测的值,通过什么去预测呢?通过分组。如果我们的分组可以给预测提供比较有意义的信息,那也就是说一个数据点在不同的组,那它的y值就应该符合这个组的特点;与之相反的,如果一个数据点不管在哪个组其实区别都不大,那我们的分组信息对于预测y就没有什么意义,也就是组间区别不大。see? R方在方差分析里代表的是通过分组,利用新的各组均值去代表各组水平,可以将多少的组内变异消除。well,所以SPSS里面把2 way anova放在一般线性模型里也就可以理解了。R方为什么等于r的平方?r也就是皮尔森相关系数,r的计算公式如下:r = \frac{Cov(x,y)}{\sqrt{Var(X)Var(Y)}} 而R方么,将SS_fit 和SS_mean的式子代入R方的公式可以得到:R^2 = \frac{\sum{(y-\bar{y})^2}-\sum{(y-\hat{y})^2}}{\sum{(y-\bar{y})^2}} (3-1)先看分子部分,并将 \hat{y}=\beta_0+\beta_1x 代入,可得:\sum{(y-\bar{y})^2}-\sum{(y-\hat{y})^2} = nVar(y)-\sum{(y-(\beta_0+\beta_1x))^2} (3-2)接下来看减号后面的这一块,将 关于\beta_0 的(3)式代入:\sum{(y-(\beta_0+\beta_1x))^2} = \sum{(y-(\bar{y}-\beta_1\bar{x}+\beta_1x))^2} 再将关于 \beta_1 的(4)代入: \sum{(y-(\bar{y}-\frac{Cov(x,y)}{Var(x)}\bar{x}+\frac{Cov(x,y)}{Var(x)}x))^2} =\sum{((y-\bar{y})-\frac{Cov(x,y)}{Var(x)}(x-\bar{x}))^2} 平方打开来:\sum{(y-\bar{y})^2+(\frac{Cov(x,y)}{Var(x)}(x-\bar{x}))^2-2\frac{Cov(x,y)}{Var(x)}(y-\bar{y})(x-\bar{x}))} 分别求和\sum{(y-\bar{y})^2}+\sum{(\frac{Cov(x,y)}{Var(x)}(x-\bar{x}))^2}-\sum{2\frac{Cov(x,y)}{Var(x)}(y-\bar{y})(x-\bar{x}))} 提取常数,该Var的Var,该Cov的Cov:nVar(y)+(\frac{Cov(x,y)}{Var(x)})^2nVar(x)-2\frac{Cov(x,y)}{Var(x)}nCov(x,y) =nVar(y)-n\frac{Cov(x,y)^2}{Var(x)} (3-3)把(3-3)回代到(3-2),两个nVar(y)互相消掉,于是分子就是 n\frac{Cov(x,y)^2}{Var(x)} 而式3-1的分母不就是nVar(y)么?所以式3-1也就是:R^2 = n\frac{Cov(x,y)^2}{Var(x)}\times \frac{1}{nVar(y)}=\frac{Cov(x,y)^2}{Var(x)Var(y)} well, r = \frac{Cov(x,y)}{\sqrt{Var(X)Var(Y)}}所以 R^2=r^2 顺带一提, SS_{residual} = \sum{(\hat{y}-\bar{y})^2} ,而 \hat{y}=\beta_0+\beta_1x=\bar{y}-\beta_1\bar{x}+\beta_1x 所以 SS_{residual}=\sum{(\beta_1(x-\bar{x}))^2}=\beta_1^2\sum{(x-\bar{x})^2}=(\frac{Cov(x,y)}{Var(x)})^2(nVar(x)) =n\frac{Cov(x,y)^2}{Var(x)} 也就是式3-1的分子部分( SS_{mean}-SS_{fit} )。这也是当然的,毕竟和方差分析一样,SSB=SST-SSW嘛。而且,其实R方等于r^2的验证直接用 R^2=\frac{SS_{residual}}{SS_{mean}}=\frac{\sum{(\hat{y}-\bar{y})^2}}{\sum{(y-\bar{y})^2}} 会来的更快呢。(看了统计学中一元线性回归中拟合优度为什么等于相关系数的平方,请证明?的回答发现了这个问题)重申一下,这篇文章所有的推导都只是演示一下关联性,协助理解。如果有什么问题非常欢迎大家提出。}
这篇文章算是对之前通过看视频学到的一些知识的总结,包括:简单线性回归中拟合直线的两个参数 \beta_0,\beta_1 的推导(最小二乘法)简单线性回归中对 R^2 意义的一点个人理解从 R^2 推导 R^2=r^2 尽管我也很想整一个太长不看版……然鹅简单线性回归中拟合直线的两个参数 \beta_0,\beta_1 的推导本部分内容来自u管economic help的视频,国内搬运见https://www.bilibili.com/video/av45992101现在我们有一组数据点,比如说x代表体重,y代表腹围,那么y和x之间的关系可以用下面的式子表示y=\beta_0+\beta_1x+u 实际上我们不可能知道beta0,beta1和u,但是我们可以使用手上有限的数据推测出下面的线性方程\hat{y}=\hat{\beta_0}+\hat{\beta_1}x (1)于是真实值y和使用拟合直线预测出来的 \hat{y} 之间就会有偏差,用\hat{u}=y-\hat{y} 表示这个偏差。由于反复打\hat实在是很麻烦的一件事情,况且真实的beta0,beta1和u在下面的推导里都用不上,所以接下来 \hat{\beta_0}, \hat{\beta_1}, \hat{u} 都不会加hat,这里先提前说明一下其实简单线性回归说白了就是根据手上的数据点想办法优化拟合直线的两个参数,让预测值 \hat{y} 和真实值y之间的偏差尽可能的小。也就是让u(如上所述,为了省事这里不加hat了)的总和尽可能的小。问题是如果直接把u相加,有些u可能为正,有些u可能为负,而且举一个极端的例子,令 y=\bar{y} 作为拟合直线,这个时候的拟合水平相当于是最差的(在所有经过 (\bar{x},\bar{y}) 的直线中),但是根据平均值的性质,一组数据各项减去平均值差的和等于0. 为了避免这个尴尬的局面,仿照方差的定义,我们把各个u都作一个平方,然后把平方求和:\sum{u^2}=\sum{(y-\hat{y})^2}=\sum{(y-(\beta_0+\beta_1x))^2} (2)所以接下来需要做的就是求(2)式的极值。这个式子是一个二次方程,只有一个极小值,位于导数等于0的地方。于是(2)求最小值的问题可以通过对beta0和beta1分别求一阶导数,令一阶导数为0就可以求出符合要求的两个参数了。先看beta0符合极值要求的方程如下:\frac{d \sum{u^2}}{d \beta_0}=\sum{2(y-\beta_0-\beta_1x)(-1)}=0 这个式子将2和-1两个常数消掉,于是方程左边等于:\sum{(y-\beta_0-\beta_1x)}=\sum{y}-\sum{\beta_0}-\sum{\beta_1x}=\sum{y}-n\beta_0-\beta_1\sum{x} 由于 \sum{y}=n\bar{y}, \sum{x}=n\bar{x} ,上面的方程实际上就是:n\bar{y}-n\beta_0-n\beta_1\bar{x}=0 所以 \bar{y}-\beta_0-\beta_1\bar{x}=0\Rightarrow \bar{y}=\beta_0+\beta_1\bar{x} (3)也就是说,根据极值的要求, 拟合直线必须经过(\bar{x},\bar{y}) 这个点接下来看关于beta1的方程\frac{d \sum{u^2}}{d \beta_1}=\sum{2(y-\beta_0-\beta_1x)(-x)}=0 同样是消掉常数,把x乘进各项:\sum{xy}-\sum{\beta_0x}-\sum{\beta_1x^2}=0 将(3)代入上式,方程左边等于\sum{xy}-\sum{(\bar{y}-\beta_1\bar{x})x}-\sum{\beta_1x^2}=\sum{xy}-\sum{(\bar{y}x-\beta_1\bar{x}x)}-\sum{\beta_1x^2} 将常数( \bar{y},\bar{x},\beta_1 ) 提取出来:=\sum{xy}-\bar{y}\sum{x}+\beta_1\bar{x}\sum{x}-\beta_1\sum{x^2} 同样,由于\sum{y}=n\bar{y}, \sum{x}=n\bar{x}=\sum{xy}-n\bar{y}\bar{x}+n\beta_1\bar{x}\bar{x}-\beta_1\sum{x^2} 整理一下上面的式子,于是方程转化成下面的形式(\sum{xy}-n\bar{y}\bar{x})-\beta_1(\sum{x^2}-n\bar{x}^2)=0 也就是说 \beta_1=\frac{\sum{xy}-n\bar{y}\bar{x}}{\sum{x^2}-n\bar{x}^2}
在进一步转化以前,我们先看一下x和y的协方差Cov(x,y)(实际上是样本协方差 \hat{Cov(x,y)} ,和上面一样,这里为了省事就不打hat了)是什么:well,根据维基百科(https://en.wikipedia.org/wiki/Covariance):cov(X,Y)=E((X-E[X])(Y-E[Y])) well, 不大严谨的说呢,对一组样本量为n的数据的x值(我们假定样本里面每一个数据出现的概率是均等的), E(X)=\frac{\sum(x)}{n}=\bar{x} ,于是:Cov(x,y)=\frac{1}{n}\sum{(x-\bar{x})(y-\bar{y})} 上面这个不怎么严密简化而来的式子,做一下转换可以有Cov(x,y)=\frac{1}{n}\sum{(xy-\bar{x}y-\bar{y}x+\bar{x}\bar{y})} 只看sum这一块:分解开来,可以有:\sum{xy}-\bar{x}\sum{y}-\bar{y}\sum{x}+\bar{y}\bar{x}\sum{1}=\sum{xy}-2n\bar{x}\bar{y}+n\bar{x}\bar{y}=\sum{xy}-n\bar{x}\bar{y} 所以我们beta1的分子实际上不就是等于 nCov(x,y) 么?接下来看一下分母部分,这个就更眼熟了,我们看一下方差的公式:Var(X)=E((X-E(X))^2)=\frac{\sum({x-\bar{x}})^2}{n} 其中方差公式的分子部分:\sum({x-\bar{x}})^2=\sum{(x^2-2\bar{x}x+\bar{x}^2)}=\sum{x^2}-2\bar{x}\sum{x}+\bar{x}^2\sum{1} =\sum{x^2}-2n\bar{x}^2+n\bar{x}^2=\sum{x^2}-n\bar{x}^2 所以beta1的分母实际上就是nVar(X),综上:\beta_1=\frac{nCov(x,y)}{nVar(x)}=\frac{Cov(x,y)}{Var(x)} (4)对于R方意义的一些个人理解比如说现在我给你一组人(样本量为n)的腹围数据(也就是上面提到的y),除此以外什么都没有了。那现在你想要给出一个拟合直线,让所有的y值到这个拟合直线的距离 u=y-\hat{y} 的平方的和尽可能的小。鉴于我们没有其他的参数(比如说体重x),因此 \hat{y} 只能设置成一个常数。于是现在我们最好的选择就是使用样本均值,毕竟根据平均值的性质: \sum{(y-\hat{y})^2} 在 \hat{y}=\bar{y} 的时候是最小的,而这个SS我们记为SS_mean:SS_{mean}=\sum{(y-\bar{y})^2} 现在比如说,我们的数据集里增加了体重这一个参数(x),于是我们可以考虑根据x对y进行一个预测了,所以 \hat{y} 不必再设置为一个常数,而是可以按照下面的式子去计算:\hat{y}=\beta_0+\beta_1x ,那么根据新的 \hat{y} 推算出来的u平方的和我们记为SS_fitSS_{fit}=\sum{(y-\hat{y})^2}=\sum{(y-(\beta_0+\beta_1x))^2} 那么现在的SS_mean代表的是什么呢?也就是完全没有任何其他信息的时候,单纯从腹围这个变量自身出发可以得到的最低的误差平方和。而SS_fit又代表什么呢?它代表的是加入了x这个变量以后,在已经做了最优化的设置(比如使用最小二乘法)之后,还会残留的误差的平方和。于是有:R^2=\frac{SS_{mean}-SS_{fit}}{SS_{mean}} 这个R方的分子代表的是加入了x这个变量以后,可以消除多少的误差(原有的全部误差SS-剩下的误差SS),分母就是原有的全部误差SS。所以R方代表的是加入x变量以后,可以消除掉的误差SS的一个比例。所以当R方接近0 的时候,就说明新加入的这个变量基本没什么用,而接近1的时候,就说明这个新加入的变量大幅度的减少了预测的误差。接下来继续说点不严谨的个人看法。方差分析我们都知道,对吧?就拿最基本的单因素方差分析(比如说比较三个组的分数)来说,最后的统计值F是F=\frac{MSB}{MSW} , MSB=\frac{SSB}{k-1} , MSW=\frac{SSW}{N-k} (k是组数,N是全部组合在一起以后的样本量)。下面的讨论我们会看到,继续用x来表示分数会引起歧义,所以我们现在统一改用y来表示分数这个因变量。我们先写一下SST等于什么SST = \sum{(y-\bar{y})^2} ,很简单,就是把所有组的样本合在一起以后,求这一大堆东西的SS什么意思呢?回到线性拟合的例子,在我们没有x变量的时候,我们只能使用 \bar{y}
这个量作为估计值,获得的最小SS也就是SS_mean了。而在方差分析里,假如我不给你分组情况,那你也只能用 \bar{y} 作为所有样本的一个代表值,这时候求出来的SS_mean不就是SST么?SST = \sum{(y-\bar{y})^2}=SS_{mean} 那么什么是SSW呢?SSW=\sum\sum{(y-\bar{y_i})^2}=SST-SSB 同样的,在线性拟合的例子里,如果我给了你x这个变量,现在你可以进行拟合,计算 \hat{y} ,于是现在的SS会缩小成SS_fit。而在方差分析里,现在我给了你分组信息,这个分组信息也可以理解成一种自变量。比如说现在有三组,那也就是自变量可以取3个值[1组,2组,3组]。那对某一组来说,我的 \hat{y} 应该取什么才能让 \sum{(y-\hat{y})^2} 最小呢?那当然是这一组的平均值呀,也就是 \bar{y_i} 了。这不就是SSW么?SSW = \sum\sum(y-\bar{y_i})^2=SS_{fit} 所以我们的 R^2=\frac{SS_{mean}-SS_{fit}}{SS_{mean}}=\frac{SST-SSW}{SST}=\frac{SSB}{SST} 从这个角度再来看一下方差分析,分数y现在其实是一个我们要预测的值,通过什么去预测呢?通过分组。如果我们的分组可以给预测提供比较有意义的信息,那也就是说一个数据点在不同的组,那它的y值就应该符合这个组的特点;与之相反的,如果一个数据点不管在哪个组其实区别都不大,那我们的分组信息对于预测y就没有什么意义,也就是组间区别不大。see? R方在方差分析里代表的是通过分组,利用新的各组均值去代表各组水平,可以将多少的组内变异消除。well,所以SPSS里面把2 way anova放在一般线性模型里也就可以理解了。R方为什么等于r的平方?r也就是皮尔森相关系数,r的计算公式如下:r = \frac{Cov(x,y)}{\sqrt{Var(X)Var(Y)}} 而R方么,将SS_fit 和SS_mean的式子代入R方的公式可以得到:R^2 = \frac{\sum{(y-\bar{y})^2}-\sum{(y-\hat{y})^2}}{\sum{(y-\bar{y})^2}} (3-1)先看分子部分,并将 \hat{y}=\beta_0+\beta_1x 代入,可得:\sum{(y-\bar{y})^2}-\sum{(y-\hat{y})^2} = nVar(y)-\sum{(y-(\beta_0+\beta_1x))^2} (3-2)接下来看减号后面的这一块,将 关于\beta_0 的(3)式代入:\sum{(y-(\beta_0+\beta_1x))^2} = \sum{(y-(\bar{y}-\beta_1\bar{x}+\beta_1x))^2} 再将关于 \beta_1 的(4)代入: \sum{(y-(\bar{y}-\frac{Cov(x,y)}{Var(x)}\bar{x}+\frac{Cov(x,y)}{Var(x)}x))^2} =\sum{((y-\bar{y})-\frac{Cov(x,y)}{Var(x)}(x-\bar{x}))^2} 平方打开来:\sum{(y-\bar{y})^2+(\frac{Cov(x,y)}{Var(x)}(x-\bar{x}))^2-2\frac{Cov(x,y)}{Var(x)}(y-\bar{y})(x-\bar{x}))} 分别求和\sum{(y-\bar{y})^2}+\sum{(\frac{Cov(x,y)}{Var(x)}(x-\bar{x}))^2}-\sum{2\frac{Cov(x,y)}{Var(x)}(y-\bar{y})(x-\bar{x}))} 提取常数,该Var的Var,该Cov的Cov:nVar(y)+(\frac{Cov(x,y)}{Var(x)})^2nVar(x)-2\frac{Cov(x,y)}{Var(x)}nCov(x,y) =nVar(y)-n\frac{Cov(x,y)^2}{Var(x)} (3-3)把(3-3)回代到(3-2),两个nVar(y)互相消掉,于是分子就是 n\frac{Cov(x,y)^2}{Var(x)} 而式3-1的分母不就是nVar(y)么?所以式3-1也就是:R^2 = n\frac{Cov(x,y)^2}{Var(x)}\times \frac{1}{nVar(y)}=\frac{Cov(x,y)^2}{Var(x)Var(y)} well, r = \frac{Cov(x,y)}{\sqrt{Var(X)Var(Y)}}所以 R^2=r^2 顺带一提, SS_{residual} = \sum{(\hat{y}-\bar{y})^2} ,而 \hat{y}=\beta_0+\beta_1x=\bar{y}-\beta_1\bar{x}+\beta_1x 所以 SS_{residual}=\sum{(\beta_1(x-\bar{x}))^2}=\beta_1^2\sum{(x-\bar{x})^2}=(\frac{Cov(x,y)}{Var(x)})^2(nVar(x)) =n\frac{Cov(x,y)^2}{Var(x)} 也就是式3-1的分子部分( SS_{mean}-SS_{fit} )。这也是当然的,毕竟和方差分析一样,SSB=SST-SSW嘛。而且,其实R方等于r^2的验证直接用 R^2=\frac{SS_{residual}}{SS_{mean}}=\frac{\sum{(\hat{y}-\bar{y})^2}}{\sum{(y-\bar{y})^2}} 会来的更快呢。(看了统计学中一元线性回归中拟合优度为什么等于相关系数的平方,请证明?的回答发现了这个问题)重申一下,这篇文章所有的推导都只是演示一下关联性,协助理解。如果有什么问题非常欢迎大家提出。}

我要回帖

更多关于 知道r的平方怎么求r 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信