搜尋課程與筆記

搜尋筆記

輸入主題、關鍵字或單元編號,例如 Flow Matching、U4。

    按 Esc 關閉 · ⌘ / Ctrl K 開啟搜尋

    M1.0 11 分鐘閱讀 2026年10月

    M1.0 兩台體重計:Gaussian 的線性組合

    兩個讀數

    家裡有兩台體重計。你知道它們都沒有系統性的偏差(長期平均是準的),但每次讀數會抖:A 台的抖動大約 ±1\pm1 kg,B 台比較好,大約 ±0.5\pm0.5 kg。今天早上 A 讀 72.8、B 讀 71.9。

    問題:你該報幾公斤?

    兩台都參考,聽起來比只用一台穩。但 A 比較容易抖,給它一半權重會不會反而把 B 拖偏?

    要怎麼按讀數的可靠程度合併,而不是直接取平均? 以下把「抖動 1 kg、0.5 kg」明確當成標準差,不是誤差一定落在這個範圍內。先寫出合併後的 variance,再找讓它最小的權重。

    課堂提問Q1

    把情境翻成數學:這裡的隨機變數是什麼?「±1\pm1 kg」該怎麼寫成數學物件?我們想比較的是哪些做法、用什麼標準比?

    先想一想,再展開看整理後的答案

    最直覺的說法是「體重是隨機變數」。這差了一點:你的體重 ww 今天早上是一個固定但未知的數;隨機的是讀數。

    寫成式子:A 台讀到 YA=w+εAY_A=w+\varepsilon_A,B 台讀到 YB=w+εBY_B=w+\varepsilon_B,εA,εB\varepsilon_A,\varepsilon_B 是兩台的雜訊。「沒有系統偏差」是 E[ε]=0\mathbb E[\varepsilon]=0;「±1\pm1 kg」最自然的翻譯是雜訊的標準差 σA=1\sigma_A=1、σB=0.5\sigma_B=0.5。再加一個常見的模型假設:雜訊是 Gaussian(正常分佈),εA∼N(0,σA2)\varepsilon_A\sim\mathcal N(0,\sigma_A^2);以及兩台的雜訊獨立——A 抖多少跟 B 抖多少無關。

    我們要比較的做法都是「用兩個讀數算一個數」:w^=aYA+bYB\hat w=aY_A+bY_B。要它長期平均是準的,需要 a+b=1a+b=1(因為 E[w^]=(a+b)w\mathbb E[\hat w]=(a+b)w)。「取平均」是 a=b=12a=b=\tfrac12,「只用 B」是 a=0,b=1a=0,b=1。比較的標準是 w^\hat w 抖得多大——它的 variance。所以問題變成:aYA+bYBaY_A+bY_B 的 variance 是多少、哪一組 (a,b)(a,b) 最小? 這需要知道「兩個 Gaussian 加起來會變成什麼」。

    兩種抖動疊在一起

    想像一支筆尖在紙上抖:A 台的雜訊讓它左右晃出一團寬 1 cm 的模糊,B 台的雜訊讓它晃出一團寬 0.5 cm 的模糊。把兩種晃動疊起來——不是取寬的那一個,也不是相加成 1.5 cm。因為兩種晃動彼此無關,有時同向、有時反向,疊起來的寬度介於中間,而且有一個固定的規律:寬度的平方相加。 12+0.52≈1.12\sqrt{1^2+0.5^2}\approx1.12 cm。

    疊起來之後這團模糊的形狀沒變,還是同一種鐘形,只是寬了一點。這兩件事——形狀保持、寬度平方相加——就是 Gaussian 在「合併」這件事上好用的全部原因。

    兩個 Gaussian 相加後仍是 Gaussian,variance 按畢氏定理相加。

    圖:獨立雜訊的 variance 相加;標準差既不是取最大值,也不是直接相加。

    把「合併」寫成數學

    一維。 X∼N(μ,σ2)X\sim\mathcal N(\mu,\sigma^2) 的密度是 12πσexp⁡ ⁣(−(x−μ)22σ2)\frac1{\sqrt{2\pi}\sigma}\exp\!\big(-\frac{(x-\mu)^2}{2\sigma^2}\big)。兩個基本事實:

    1. 縮放與平移:aX+b∼N(aμ+b, a2σ2)aX+b\sim\mathcal N(a\mu+b,\ a^2\sigma^2)。乘 aa 讓寬度變 ∣a∣|a| 倍、variance 變 a2a^2 倍。
    2. 獨立相加:若 X1∼N(μ1,σ12)X_1\sim\mathcal N(\mu_1,\sigma_1^2)、X2∼N(μ2,σ22)X_2\sim\mathcal N(\mu_2,\sigma_2^2) 獨立,則 X1+X2∼N(μ1+μ2, σ12+σ22)X_1+X_2\sim\mathcal N(\mu_1+\mu_2,\ \sigma_1^2+\sigma_2^2)。

    合起來:獨立 Gaussian 的任何線性組合仍是 Gaussian,mean 線性組合、variance 用係數平方加權相加。 「variance 相加」對任何獨立隨機變數都成立(不需要 Gaussian);Gaussian 多給的是「形狀不變」——合併後你仍然完全知道它的分佈。

    展開細節為什麼獨立 Gaussian 相加仍是 Gaussian(用 moment generating function,五行)

    X∼N(μ,σ2)X\sim\mathcal N(\mu,\sigma^2) 的 moment generating function 是 MX(s)=E[esX]=exp⁡(μs+12σ2s2)M_X(s)=\mathbb E[e^{sX}]=\exp(\mu s+\tfrac12\sigma^2s^2)(把指數配方即可算出)。獨立時 E[es(X1+X2)]=E[esX1] E[esX2]\mathbb E[e^{s(X_1+X_2)}]=\mathbb E[e^{sX_1}]\,\mathbb E[e^{sX_2}],所以

    MX1+X2(s)=exp⁡ ⁣((μ1+μ2)s+12(σ12+σ22)s2),M_{X_1+X_2}(s)=\exp\!\big((\mu_1+\mu_2)s+\tfrac12(\sigma_1^2+\sigma_2^2)s^2\big),

    正好是 N(μ1+μ2,σ12+σ22)\mathcal N(\mu_1+\mu_2,\sigma_1^2+\sigma_2^2) 的 MGF;MGF 決定分佈,證畢。「variance 相加」那一部分不需要 Gaussian:Var(X1+X2)=Var(X1)+Var(X2)+2 Cov(X1,X2)\mathrm{Var}(X_1+X_2)=\mathrm{Var}(X_1)+\mathrm{Var}(X_2)+2\,\mathrm{Cov}(X_1,X_2),獨立時最後一項為零。

    多維。 把 dd 個讀數排成向量 X=(X1,…,Xd)X=(X_1,\dots,X_d)。它的 mean 是向量 μ\mu,而「抖動」需要一個矩陣才裝得下:covariance matrix Σij=Cov(Xi,Xj)\Sigma_{ij}=\mathrm{Cov}(X_i,X_j),對角線是各自的 variance,非對角線是「ii 抖大時 jj 是否也傾向抖大」。獨立時 Σ\Sigma 是對角矩陣。多變量 Gaussian X∼N(μ,Σ)X\sim\mathcal N(\mu,\Sigma) 的線性變換規則只有一行:

    AX+b∼N(Aμ+b, AΣA ⁣⊤).AX+b\sim\mathcal N\big(A\mu+b,\ A\Sigma A^{\!\top}\big).

    取 AA 為一列權重 a ⁣⊤=(a1,…,ad)a^{\!\top}=(a_1,\dots,a_d),就得到最常用的特例:Var(a ⁣⊤X)=a ⁣⊤Σa=∑i,jaiajΣij\mathrm{Var}(a^{\!\top}X)=a^{\!\top}\Sigma a=\sum_{i,j}a_ia_j\Sigma_{ij}。獨立時它退化成 ∑iai2σi2\sum_i a_i^2\sigma_i^2——一維規則的直接推廣。

    平均,還是加權?

    算兩種做法。 w^=aYA+bYB\hat w=aY_A+bY_B,a+b=1a+b=1,雜訊獨立:

    Var(w^)=a2σA2+b2σB2.\mathrm{Var}(\hat w)=a^2\sigma_A^2+b^2\sigma_B^2 .

    兩台體重計的雜訊獨立,所以交叉項是零,只剩兩項各自的貢獻,而且權重是平方進去的——這一點決定了下面兩種做法差多少。

    • 直接平均(a=b=12a=b=\tfrac12):14(1+0.25)=0.3125\tfrac14(1+0.25)=0.3125,標準差 0.560.56 kg。
    • 只用 B(a=0,b=1a=0,b=1):0.250.25,標準差 0.50.5 kg。

    直接平均比只用 B 還差。 直覺「兩個資訊總比一個多」沒有錯,錯在平均給了差的那台一半的話語權——等於把 A 台 ±1\pm1 kg 的抖動用一半的音量混進來,比 B 自己的抖動還大。

    最佳權重。 對 aa 最小化 a2σA2+(1−a)2σB2a^2\sigma_A^2+(1-a)^2\sigma_B^2,令導數為零:aσA2=(1−a)σB2a\sigma_A^2=(1-a)\sigma_B^2,得

    a=1/σA21/σA2+1/σB2,b=1/σB21/σA2+1/σB2,Var(w^)=11/σA2+1/σB2.a=\frac{1/\sigma_A^2}{1/\sigma_A^2+1/\sigma_B^2},\qquad b=\frac{1/\sigma_B^2}{1/\sigma_A^2+1/\sigma_B^2},\qquad \mathrm{Var}(\hat w)=\frac{1}{1/\sigma_A^2+1/\sigma_B^2}.

    權重與 variance 成反比,叫 inverse-variance weighting;1/σ21/\sigma^2 叫 precision,合併後的 precision 是各自 precision 的和——「兩個資訊總比一個多」的正確版本。代數字:a=0.2a=0.2、b=0.8b=0.8,w^=0.2×72.8+0.8×71.9=72.08\hat w=0.2\times72.8+0.8\times71.9=72.08 kg,variance 0.20.2、標準差 0.4470.447 kg——比 B 單獨的 0.50.5 好,但只好一點,因為 A 太差、能貢獻的 precision 只有 B 的四分之一。三台、nn 台的規則完全一樣:precision 相加、權重按 precision 分。

    這個結論依賴什麼。 我們比較的是已知、固定 variance 下的線性無偏估計,不是所有可能策略在每個真實體重上的 MSE。推導權重只用了無偏與不相關誤差,不必要求 Gaussian;Gaussian 的用途是讓合併後的分布仍可完整寫成 Gaussian。

    若兩台都受到同一塊軟地墊影響,還要加上 2ab Cov(YA,YB)2ab\,\mathrm{Cov}(Y_A,Y_B),原本的權重不再一定最佳。共同誤差 cc 若與各台的獨立誤差無關,nn 台平均後的 variance 是 σc2+σ2/n\sigma_c^2+\sigma^2/n:共同那一份不會被平均掉。若儀器還有偏差或離群值,則要重新檢查比較標準與誤差模型,不能把上述權重直接當成一般情況的最優解。

    模擬一萬個早上

    import numpy as np
    rng = np.random.default_rng(0); n = 10_000; w = 72.0
    sA, sB = 1.0, 0.5
    def trial(rho=0.0, glitch=0.0):
        eA = rng.normal(0, sA, n); eB = rho*eA*(sB/sA) + np.sqrt(1-rho**2)*rng.normal(0, sB, n)  # rho: 兩台雜訊的相關係數
        eA = eA + glitch*rng.choice([0, 10], n, p=[0.98, 0.02])                                   # glitch: A 台 2% 機率跳 10 kg
        yA, yB = w + eA, w + eB
        for name, est in [("平均", (yA+yB)/2), ("只用 B", yB), ("加權 0.2/0.8", 0.2*yA+0.8*yB)]:
            print(f"  {name:10s} 標準差 {est.std():.3f}")
    for rho, g in [(0.0, 0), (0.8, 0), (0.0, 1)]:
        print(f"rho={rho}, glitch={g}"); trial(rho, g)

    第一組的三個標準差約為 0.559,0.5,0.4470.559,0.5,0.447,與理論吻合。第二組加入相關誤差,原來忽略 covariance 的權重不再最佳;第三組加入跳格,使 A 的實際 variance 改變。這些結果提醒我們更新誤差模型,不是說所有非 Gaussian 誤差都不能線性合併。

    檢查理解

    想一想

    三位朋友各自估計一場演唱會的人數:甲的估計誤差大約 ±2000\pm2000、乙 ±1000\pm1000、丙 ±1000\pm1000,三人誤差獨立且無偏。你該怎麼合併?

    想一想

    兩台體重計放在同一塊軟地墊上,地墊每天下陷程度不同,讓兩台一起偏高或偏低約 ±0.8\pm0.8 kg,各自另有獨立的 ±0.5\pm0.5 kg 抖動。取兩台平均後,估計的標準差大約是:

    想一想

    X∼N(μ,Σ)X\sim\mathcal N(\mu,\Sigma) 是三維的,AA 是一個 2×32\times3 矩陣。AXAX 的分佈是:

    參考文獻

    1. Grimmett, G., Stirzaker, D. Probability and Random Processes, 3rd ed. Oxford University Press 2001.(獨立隨機變數和的 variance、moment generating function、多變量 Gaussian。)
    2. Bishop, C. M. Pattern Recognition and Machine Learning. Springer 2006, Ch. 2.3.(多變量 Gaussian 的線性變換與 covariance matrix。)
    3. Kay, S. M. Fundamentals of Statistical Signal Processing, Vol. I: Estimation Theory. Prentice Hall 1993.(線性無偏估計與 inverse-variance weighting 的最佳性。)