MODULE 02 — MEAN, VARIANCE, STANDARD DEVIATION

一堆數字有多散,怎麼變成一個數字

玩完這關,你會親手把「七個人的薪水」壓成兩個數字,而且知道其中一個為什麼要開根號 —— 順便發現變異數根本就是上一關的內積。

① 這關在解什麼問題

兩家公司都在徵人,兩邊的職缺都寫「平均月薪 5 萬」。 甲公司 15 個人,每個人都領 5 萬。乙公司 15 個人,老闆領 40 萬,其他 14 個人領 2.5 萬。 平均數一模一樣,都是 5 萬。

公司15 個人的月薪(萬元)平均標準差
5, 5, 5, 5, 5, …(全部 5)
40, 2.5, 2.5, 2.5, …(老闆一個人 40)

你會想去的公司不一樣,可是「平均」這個數字完全看不出差別。 因為平均只回答了一件事:中心在哪。它一個字都沒說大家離中心多遠。 這一整關就是在補這個洞:把「離中心多遠」也壓成一個數字。

上一關留下的洞

01 關的內積很好用,但它有個前提:你手上得先有兩條向量。 真實資料進來的樣子從來不是向量,是一欄數字 —— 一欄薪水、一欄身高、一欄點擊率。 所以在能用內積之前,得先回答「一欄數字怎麼變成可以算的量」。 這關的答案會出乎你意料:一欄數字本身就是一條向量,而變異數就是它跟自己的內積。

② 從你國中就會的兩個東西開始

錨點零:先認幾個符號(這一整頁從頭到尾只會用到這幾個)

符號不是拿來嚇人的,每一個都只是某句中文的縮寫。這張表看過一遍,後面就不會卡在「那個字母是什麼」。

符號怎麼唸它到底是什麼
xi x sub i i 個人的數值。下標 i 純粹是編號:x1 是第一個人、x7 是第七個人。本頁 xi 一律代表「第 i 個人的月薪,單位萬元」。
n n 資料筆數,也就是有幾個人。本頁的主實驗 n = 7。
x bar(x 頭上一橫) 這一組資料的平均。那一橫(bar)不是新變數,它是在說「把下面那組 x 全部平均起來的那個數」。看到帽子就讀「⋯⋯的平均」。
Σ sigma(希臘字母的大寫 S) 「把後面那個東西一個一個加起來」的縮寫,等同程式裡的 for 迴圈累加。 它下面跟上面那兩個小字,是在講「從第幾個加到第幾個」Σi=1n xi 讀成「讓 i 從 1 開始跑到 n,把每個 xi 加起來」。 本頁為了排版常常把上下標省掉,看到光禿禿的 Σ 就一律當成「七個人全部加起來」。
xi − x̄ 第 i 個人的偏差:他離平均多遠。正的代表他在平均之上,負的代表在平均之下。本頁圖上所有紅色的東西都是它。

後面還會冒出 sσn − 1cMAD —— 那幾個各自在第一次出現的地方就地解釋,這裡先不塞。

錨點一:平均數 = 翹翹板的支點

國中自然課的力矩:一根板子上掛幾個一樣重的砝碼,支點要放在哪才會平衡? 答案是放在重心,而重心的位置就是所有砝碼位置的平均。 平衡的意思是「左邊的力矩 = 右邊的力矩」,換成數字就是: 所有「往左偏的量」加起來,剛好等於所有「往右偏的量」

這張圖在幹嘛

你會看到什麼:一根板子架在一條數線上(刻度是萬元),板子上掛著七個青色砝碼,一個砝碼就是一個人的月薪。板子底下那個橘色三角形是支點,它永遠停在七個人的平均 那一格。

你可以動什麼:用滑鼠拖任何一個青色砝碼左右移動(等於改那個人的薪水)。你一放手,支點就自己跑到新的平均位置。

