威威學長|高一數據分析系列
📚 系列總覽:數據分析系列地圖|⬅️ 上一篇:最小平方法為什麼是「垂直距離平方和最小」|➡️ 下一篇:為什麼「用 Y 預測 X」不是把斜率倒數?兩條迴歸線…
同一組資料,$x$ 的單位從「小時」換成「分鐘」,最適直線的斜率就從 $2$ 掉到 $0.033$。兩個數字都對,線也還是同一條線,變的只是單位。
而另一種東西完全不動:換單位前後,相關係數一模一樣。這兩件事擺在一起,就會逼出一條式子,它順便還解掉統計學裡最被誤解的一句話:「向平均數迴歸」。
這條式子不是巧合
$n$ 筆資料 $(x_1,y_1),(x_2,y_2),\dots,(x_n,y_n)$,平均記作 $\bar x$、$\bar y$。最小平方法配出來的線一定穿過 $(\bar x,\bar y)$,所以可以寫成
$$\hat y-\bar y=a\,(x-\bar x)$$
而那個斜率長這樣:
$$a=\frac{\sum_{i=1}^{n}(x_i-\bar x)(y_i-\bar y)}{\sum_{i=1}^{n}(x_i-\bar x)^2}=\frac{\mathrm{Cov}(X,Y)}{S_X^{\,2}}$$
分子是共變異數,分母是 $X$ 的變異數。看到這裡先別急,接下來要做一件看起來很沒意義的事:分子分母同時乘一個 $S_Y$、再除一個 $S_Y$。
$$a=\frac{\mathrm{Cov}(X,Y)}{S_X^{\,2}}=\frac{\mathrm{Cov}(X,Y)}{S_X S_Y}\cdot\frac{S_Y}{S_X}$$
前面那坨,就是你背到爛的皮爾森相關係數:
$$r=\frac{\mathrm{Cov}(X,Y)}{S_X S_Y}$$
所以
$$a=r\cdot\frac{S_Y}{S_X}$$
👑 學長的口訣:斜率 = 相關係數 × 尺度比。 $r$ 負責講「關聯有多強、往哪個方向」,$\dfrac{S_Y}{S_X}$ 負責把這份關聯換算成實際單位。
先插一句,免得你被課本版本搞混。變異數有人除 $n$、有人除 $n-1$,標準差也是。這條式子兩種版本都成立,因為分子分母用的是同一套約定,那個常數自己會約掉。所以不用記版本,記結構就好。
拆開才看得出:一個有單位,一個沒有
拆開不是為了好看。拆完你才會發現,$a$ 和 $r$ 根本是兩種不同的動物。
$a$ 有單位。它的單位是「$Y$ 的單位 ÷ $X$ 的單位」。
用「每週讀書時數(小時)」預測「段考成績(分)」,配出來 $a=2$。這句話的意思很具體:每多讀一小時,成績平均多 2 分。這是邊際效益。
現在把小時改成分鐘。每個 $x$ 值乘 60,$S_X$ 也跟著變 60 倍,新的斜率是
$$a'=r\cdot\frac{S_Y}{60\,S_X}=\frac{a}{60}=\frac{2}{60}\approx0.033$$
同一批學生、同一批成績,斜率從 2 掉到 0.033。誰錯了?沒人錯。你只是換了單位。
$r$ 就不是這樣。$r$ 是無因次的。你把 $x$ 乘 60、把 $y$ 乘 1000、把兩者一起平移,$r$ 一動也不動。為什麼?因為 $r$ 是兩個標準化向量的夾角餘弦,單位在標準化的過程裡就被除光了。
所以這條式子在講的其實就一句話:
$a$(你真正拿去用的斜率) $=$ $r$(純粹的關聯強度) $\times$ $\dfrac{S_Y}{S_X}$(尺度調節器)。
兩個資料集的關聯強度一樣,斜率可以不一樣,因為兩邊的離散程度不同。同樣 $r=0.8$,如果 $Y$ 的標準差是 $X$ 的 3 倍,斜率就是 2.4;反過來 $X$ 比較散的話,斜率可能只有 0.27。
看到斜率大就喊「關聯很強」是外行。 你要把它除回 $\frac{S_Y}{S_X}$,那個才是 $r$。
順便記一個很實用的觀察:$a$ 的正負號完全由 $r$ 決定。 因為 $S_X$、$S_Y$ 是標準差,永遠是正的,$\dfrac{S_Y}{S_X}>0$,所以 $a$ 跟 $r$ 一定同號。$r>0$,線就往右上;$r<0$,線就往右下;$r=0$,線就水平。
你算完 $r$ 的那一刻,其實已經知道斜率的正負了,不必重配一次線。考試時間就是這樣省下來的。
向平均數迴歸:$r$ 就是那個阻尼器
現在把兩邊都標準化。定義
$$Z_x=\frac{x-\bar x}{S_X},\qquad Z_y=\frac{y-\bar y}{S_Y}$$
把預測式 $\hat y-\bar y=a\,(x-\bar x)$ 兩邊同除以 $S_Y$,再把 $a=r\frac{S_Y}{S_X}$ 塞進去:
$$\frac{\hat y-\bar y}{S_Y}=r\cdot\frac{S_Y}{S_X}\cdot\frac{x-\bar x}{S_Y}=r\cdot\frac{x-\bar x}{S_X}$$
翻成標準化的語言:
$$\hat Z_y=r\,Z_x$$
就這一行,統計學裡最有名的誤解當場解決。
因為 $|r|\le1$,所以 $|\hat Z_y|\le|Z_x|$。極端值在預測的時候,一定會向平均收縮。 收縮的比例不是 0.9、不是 1.1,就是 $r$ 本人。
講具體一點。父子身高 $r=0.5$。有位爸爸比平均高 2 個標準差,$Z_x=2$。兒子的預測身高標準化之後是
$$\hat Z_y=0.5\times2=1$$
只比平均高 1 個標準差。 反過來,一位矮於平均 2 個標準差的爸爸,兒子預測矮 1 個標準差。兩頭都被拉向中間。
這就是 Galton 在 1886 年的發現。他量了一大堆父子身高,發現高個子爸爸的兒子平均沒有爸爸那麼高,矮個子爸爸的兒子平均也沒有爸爸那麼矮。他把這個現象取名「迴歸」(regression)。他當時其實誤會了,以為是「物種會回歸到平均值」這種生物學機制,但名字就這麼留下來,變成整門學科的名字。
⚠️ 學長的警告:這不是說人會變矮,也不是什麼神秘的平衡力量。它的來源樸素到不行:$x$ 沒有把 $y$ 講完($r<1$,剩下的 $1-r^2$ 是雜訊)。你手上的資訊不完整,那最安全的最佳猜測就是把極端值打個折。打折多少?就是 $r$。 「向平均迴歸」不是自然定律,是資訊不足的數學後果。
這個誤解在生活裡很會咬人。假設有個補習班挑出模擬考最差的 20 個人,加強輔導之後,正式考試平均比模擬考高了 15 分,於是宣布「我們的補救教學有效,平均進步 15 分」。
不一定。同一個人的兩次考試相關大概 $r\approx0.7$。你挑的是「模擬考最極端低分」的那群人,$Z$ 可能低到 $-2$。用迴歸預測,他們正式考本來就會回到 $0.7\times(-2)=-1.4$。
光靠迴歸,進步就自動出現了。 補救教學到底有沒有用,這份資料根本還沒回答。
要回答,得找一群條件相近的同學,隨機分成「有輔導」和「沒輔導」兩組,比兩組的差距。這就是為什麼教育研究那麼愛做對照組。不做,你只是在量迴歸。
變異數分解:$r^2$ 是模型抓到的那一份
最後一個角度看同一件事。
預測值 $\hat Y$ 是 $X$ 的線性函數:$\hat Y=\bar y+a(X-\bar x)$。平移不影響變異數,所以
$$\mathrm{Var}(\hat Y)=a^2\,\mathrm{Var}(X)=a^2S_X^{\,2}$$
把 $a=r\frac{S_Y}{S_X}$ 代進去:
$$\mathrm{Var}(\hat Y)=r^2\frac{S_Y^{\,2}}{S_X^{\,2}}\cdot S_X^{\,2}=r^2S_Y^{\,2}=r^2\,\mathrm{Var}(Y)$$
換句話說
$$S_{\hat Y}=|r|\,S_Y$$
模型抓到的變異,剛好是總變異的 $r^2$ 倍。剩下的 $1-r^2$ 進殘差。這就是 $R^2=r^2$ 最白話的解釋:$X$ 解釋了 $Y$ 多少比例的變異數。
拿數字看。$Y$ 的標準差 10 分,$r=0.8$,預測值的標準差是 $S_{\hat Y}=0.8\times10=8$ 分。殘差的標準差是 $\sqrt{1-0.64}\times10=0.6\times10=6$ 分。
$$8^2+6^2=64+36=100=10^2$$
兩個標準差的平方和,剛好等於總標準差的平方。這不是巧合,是 $r^2+(1-r^2)=1$ 換個方式說而已。
殘差標準差 $\sqrt{1-r^2}\,S_Y$ 這個量值得多看一眼。$r=0.8$ 時它是 $6$,$r=0.5$ 時它是 $\sqrt{0.75}\times10\approx8.66$。$r$ 從 0.8 掉到 0.5,你手上的預測誤差只從 6 分變成 8.66 分,漲了四成多。 很多同學以為相關係數「從 0.8 掉到 0.5」只是差一點點,實際上誤差是明顯變大的。這條式子給你一個可以拿去說服人的數字。
三個最常見的誤判
把 $a$ 當成關聯強度。 $a=5$ 不代表關係很鐵,可能只是 $Y$ 的單位剛好很大。要判斷強度,把 $a$ 乘上 $\dfrac{S_X}{S_Y}$ 換回 $r$ 再說。
把「向平均迴歸」當成「人會往平均移動」。 它不是動態趨勢,是單次預測的最佳位置。你預測某位爸爸的兒子身高,最準的猜法就是往中間縮;但兒子實際長多高,還是散在預測值周圍,標準差是 $\sqrt{1-r^2}\,S_Y$。預測值收縮,不等於真實值收縮。
看到 $r^2=0.36$ 就說「$X$ 對 $Y$ 有 36% 的影響力」。 不對。$r^2$ 講的是解釋變異的比例,不是因果,也不是影響力。冰淇淋銷量和溺水人數的 $r$ 高得嚇人,因為它們都被「夏天」推著走,不是冰淇淋害人溺水。相關係數永遠不會告訴你誰是因、誰是果。
動手算
範例 1(基本款:從 $r$ 反推直線):某班英文成績 $x$ 與國文成績 $y$,已知 $r=0.8$,$S_x=10$,$S_y=8$,$\bar x=72$,$\bar y=68$。求最適直線,並預測英文考 92 分的同學,國文大約幾分。
斜率不用重跑最小平方,直接套公式:$a=r\frac{S_y}{S_x}=0.8\times\frac{8}{10}=0.64$。最適直線必過 $(\bar x,\bar y)=(72,68)$,所以 $b=\bar y-a\bar x=68-0.64\times72=68-46.08=21.92$。直線是
$$\hat y=0.64x+21.92$$
代 $x=92$:$\hat y=0.64\times92+21.92=58.88+21.92=80.8$。國文大約 80.8 分。
再驗一次,走標準化這條路會更快:英文 92 分比平均高 20 分,而 $S_x=10$,所以 $Z_x=2$。$\hat Z_y=0.8\times2=1.6$,國文預測 $=68+1.6\times8=80.8$。兩條路同一個答案,安心。
範例 2(極端值會被拉多遠):父子身高相關 $r=0.5$。(1) 爸爸高於平均 2 個標準差,兒子預測身高?(2) 若 $r=0.8$ 呢?(3) 有位爸爸低於平均 1.5 個標準差,兒子預測?
這題不准你算公分,只准你算標準差,一律用 $\hat Z_y=rZ_x$。
(1) $\hat Z_y=0.5\times2=1$。兒子預測高於平均 1 個標準差,整整收縮一半。
(2) $\hat Z_y=0.8\times2=1.6$。只收縮 0.4 個標準差。$r$ 越大,預測越敢極端,因為 $r$ 大代表 $x$ 幾乎把 $y$ 講完了,你手上的資訊夠多,就不必往中間縮。
(3) $Z_x=-1.5$,$\hat Z_y=0.5\times(-1.5)=-0.75$。低於平均 0.75 個標準差。
(1) 和 (3) 都在「往中間靠」。迴歸的方向永遠是「往平均收縮」,跟你原本是偏高還是偏低無關。
範例 3(單位陷阱):某研究用「手機使用時數(小時/天)」預測「近視度數(度)」,得 $a=25$ 度/小時、$r=0.6$。今天有人把 $x$ 的單位改成「分鐘/天」,$y$ 不動。求 (1) 新斜率 (2) 新的 $r$ (3) 若 $S_x=1.5$ 小時,$S_y$ 是多少?
(1) 小時換分鐘,$x$ 的數值乘 60,$S_x$ 也乘 60。所以 $a'=a/60=25/60\approx0.4167$ 度/分鐘。這數字長得很怪,但它跟 25 是同一條線。
(2) $r$ 無因次,完全不變,還是 0.6。這是全篇最重要的一點:單位怎麼換,關聯強度都不動。
(3) 用 $a=r\frac{S_y}{S_x}$ 反解:$S_y=a\cdot\frac{S_x}{r}=25\times\frac{1.5}{0.6}=25\times2.5=62.5$ 度。驗算:$0.6\times\frac{62.5}{1.5}=0.6\times41.667=25$ ✓
範例 4(判斷說法):「研究發現,第一次段考考最好的那 10 位同學,第二次段考平均退步了 8 分,可見第一次考太好的人容易鬆懈。」這個推論對嗎?
不一定對,而且你現在有工具說明它為什麼可疑。同一個人兩次段考的相關大概 0.6 到 0.8。第一次考最好的 10 位,$Z$ 可能到 $+2$。取 $r=0.7$,他們的第二次預測是 $\hat Z=0.7\times2=1.4$,光靠迴歸就會「退步」0.6 個標準差。如果 $S=10$ 分,那就是退步 6 分。觀察到的 8 分裡,有 6 分是迴歸自己貢獻的。
這種推論叫「向平均迴歸的誤用」。要下「考好會鬆懈」的結論,得看全班的完整資料,不能只看被挑出來的那群人。只要你用極端值當起點,後面就一定會往中間靠,不管你中間做了什麼。
小測
- 已知 $r=-0.4$,$S_x=2$,$S_y=5$,求最適直線的斜率 $a$。
- 某最適直線斜率 $a=3$,已知 $r=0.6$、$S_x=4$,求 $S_y$。
- 已知 $r=0.9$。某同學的 $Z_x=-2$(低於平均 2 個標準差),他的 $\hat Z_y$ 是多少?比平均低幾個標準差?
- 判斷對錯:「把 $x$ 的單位從公分改成公尺,因為 $r$ 不變,所以最適直線的斜率也不變。」
- 已知 $S_y=20$、$r=-0.7$,求預測值 $\hat Y$ 的標準差 $S_{\hat Y}$。
- 如果 $r=0$,最適直線長什麼樣子?它對 $Y$ 的預測是什麼?
📖 詳解
- $a=r\frac{S_y}{S_x}=(-0.4)\times\frac{5}{2}=-1$。負號要留著:$r<0$ 代表 $x$ 越大、$y$ 越小。
- 反解 $S_y=a\cdot\frac{S_x}{r}=3\times\frac{4}{0.6}=3\times\frac{20}{3}=20$。
- $\hat Z_y=0.9\times(-2)=-1.8$,比平均低 1.8 個標準差。原本低 2 個標準差,被收縮成 1.8。
- 錯。$r$ 確實不變,但 $S_x$ 變了(公分換公尺,$S_x$ 除以 100),所以 $a=r\frac{S_y}{S_x}$ 會變成 100 倍。斜率有單位,$r$ 沒有。 這題就是在偷渡「$r$ 不變 $\Rightarrow$ 斜率不變」這個錯誤等價。
- $S_{\hat Y}=|r|S_y=0.7\times20=14$。
- $a=r\frac{S_y}{S_x}=0$,直線是 $\hat y=\bar y$,一條水平線。不管 $x$ 是多少,預測值永遠是 $\bar y$。這是「$X$ 完全沒有線性資訊」的畫面。
找一組你手上真的有單位的資料(身高 vs 體重、時數 vs 分數都行),算出 $r$、$S_x$、$S_y$,套 $a=r\frac{S_y}{S_x}$ 配出直線。然後把 $x$ 的單位換掉(小時換分鐘、公分換公尺),整個重算一次。
你會親眼看到 $a$ 變了、$r$ 沒變。如果 $r$ 也跟著變,那通常是你把 $S_x$ 和 $S_y$ 的位置放反了,把兩次的算式貼給我,我們對一下分母。