要看出什麼:不管你怎麼拖,讀數盤裡的「左力矩」跟「右力矩」永遠是同一個數字 —— 換句話說,把七個偏差直接加起來,答案恆等於 0。這就是「偏差不能直接相加」的證據。

拖動任何一個砝碼:支點(橘色三角形)會跟著跑到新的平均位置,而且不管你怎麼拖,左右力矩永遠相等。

支點位置(平均 x̄)
左力矩 Σ(x̄ − x) 低於平均的人
右力矩 Σ(x − x̄) 高於平均的人
左右相減
記住這件事

錨點二:正方形的面積

左右力矩會相等,代表「把偏差直接加起來」永遠是 0 —— 這個量廢掉了,沒辦法拿來衡量散開。 那就換一招,用國中另一個你熟到不行的東西:正方形

每個人離平均多遠,就畫一個邊長 = 那段距離的正方形。離得遠的人,正方形又大又醒目; 離得近的人,正方形小到幾乎看不見。然後問一句:

這些正方形的平均面積是多少?
如果要用一個正方形代表全體,它的邊長該是多少? 第一個答案叫「變異數」(面積)。第二個答案叫「標準差」(邊長)。整關就這兩句話。

這就是為什麼一件事要有兩個名字:變異數住在「面積」的世界,標準差住在「長度」的世界。 面積好算(可以加、可以拆),長度好懂(跟資料同單位)。下面你會親手看到這兩個世界同時被畫出來。

③ 主實驗:七個人的薪水,兩張圖同時看

這兩張圖在幹嘛

你會看到什麼:上圖是一條薪水數線,一列一個人:青點是他領多少、 紅線段是他離平均多遠(偏差)、橘色直線是平均 、 最底下綠色那把尺x̄ ± σ 的範圍。 下圖把上圖每一段紅線段「立起來」變成一個紅色正方形(邊長 = 那段紅線的長度), 而綠色正方形是「這七個紅正方形的平均面積」長成的那一個。兩張圖畫的是同一組人,只是一個量長度、一個量面積。

你可以動什麼:直接拖上圖任何一顆青點左右移動,或按右邊三顆按鈕(把老闆拉到 12 萬/全部拉成一樣/重設)。 兩張圖、右邊每一個讀數、下面那張表會同時重算。

要看出什麼:正方形的面積是平方長出來的,偏差變 3 倍面積就變 9 倍。 所以只要有一個人被拖遠,他一個人的紅正方形就會大到蓋過其他六個 —— 看表格最右欄的「佔比」,它會直接告訴你變異數有幾成是他一個人貢獻的。

右邊讀數盤上那四個符號
n − 1 七個人減 1 = 6,變異數的分母。為什麼不是除以 7,⑧ 那節會慢慢講(關鍵字:自由度)。現在只要知道它是個固定的分母就好。
唸「s squared」,就是變異數。它是下圖那個綠正方形的面積。單位是「萬元的平方」,所以這個數字你不會有直覺,那很正常,不是你的問題。
s 標準差,就是 開根號。它是綠正方形的邊長。單位是萬元,跟薪水同一種,所以可以直接畫回上圖那條數線上比。
σ 希臘字母 sigma 的小寫(大寫 Σ 是加總,小寫 σ 是標準差,兩個沒關係)。本站圖上一律寫 σ它就是上面那個 s —— 樣本標準差、分母 n − 1,不是另一個新東西。純粹因為圖上寫 σ 比寫 s 好認。⑧ 有補充說明

標準差 s(跟薪水同單位)
萬元
平均 x̄
平方和 Σ(x − x̄)²
變異數 s² = 平方和 ÷ (n−1)
標準差 s = √s²
±σ 這把尺的範圍
落在尺裡面的人數
薪水偏差偏差²佔比
現在發生什麼事

上圖每一列是一個人:青色點是他的薪水,紅色線段是他離平均多遠(偏差), 橘色直線是平均,底下那把綠色的尺是 x̄ ± σ。 下圖把每一段紅線段變成一個紅色正方形(邊長 = 偏差),綠色正方形的面積就是它們的平均面積。

先玩這個

把「老闆」一路拖到 12 萬,盯著下圖看。他的正方形會膨脹到快要塞不進畫布,而其他六個人的正方形幾乎沒動。 表格最右欄的「佔比」會告訴你:整個變異數幾乎是他一個人貢獻的。這個現象後面踩坑那節會再算一次給你看。

④ 去中心化:把整組資料搬走,散開程度紋風不動

現在做一件看起來很無聊的事:把七個人的薪水全部加上同一個數字(全公司一起調薪,或者只是換一個記帳的原點)。 直覺上「大家離彼此多遠」不該有任何改變 —— 這個直覺是對的,而且它是後面 PCA 第一步的全部理由。

這張圖在幹嘛

你會看到什麼:同一條薪水數線畫成上下兩排。上排(淡的)是原始的七個人, 下排(亮的)是「每個人都加上同一個數字」之後的七個人。兩排各自配一條橘色平均線和一把綠色的 ±σ 尺, 中間的青色虛線把同一個人的原位置與新位置牽起來。

你可以動什麼:拉右邊那支「整組平移量」滑桿(−12 ~ +12 萬,等於全公司一起加薪或一起減薪), 或按「一鍵去中心化」把平均直接搬到 0。

要看出什麼:下排整排會跟著滑桿左右跑、橘色平均線也跟著跑, 但上下兩把綠尺永遠一樣長,右邊「變異數的變化量」永遠印 0.00。 平移換掉的只有「你從哪裡開始數」,沒有換掉「大家離彼此多遠」。

上排(淡)是原始資料,下排(亮)是平移後的資料。兩排的點與點之間的間距完全一樣,只是整組被推走了。

整組平移量+0.0 萬
平移量
平均:原 → 新
變異數:原 → 新
變異數的變化量
標準差:原 → 新
讀數在說什麼

為什麼做了不影響結果

變異數的公式裡,每一項都是 (xi − x̄)。你把所有 xi 加上同一個常數 kk 就是滑桿上那個平移量),平均 也會跟著加上 k, 兩個 k 在括號裡直接抵銷。 所以平移改變的只有「你從哪裡開始數」,沒有改變「大家離彼此多遠」。

去中心化(centering)就是刻意選 k = −x̄,把重心搬到原點。 這麼做不是為了好看,是為了讓「離中心多遠」直接變成「離原點多遠」—— 也就是變成一條從原點出發的向量,這樣才能用上內積、長度、角度那一整套工具。 05 關的 PCA 第一步一定先做這件事,原因就在這裡: 沒搬到原點的話,PCA 找到的「主軸」會被「資料離原點多遠」污染,變成在量位置而不是在量形狀。

⑤ 為什麼要平方?三種「散開的定義」現場對決

「離中心多遠」可以有很多種定義方式。下面三個都是合法的候選,用同一組資料算給你看,你自己選。

這張圖在幹嘛

你會看到什麼:畫面隨你選的定義換一張。(a)(b) 模式是上下兩層: 上層七根紅棒是七個人的偏差,橘色那條直線就是 0(也就是平均所在的位置),棒子往右代表高於平均、往左代表低於平均; 下層那道綠色階梯是把這七根偏差首尾相接走一遍,看終點停在哪一格。 (c) 模式換成紅正方形那張圖(跟 ③ 的下圖是同一種畫法)。

你可以動什麼:按右邊三顆按鈕切換 (a) 偏差直接相加/(b) 絕對值平均/(c) 平方平均。 資料還是③ 那七個人,你在上面拖過什麼,這裡會跟著變。

要看出什麼:切到 (a):綠階梯不管怎麼繞,走完一定回到橘線上,終點是 0.00 —— 這個定義量不到任何東西。 切到 (b) 或 (c):終點才真的離開 0,才是能拿來當「散開程度」的數字。

表格裡的 MAD 是 mean absolute deviation,中文叫「平均絕對偏差」: 把每個人的偏差先取絕對值(丟掉正負號)再平均。它是跟變異數互相競爭的另一個候選答案,不是變異數的一部分。

定義算出來能用嗎
(a) Σ(x − x̄)恆為 0,廢的
(b) Σ|x − x̄| ÷ n(MAD)可以,但接不上幾何
(c) Σ(x − x̄)² ÷ (n−1)可以,而且接得上一切

(b) 除 n、(c) 除 n−1 不是筆誤:MAD 慣例除 n; 自由度修正是為了讓變異數成為母體變異數的無偏估計,MAD 沒有對應的無偏需求。

這個定義的下場

(a) 為什麼一定是 0 —— 這不是巧合

切到 (a) 看圖下面那條鏈子:把七個偏差首尾相接,最後一定準確回到原點。 因為平均就是支點,支點的定義就是「左力矩 = 右力矩」。 也就是說 (a) 這個量不是「有時候是 0」,而是對任何資料都恆等於 0。 它量不到任何東西 —— 這就是「必須先做點什麼再相加」的理由,而平方是最便宜的那個做法。

(b) 絕對值也是合法的尺,別被騙說它不行

MAD(mean absolute deviation)真的可以用,也真的有人在用(穩健統計、L1 loss、MAE)。 它甚至有一個平方比不上的優點:對離群值沒那麼敏感。誠實講:如果你只想要一個「大家平均離中心多遠」的直覺數字,MAD 更誠實。

(c) 平方贏在哪裡

⑥ 標準差 vs 變異數:換個單位就看出誰是誰

同樣七個人,這次量身高。按下面的按鈕換單位(公分 ↔ 公尺),資料一個字沒改,只是換了記錄方式。

這個互動在幹嘛

你會看到什麼:這次沒有圖,就一張表:七個人的身高原始數值、平均 、變異數 、標準差 s, 每一列右邊都標了它的單位。表格下面兩行讀數是「換單位之後,這個量被乘了幾倍」。

你可以動什麼:按「用公分記」/「用公尺記」兩顆按鈕。七個人的身高一公釐都沒改,改的只有記錄它的單位。

要看出什麼:換成公尺(也就是全部 ÷ 100)之後,標準差乖乖跟著 ÷ 100,變異數卻是 ÷ 10000。 因為變異數的單位是平方的,換單位時倍率也跟著平方。這一個現象就足以證明「 是面積、s 是長度」不是比喻,是真的。

數值單位
原始資料
平均 x̄
變異數 s²
標準差 s
換單位時,變異數乘了幾倍
換單位時,標準差乘了幾倍
你剛剛看到什麼

變異數的單位很奇怪

身高的單位是公分,變異數的單位是平方公分。 「一個人的身高變異是 82 平方公分」這句話沒有任何物理意義 —— 平方公分是面積,身高不是面積。 這就是為什麼要開根號:開根號是為了把單位開回來,讓數字重新變成「公分」,可以跟身高本人放在同一條數線上比。

場合用哪一個為什麼
報告 / 圖表 / 跟人講話標準差 s跟資料同單位,可以直接說「大約落在 170 ± 9 公分」,可以畫在同一條軸上
算式內部 / 推導 / 拆解變異數 s²可加(獨立來源直接相加)、可拆(總變異 = 各方向變異之和)、而且它就是內積,接得上矩陣

這也是為什麼後面 共變異數矩陣裝的是變異數而不是標準差 —— 矩陣要能做加法跟拆解,只有變異數撐得住。標準差是給人看的最後一步。

⑧ 數學長怎樣

先看程式,這比符號好懂:

const mean = a => a.reduce((s, v) => s + v, 0) / a.length;

function variance(a) {                    // 樣本變異數:分母是 n-1
  const m = mean(a);
  const dev = a.map(v => v - m);          // 去中心化:每個人離中心多遠
  const ss  = dev.reduce((s, d) => s + d * d, 0);   // 平方和 == dev · dev(內積!)
  return ss / (a.length - 1);
}

const std = a => Math.sqrt(variance(a));  // 開根號,把單位開回來

換成符號,一模一樣的東西:

x̄ = (1 / n) · Σ xi x̄ 讀作「x bar」,就是平均。Σ 是「把後面的東西從第 1 筆加到第 n 筆」的縮寫,n 是資料筆數。
s² = (1 / (n − 1)) · Σ (xi − x̄)²   s = √(s²) s² 是變異數(單位是「原單位的平方」),s 是標準差(回到原單位)。 (xi − x̄) 是第 i 個人的偏差,平方之後就是那個正方形的面積
s² = (c · c) / (n − 1) ,其中 c = (x1 − x̄, …, xn − x̄) 同一條公式的向量寫法。c 就是去中心化之後的資料向量,c · c 是它跟自己的內積 = |c|²。

σ 跟 s 是同一個東西:本站圖表與讀數為了排版一律寫成 σ(例如主實驗那把 x̄ ± σ 的尺), 那個 σ 就是這裡定義的 s —— 樣本標準差,分母是 n − 1。 看到 σ 一律讀成「除以 n−1 那個」,不是另一個新東西。(統計課本裡 σ 專指母體標準差,本站沒有用到母體版。)

那個 n − 1 是什麼?叫做自由度。七個偏差看起來有七個數字,但它們被綁住了一條約束: 加起來一定是 0(支點那節證過)。也就是說你知道前六個偏差,第七個就被算出來了, 它不帶新資訊。真正獨立的偏差只有 n − 1 = 6 個,所以平均的時候除以 6 而不是 7。 (中心是從資料自己身上估出來的,估這件事已經花掉一個自由度。)

本站全部統一用樣本版(ddof = 1,除以 n−1),LAB.M.variance() 的預設值就是這個。

⑨ 工程師的「原來如此」

量化交易:波動率就是標準差,而年化只是乘 √252

金融圈講的「波動率」(volatility)沒有任何神秘之處:它就是日報酬率這一欄數字的標準差。 真正有趣的是年化的做法 —— 日波動率乘上 √252(一年約 252 個交易日)。

為什麼是乘根號而不是乘 252?因為可加的是變異數,不是標準差。 假設每天的報酬互相獨立,252 天的總變異數 = 252 × 單日變異數(變異數可加), 要換回「同單位」的波動率就得開根號,於是 σ = √252 · σ ≈ 15.9 σ。 整個年化公式存在的理由,就是「面積可加、長度不可加」這一件事。 順帶一提:這也是為什麼「獨立」這個假設一崩(市場一起崩盤時報酬高度相關),年化波動率就會嚴重低估風險 —— 相關性怎麼進到公式裡,是下一關的主題。

機器學習:z-score 標準化在做什麼,不做會怎樣

丟資料進模型前那行 StandardScaler(),做的事就是這關的全部: zi = (xi − x̄) / s —— 先去中心化(減平均),再除以標準差。 做完每一欄的平均是 0、標準差是 1。

不做會怎樣?兩個具體災難:

  • 梯度下降走 zigzag:假設一欄是「年齡」(範圍 20–70),一欄是「年收入」(範圍 300000–3000000)。 損失函數在收入方向上超級陡、在年齡方向上超級平,等高線變成一條細長的峽谷。 梯度下降只能在峽谷裡來回撞牆,學習率設大就爆炸、設小就跑一整天。
  • 距離被大單位那一欄綁架:kNN、k-means、SVM、任何吃 |u − v| 的東西, 在上面那個例子裡「年齡差 40 歲」的貢獻是 1600,「收入差 40 萬」的貢獻是 1.6 × 1011。 年齡這一欄實質上被無視了 —— 不是因為它不重要,只是因為它的單位比較小。

這也是 05 關那個經典陷阱的源頭:PCA 直接吃原始資料時, 主軸會忠實地指向「單位最大的那一欄」,而不是「訊息最多的那一欄」。

⑩ 踩坑

坑 1:變異數對離群值極度敏感,一個點就能綁架整組

因為每個偏差都被平方,偏差變 3 倍,貢獻變 9 倍。 回主實驗按下「把老闆拉到 12 萬」:其他六個人一動也沒動,變異數卻翻好幾倍, 表格會顯示老闆一個人吃掉大部分的平方和。

實務上怎麼辦:先畫圖看有沒有離群值(不要只看平均和標準差就下結論); 真的有而且你不想被它主導,改用中位數 + IQR,或用 MAD 這類穩健統計量。 平方讓數學漂亮,但它也放大了污染。這是 trade-off,不是 bug。

坑 2:÷n 還是 ÷(n−1),什麼時候用哪個

÷n(母體變異數):你手上這組數字就是全部,沒有「外面還有」的概念。 例如「這 30 個學生的成績」而你只在乎這 30 個人;或者影像處理裡「這張圖所有像素」。

÷(n−1)(樣本變異數):你手上這組是從更大的母體抽出來的樣本,你想用它推估母體的變異數。 直接除以 n 會系統性低估(因為偏差是相對於「樣本自己的平均」算的,這個平均天生就比真正的母體平均更貼近樣本), 除以 n−1 剛好補回來。

會咬人的地方:不同工具的預設值不一樣。NumPy 的 np.var() 預設 ddof=0(除以 n), pandas 的 .var() 預設 ddof=1(除以 n−1),Excel 有 VAR.PVAR.S 兩個函數。 同一份資料在兩個工具算出不同數字,八成就是這裡。n 大的時候差異可以忽略,n = 5 的時候差 25%。 本站全部用 ddof=1。

坑 3:標準差不能直接相加

兩個獨立來源,各自的標準差是 3 和 4,合起來的標準差不是 7。 要先回到變異數:9 + 16 = 25,再開根號 → 5

看起來眼熟嗎?3、4、5 直角三角形。這不是巧合 —— 獨立 ⇒ 正交(獨立的兩個來源共變異數必為 0,變異數於是能像畢氏定理一樣直接相加), 標準差就是斜邊。所以「標準差不能相加」跟「兩條垂直向量的長度不能相加」是同一句話。 任何時候你想把幾個散開程度合起來,一律先平方、加完、再開根號。

箭頭只有一個方向:獨立 ⇒ cov = 0,但 cov = 0 ⇏ 獨立(cov = 0 只保證「沒有直線關係」, 反例是 03 關坑一那條拋物線)。這裡用得到的只有「cov = 0 → 變異數可加」這個方向, 所以拿正交當條件是安全的;但別把它反過來讀成「變異數能相加就代表兩件事無關」。

⑪ 這關回答了什麼

什麼是變異數?什麼是標準差?兩個為什麼要有兩個?

變異數 = 每個人「離平均多遠」畫成的正方形的平均面積(分母用 n−1)。 標準差 = 那個平均面積正方形的邊長,也就是變異數開根號。

兩個都要,是因為它們住在不同的世界,各有各的長處。 變異數住「面積」的世界:可加、可拆、可微,而且它就是內積,接得上矩陣 —— 算式裡面一律用它。 標準差住「長度」的世界:跟資料同單位,可以直接畫在同一條數線上、可以說「大約 170 ± 9 公分」—— 給人看的時候用它。

為什麼要平方?直接加起來不行嗎?用絕對值不行嗎?

直接加真的不行,而且不是「效果不好」,是恆等於 0。因為平均就是翹翹板的支點, 左邊偏差的總量必然等於右邊偏差的總量,加起來一定抵銷。切到 (a) 模式看那條鏈子,它永遠回到原點。

絕對值可以,那叫 MAD,是合法的統計量,而且比變異數更抗離群值。 平方勝出的原因不是「更正確」,是接得上東西:平方可微(導數 2x,梯度下降愛它)、 平方可加可拆(獨立來源的變異數直接相加)、平方就是畢氏定理(Σd² = |c|²,一整套幾何跟著搬進來)。 MAD 什麼都算得出來,但它接不上矩陣和特徵向量,走不到 PCA。

有了標準差,為什麼還要變異數?它們的幾何差異是什麼?

幾何差異一句話:變異數是面積,標準差是邊長 —— 同一個正方形的兩種讀法。 少了面積那一版就沒辦法「合起來」:兩個獨立來源的標準差 3 和 4,合起來是 5 不是 7, 必須先平方回面積、相加、再開根號(坑 3)。

所以分工是固定的:算式內部一律用變異數(可加、可拆、就是內積,能排成矩陣), 最後給人看那一步才開根號成標準差(跟資料同單位)。⑥ 那節換一次單位就把兩者逼開: 公分改成公尺,變異數變成 1/10000 倍,標準差只變 1/100 倍。

去中心化(平移)到底代表什麼意思?為什麼做了不影響結果?

去中心化 = 把整組資料的重心搬到原點,也就是換一個數數的起點。 全公司一起調薪 3 萬,平均跟著 +3,但「大家彼此差多少」一個字都沒變 —— 拉那支滑桿看讀數:平均跟著跑,變異數的變化量是 0.00。

公式上的理由很直白:變異數只用到 (xi − x̄),你加的那個常數在括號裡自己抵銷了。

那為什麼還要做?因為搬到原點之後,「離中心多遠」就變成「離原點多遠」, 資料正式變成一條從原點出發的向量,長度、角度、投影、內積全部可以用。 PCA 第一步一定先去中心化,否則它找到的主軸會在量「資料離原點多遠」而不是「資料長什麼形狀」。

變異數跟內積有什麼關係?

不是「有關係」,是同一件事。把 n 筆資料看成一條 n 維向量,去中心化得到 c,那麼:

變異數 = (c · c) / (n − 1) = |c|² / (n − 1)

變異數就是「c 跟自己做內積,再除以自由度」。標準差就是 c 的長度除以 √(n−1)。 那節的讀數盤把兩邊的數字並排印出來,你可以自己核對它們一位小數都不差。

這條等式是後面所有東西的地基:共變異數是「兩條不同的中心化向量做內積」, 共變異數矩陣是把所有這種內積排成表, 而它的特徵向量就是資料的主軸。全部從這一條長出來。

什麼情況下我會需要用到它?

只要你手上有一欄數字,而且平均數騙了你的時候。幾個真的會遇到的場合:

  • 看監控 / 效能數據:API 平均延遲 80ms 聽起來很好,標準差 400ms 就代表有一堆請求慢到爆。 這也是為什麼大家看 p99 而不只看平均。
  • A/B test:兩組轉換率差 0.3%,這個差異有沒有意義完全取決於各組的變異數 —— 所有統計檢定的分母裡都是它。
  • 丟資料進模型前:z-score 標準化(見上一節),不做就等著梯度下降走 zigzag。
  • 量化 / 風控:波動率就是報酬率的標準差,部位大小、停損、風險預算全部從它算出來。
  • 任何降維 / 壓縮:PCA 的字面定義就是「找變異數最大的方向」。沒有這關就沒有 05 關。
這關留下什麼洞

現在你能量「一個欄位有多散」了。但真實資料從來不只一欄 —— 體檢表上同時有身高和體重,交易資料裡同時有台積電和聯發科的報酬率。

新問題來了:這兩欄會不會一起動?高的人是不是通常也比較重? 「一起動的程度」顯然不是任何單一欄位的變異數能回答的,它是兩欄之間的量。 而既然變異數是「一條向量跟自己的內積」,那「兩欄一起動」的答案幾乎是自動的: 拿兩條不同的中心化向量做內積下一關就把這件事做完,順便把它排成一張矩陣。