機率論研究不確定性,但「不確定」不代表無法分析。機率模型先描述所有可能出現的結果,再用數值表示不同事件發生的可能性。統計學則從已經觀察到的資料反推模型、估計未知參數,或判斷某個假設是否可信。

初學機率與統計時,很容易直接開始背排列組合、機率分佈和期望值公式,卻沒有先分清楚樣本點、事件、隨機變數與觀測值之間的差異。這些概念一旦混在一起,後面的條件機率、機率密度、期望值、統計推斷與隨機過程都會變得很難理解。本文先建立一套可以反覆使用的基本語言,再透過擲骰子、身高、品質檢測與伺服器請求等例子理解它們之間的關係。

1. 從隨機試驗到機率空間

1.1 隨機試驗與樣本空間

一次操作如果在執行前無法確定結果,就可以視為隨機試驗(random experiment)。例如擲一顆骰子並記錄點數、抽取一件產品並檢查是否合格、記錄伺服器下一分鐘收到的請求數、測量一顆電子元件的壽命,或隨機抽取一個人並記錄其身高。

機率模型首先需要清楚定義「一次試驗是什麼」以及「一次試驗要記錄什麼結果」。如果試驗本身定義不清楚,後面的機率也就沒有明確含義。

隨機試驗所有可能結果的集合稱為樣本空間(sample space),通常記為 Ω\Omega;樣本空間中的單個基本結果稱為樣本點(sample point)或 outcome,通常記為 ω\omega。例如擲一顆六面骰子時,Ω=1,2,3,4,5,6\Omega={1,2,3,4,5,6}。如果最後擲出 4,那麼這一次試驗觀察到的樣本點就是 ω=4\omega=4。

擲兩顆可以區分的骰子時,可以把樣本空間寫成

Ω={(i,j):i,j∈{1,2,3,4,5,6}}.\Omega=\{(i,j):i,j\in\{1,2,3,4,5,6\}\}.

其中一共有 36 個有序結果。(1,6)(1,6) 和 (6,1)(6,1) 是兩個不同的樣本點,即使兩者的點數和都等於 7。

樣本空間也不一定是有限集合。例如,重複擲硬幣直到第一次出現正面,可以把等待次數的可能結果表示為 Ω=1,2,3,…\Omega={1,2,3,\dots};電子元件的壽命可以表示為 Ω=[0,∞)\Omega=[0,\infty);如果觀察的是一段時間內完整的溫度曲線,那麼一個樣本點甚至可能是一整條函數。因此,樣本空間可以是有限集合、可數無限集合、實數區間、向量空間,甚至函數集合。有限樣本空間通常可以用計數方法處理,而連續或函數型樣本空間則需要積分與測度等工具。

1.2 事件與集合運算

事件(event)是樣本空間的一個子集合。擲一顆骰子時,令 A=2,4,6A={2,4,6} 表示「骰子點數為偶數」,令 B=4,5,6B={4,5,6} 表示「骰子點數大於 3」。如果這一次試驗的結果落在事件集合中,就稱該事件發生。例如骰出 4 時,4∈A4\in A 且 4∈B4\in B,所以事件 AA 與事件 BB 都發生。

集合表示事件含義
A∩BA\cap BAA 與 BB 同時發生
A∪BA\cup BAA 或 BB 至少一個發生
AcA^cAA 不發生
A∖BA\setminus BAA 發生,但 BB 不發生
A∩B=∅A\cap B=\varnothingAA 與 BB 不可能同時發生

在上面的例子中,A∩B=4,6A\cap B={4,6},因此「點數為偶數且大於 3」包含 4 和 6。

在有限樣本空間中,通常可以把所有子集合都當成事件。但在一般的無限樣本空間中,不能一致地為所有可能子集合都定義機率,因此嚴格的機率論還需要指定一個允許賦予機率的事件集合族 F\mathcal F。F\mathcal F 對補集與可數聯集封閉,稱為 σ\sigma-algebra。初學階段可以暫時把 F\mathcal F 理解成「模型允許我們詢問,而且可以合法賦予機率的事件集合」。

1.3 機率測度與等可能假設

定義好事件之後,還需要回答每一個事件有多可能發生。機率測度 PP 把事件 A∈FA\in\mathcal F 映射成 [0,1][0,1] 之間的一個數。Kolmogorov 公理要求非負性 P(A)≥0P(A)\ge0、規範化 P(Ω)=1P(\Omega)=1,以及互斥事件的可數可加性:

P(⋃iAi)=∑iP(Ai).P\left(\bigcup_i A_i\right)=\sum_iP(A_i).

三元組 (Ω,F,P)(\Omega,\mathcal F,P) 稱為機率空間(probability space)。從這些公理可以推出

P(Ac)=1−P(A)P(A^c)=1-P(A)

以及

P(A∪B)=P(A)+P(B)−P(A∩B).P(A\cup B)=P(A)+P(B)-P(A\cap B).

聯集公式之所以需要減去交集,是因為直接把 P(A)P(A) 和 P(B)P(B) 相加時,A∩BA\cap B 會被重複計算一次。

如果有限樣本空間中的所有基本結果等可能,就可以使用

P(A)=∣A∣∣Ω∣.P(A)=\frac{|A|}{|\Omega|}.

例如兩顆公平骰子的 36 個有序結果等可能,但「兩顆骰子的點數和」並不等可能。和為 7 有 (1,6),(2,5),(3,4),(4,3),(5,2),(6,1)(1,6),(2,5),(3,4),(4,3),(5,2),(6,1) 六種結果,因此

P(D1+D2=7)=636=16.P(D_1+D_2=7)=\frac{6}{36}=\frac16.

而和為 2 只有 (1,1)(1,1) 一種結果,所以 P(D1+D2=2)=1/36P(D_1+D_2=2)=1/36。如果直接把 2 到 12 看成 11 種等可能的「和」,就會得到錯誤答案。

這裡一個很重要的原則是:等可能的是樣本點,不一定是後來定義的隨機變數取值。 類似地,計數公式也不能直接套用在不均勻骰子、故障率不同的元件或連續測量問題上。使用排列組合以前,必須先確認樣本空間是否有限,以及基本結果是否真的等可能。

2. 隨機變數與分佈

2.1 隨機變數是函數

隨機變數(random variable)不是一個「自己隨機變化的符號」,而是一個從樣本空間映射到數值集合的函數:

X:Ω→R.X:\Omega\rightarrow\mathbb R.

例如在兩顆骰子的實驗中,可以定義 X(i,j)=i+jX(i,j)=i+j。如果這一次試驗的基本結果是 ω=(2,5)\omega=(2,5),那麼隨機變數的觀測值就是 X(ω)=X(2,5)=7X(\omega)=X(2,5)=7。

這裡存在兩個不同層次:ω=(2,5)\omega=(2,5) 是實驗真正產生的基本結果,而 X(ω)=7X(\omega)=7 是我們從這個結果中抽取出來、真正關心的數值。同一個樣本空間可以定義很多不同的隨機變數,例如點數和、最大點數、兩顆骰子的差,或者第一顆骰子是否為偶數。隨機變數的作用可以理解成:從完整的隨機結果中,抽取我們真正關心的數量。

不同樣本點也可以映射到同一個隨機變數取值。例如 X(1,6)=7X(1,6)=7 且 X(2,5)=7X(2,5)=7。雖然兩個基本結果不同,但在只研究點數和時,它們會被映射成相同的數值。

2.2 離散隨機變數與 PMF

離散隨機變數(discrete random variable)的可能取值有限或可數,例如骰子點數、一分鐘內的伺服器請求數、一批產品中的瑕疵品數量,或某段時間內的故障次數。

離散隨機變數可以直接為每一個可能取值指定機率,這個函數稱為機率質量函數(probability mass function, PMF):

pX(x)=P(X=x).p_X(x)=P(X=x).

例如 XX 表示兩顆公平骰子的點數和,則 P(X=2)=1/36P(X=2)=1/36,而 P(X=7)=6/36=1/6P(X=7)=6/36=1/6。因為同一個 XX 值可能由很多不同樣本點產生,所以計算 PMF 時,需要把所有能映射到該值的基本結果機率加起來:

P(X=x)=∑ω:X(ω)=xP({ω}).P(X=x)=\sum_{\omega:X(\omega)=x}P(\{\omega\}).

對離散型隨機變數而言,一個具體取值本身可以具有正機率,例如 P(X=7)=1/6>0P(X=7)=1/6>0,而所有可能值的機率總和必須等於 1:

∑xpX(x)=1.\sum_x p_X(x)=1.

連續隨機變數的情況則不同。

2.3 連續隨機變數:為什麼單點機率為 0

考慮一個人的身高 XX。直覺上,一個人最後當然會有某一個具體身高,例如測量得到 X=170.2X=170.2 cm。因此很容易產生一個疑問:如果最後觀察到的身高明明是一個具體數值,為什麼連續隨機變數卻滿足 P(X=170.2)=0P(X=170.2)=0?

關鍵在於區分兩件事:一次實驗最後確實會產生某個值,以及事先指定某一個精確實數,它所對應的機率是多少。

如果把身高理想化為連續量,那麼在 170 cm 與 171 cm 之間,並不是只有有限個可能值,而是存在無限多個實數。更重要的是,無論選擇兩個多麼接近的不同實數,它們之間仍然存在無限多個實數。因此,連續分佈不能像離散分佈那樣,把總機率 1 分配給一個個孤立的點。

對具有機率密度函數的連續型隨機變數,

P(X=x)=0P(X=x)=0

對任意單一的 xx 都成立。但這裡需要特別注意:機率為 0 不等於事件不可能發生。 一次實驗最後仍然一定會得到某個具體實數,只是如果在實驗之前事先指定一個具有無限精度的實數,例如 170.234817291…170.234817291\dots,那麼隨機變數恰好等於這個精確數值的機率為 0。

可以從不斷縮小區間來理解這件事。例如先問

P(170≤X≤171),P(170\le X\le171),

這是一個具有寬度的區間,因此可能具有正機率。再把範圍縮小成 P(170.2≤X≤170.3)P(170.2\le X\le170.3),再縮小成 P(170.20≤X≤170.21)P(170.20\le X\le170.21)。區間寬度愈來愈小,其中包含的機率通常也會愈來愈小。當區間寬度趨近於 0,只剩下一個點時,其機率也趨近於 0。

現實中的測量還存在另一個重要因素:測量精度有限。例如身高計顯示 170.2170.2 cm,並不代表我們知道真實身高恰好是數學上的 170.200000…170.200000\dots cm。如果儀器四捨五入到 0.10.1 cm,那麼讀數 170.2170.2 cm 實際上可能代表真實身高位於大約

170.15≤X<170.25170.15\le X<170.25

的區間內。所以現實世界看到的一個「具體測量值」,通常已經隱含了一個由有限測量精度形成的小區間。

2.4 PDF:密度不是機率

連續型隨機變數通常使用機率密度函數(probability density function, PDF) fX(x)f_X(x) 描述其分佈。這裡最重要的一點是

fX(x)≠P(X=x).f_X(x)\neq P(X=x).

PDF 的值本身不是「取到 xx 的機率」,而是表示 xx 附近的機率有多密集。真正的機率需要對一段區間積分:

P(a≤X≤b)=∫abfX(x) dx.P(a\le X\le b)=\int_a^b f_X(x)\,dx.

如果 Δx\Delta x 很小,那麼一個很窄區間中的機率可以近似寫成

P(x≤X≤x+Δx)≈fX(x)Δx.P(x\le X\le x+\Delta x)\approx f_X(x)\Delta x.

因此,可以把 fX(x)f_X(x) 理解成「單位長度上的機率密度」。密度越高,代表這附近的機率越集中;區間越寬,累積起來的機率通常也越大。

假設現在想計算 P(a≤X≤b)P(a\le X\le b),可以先把 [a,b][a,b] 切成很多很窄的小區間,每一個小區間寬度都是 Δx\Delta x。第 ii 個小區間中的機率大約是 fX(xi)Δxf_X(x_i)\Delta x,因此整個區間的機率可以近似成

∑ifX(xi)Δx.\sum_i f_X(x_i)\Delta x.

這其實就是一個 Riemann sum。當區間切得越來越細、Δx→0\Delta x\rightarrow0 時,這個求和的極限就變成積分:

P(a≤X≤b)=lim⁡Δx→0∑ifX(xi)Δx=∫abfX(x) dx.P(a\le X\le b) = \lim_{\Delta x\to0}\sum_i f_X(x_i)\Delta x = \int_a^b f_X(x)\,dx.

因此,PDF 圖形下面的面積才是機率。

這也能直接解釋為什麼單點機率為 0。如果區間退化成一個點 [x,x][x,x],那麼區間寬度就是 0,因此

P(X=x)=∫xxfX(u) du=0.P(X=x)=\int_x^x f_X(u)\,du=0.

所以對具有 PDF 的連續型隨機變數,

P(a<X<b)=P(a≤X<b)=P(a<X≤b)=P(a≤X≤b).P(a<X<b) = P(a\le X<b) = P(a<X\le b) = P(a\le X\le b).

是否包含端點並不會改變機率,因為每一個端點本身的機率都是 0。這與離散隨機變數非常不同。例如骰子點數滿足 P(X=3)=1/6P(X=3)=1/6,因此是否包含某個端點可能直接改變事件機率。

另一個常見誤解是認為 PDF 的值也必須介於 0 和 1。實際上,PDF 本身完全可以大於 1。假設

fX(x)={2,0≤x≤0.5,0,otherwise,f_X(x)= \begin{cases} 2,&0\le x\le0.5,\\ 0,&\text{otherwise}, \end{cases}

雖然密度值為 2,但總機率仍然是

∫00.52 dx=1.\int_0^{0.5}2\,dx=1.

因此,真正受到 [0,1][0,1] 限制的是積分得到的機率,而不是密度值本身。PDF 的兩個基本要求是

fX(x)≥0f_X(x)\ge0

以及

∫−∞∞fX(x) dx=1.\int_{-\infty}^{\infty}f_X(x)\,dx=1.

2.5 CDF:統一離散與連續隨機變數

PMF 適合離散型隨機變數,PDF 適合具有機率密度的連續型隨機變數,但有一個函數可以對任意實值隨機變數使用,這就是累積分佈函數(cumulative distribution function, CDF):

FX(x)=P(X≤x).F_X(x)=P(X\le x).

CDF 表示隨機變數落在 xx 左側的累積機率。它一定滿足 0≤FX(x)≤10\le F_X(x)\le1,而且是單調不減函數:

x1<x2⇒FX(x1)≤FX(x2).x_1<x_2\quad\Rightarrow\quad F_X(x_1)\le F_X(x_2).

此外,

lim⁡x→−∞FX(x)=0,lim⁡x→∞FX(x)=1.\lim_{x\to-\infty}F_X(x)=0, \qquad \lim_{x\to\infty}F_X(x)=1.

對離散型隨機變數而言,CDF 通常呈階梯狀。某一個點 xx 如果具有正機率,那麼 CDF 在 xx 處就會向上跳躍,跳躍高度正好是該點的機率:

P(X=x)=FX(x)−FX(x−).P(X=x)=F_X(x)-F_X(x^-).

對具有 PDF 的連續型隨機變數,

FX(x)=∫−∞xfX(u) du.F_X(x)=\int_{-\infty}^{x}f_X(u)\,du.

也就是把 xx 左側所有機率密度累積起來。如果 FXF_X 可以微分,則反過來可以得到

fX(x)=FX′(x).f_X(x)=F_X'(x).

因此可以把 PMF、PDF 與 CDF 的角色整理成:

函數直覺
PMF pX(x)p_X(x)離散點 xx 本身有多少機率
PDF fX(x)f_X(x)xx 附近的機率有多密集
CDF FX(x)F_X(x)到 xx 為止已累積多少機率

離散型隨機變數的機率通常透過加總得到:

P(X∈A)=∑x∈ApX(x).P(X\in A)=\sum_{x\in A}p_X(x).

具有 PDF 的連續型隨機變數則透過積分得到:

P(X∈A)=∫AfX(x) dx.P(X\in A)=\int_A f_X(x)\,dx.

形式雖然不同,但它們本質上都在描述同一件事:機率如何分佈在隨機變數的不同可能取值上。

3. 條件機率、獨立性與 Bayes 定理

3.1 條件機率縮小樣本範圍

如果已經知道事件 BB 發生,那麼事件 AA 的機率可能與原來不同。條件機率定義為

P(A∣B)=P(A∩B)P(B),P(A\mid B)=\frac{P(A\cap B)}{P(B)},

其中 P(B)>0P(B)>0。它可以理解成:已經知道結果落在 BB 中,因此只在 BB 這個新的範圍內重新計算 AA 所占的比例。

以兩顆公平骰子為例,令 AA 表示「點數和為 8」,令 BB 表示「第一顆骰子為偶數」。事件 BB 中共有 18 個等可能結果,同時符合 AA 與 BB 的結果為 (2,6),(4,4),(6,2)(2,6),(4,4),(6,2),因此

P(A∣B)=318=16.P(A\mid B)=\frac3{18}=\frac16.

如果不知道第一顆骰子的奇偶性,和為 8 的結果共有 (2,6),(3,5),(4,4),(5,3),(6,2)(2,6),(3,5),(4,4),(5,3),(6,2),所以

P(A)=536.P(A)=\frac5{36}.

因此 P(A∣B)≠P(A)P(A\mid B)\neq P(A)。新的資訊改變了我們考慮的結果範圍,因此也改變了事件機率。

從條件機率的定義可以得到乘法公式

P(A∩B)=P(A∣B)P(B).P(A\cap B)=P(A\mid B)P(B).

對多個事件而言,可以繼續分解:

P(A1,…,An)=P(A1)P(A2∣A1)P(A3∣A1,A2)⋯P(An∣A1,…,An−1).P(A_1,\dots,A_n) = P(A_1) P(A_2\mid A_1) P(A_3\mid A_1,A_2) \cdots P(A_n\mid A_1,\dots,A_{n-1}).

這就是機率論中的 chain rule。自迴歸語言模型也使用相同的機率分解方式。對 token 序列 x1,x2,…,xnx_1,x_2,\dots,x_n,

P(x1,…,xn)=∏t=1nP(xt∣x1,…,xt−1).P(x_1,\dots,x_n) = \prod_{t=1}^{n} P(x_t\mid x_1,\dots,x_{t-1}).

因此語言模型每一步雖然只是在預測下一個 token,但整個序列的聯合機率可以透過條件機率連乘得到。

3.2 獨立性是聯合分佈的條件

如果事件 AA 與 BB 獨立,則滿足

P(A∩B)=P(A)P(B).P(A\cap B)=P(A)P(B).

如果 P(B)>0P(B)>0,那麼等價地有

P(A∣B)=P(A),P(A\mid B)=P(A),

也就是得知 BB 發生不會改變我們對 AA 的機率判斷。

需要注意,互斥(mutually exclusive)與獨立(independent)完全不是同一回事。如果 AA 與 BB 互斥,則 A∩B=∅A\cap B=\varnothing,所以 P(A∩B)=0P(A\cap B)=0。但如果 P(A)>0P(A)>0 且 P(B)>0P(B)>0,那麼 P(A)P(B)>0P(A)P(B)>0,因此兩個具有正機率的互斥事件一定不獨立。原因也很直觀:如果知道 AA 已經發生,那麼 BB 就一定不可能發生,因此 AA 顯然提供了關於 BB 的資訊。

獨立性不能只靠直覺宣告,它通常需要來自實驗設計、抽樣機制、生成過程,或明確的聯合機率分佈假設。

如果有多個事件 A1,…,AnA_1,\dots,A_n,還需要區分兩兩獨立(pairwise independent)與相互獨立(mutually independent)。兩兩獨立只要求每一對事件滿足 P(Ai∩Aj)=P(Ai)P(Aj)P(A_i\cap A_j)=P(A_i)P(A_j);相互獨立則要求任意事件子集合的聯合機率都可以分解。相互獨立一定推出兩兩獨立,但兩兩獨立一般不能推出相互獨立。

3.3 全機率公式與 Bayes 定理

假設事件 B1,…,BmB_1,\dots,B_m 兩兩互斥,而且

⋃i=1mBi=Ω.\bigcup_{i=1}^{m}B_i=\Omega.

也就是它們把整個樣本空間切分成互不重疊的幾種情況。那麼事件 AA 可以按不同來源拆開,因此

P(A)=∑iP(A∣Bi)P(Bi).P(A)=\sum_iP(A\mid B_i)P(B_i).

這稱為全機率公式(law of total probability)。

Bayes 定理則反轉條件機率的方向:

P(Bj∣A)=P(A∣Bj)P(Bj)P(A)=P(A∣Bj)P(Bj)∑iP(A∣Bi)P(Bi).P(B_j\mid A) = \frac{P(A\mid B_j)P(B_j)}{P(A)} = \frac{P(A\mid B_j)P(B_j)} {\sum_iP(A\mid B_i)P(B_i)}.

其中 P(Bj)P(B_j) 可以理解為先驗機率(prior),P(A∣Bj)P(A\mid B_j) 是觀察到資料 AA 的似然(likelihood),而 P(Bj∣A)P(B_j\mid A) 則是觀察到新資訊後更新得到的後驗機率(posterior)。

假設某疾病的盛行率為 1%,即 P(D)=0.01P(D)=0.01;某個檢測對患者的陽性率為 95%,即 P(+∣D)=0.95P(+\mid D)=0.95;對非患者的偽陽性率為 5%,即 P(+∣Dc)=0.05P(+\mid D^c)=0.05。那麼陽性的總機率為

P(+)=0.95×0.01+0.05×0.99=0.059.P(+) = 0.95\times0.01 + 0.05\times0.99 = 0.059.

利用 Bayes 定理,

P(D∣+)=0.95×0.010.059≈0.161.P(D\mid +) = \frac{0.95\times0.01}{0.059} \approx0.161.

也就是約 16.1%。

雖然檢測對患者的陽性率高達 95%,但一個人檢測陽性之後真正患病的機率仍然只有約 16.1%。原因是疾病本身非常罕見,非患者的人數遠多於患者,因此即使偽陽性率只有 5%,大量非患者仍然會產生相當多的陽性結果。

這也是 Bayes 定理中特別重要的基準率(base rate)問題。必須區分 P(+∣D)P(+\mid D) 和 P(D∣+)P(D\mid +):前者表示「已知患病,檢測為陽性的機率」,後者表示「已知檢測為陽性,真正患病的機率」。只看到 P(+∣D)=95P(+\mid D)=95% 就認為 P(D∣+)=95P(D\mid +)=95%,是一個很典型的條件方向錯置。

4. 小結:機率空間是後續主題共用的語言

一個完整的機率模型可以寫成 (Ω,F,P)(\Omega,\mathcal F,P)。其中 Ω\Omega 描述所有可能的基本結果,F\mathcal F 描述哪些結果集合可以作為事件,而 PP 為這些事件指定機率。在此基礎上,隨機變數 X:Ω→RX:\Omega\rightarrow\mathbb R 再把完整的隨機結果映射成我們真正想分析的數值。

隨機試驗

樣本空間 Ω

樣本點 ω

事件 A ⊆ Ω

機率 P(A)

隨機變數 X(ω)

離散隨機變數

連續隨機變數

PMF p(x)

PDF f(x)

CDF F(x)

隨機試驗

樣本空間 Ω

樣本點 ω

事件 A ⊆ Ω

機率 P(A)

隨機變數 X(ω)

離散隨機變數

連續隨機變數

PMF p(x)

PDF f(x)

CDF F(x)

離散型隨機變數使用 PMF 描述一個個取值上的機率:

pX(x)=P(X=x).p_X(x)=P(X=x).

具有機率密度的連續型隨機變數則使用 PDF 描述機率在不同位置附近有多集中:

P(a≤X≤b)=∫abfX(x) dx.P(a\le X\le b)=\int_a^b f_X(x)\,dx.

對具有 PDF 的連續型隨機變數而言,P(X=x)=0P(X=x)=0,但這不代表某個具體值不可能被觀察到。它只表示單一數學點沒有寬度,因此不能包含正的機率面積。CDF

FX(x)=P(X≤x)F_X(x)=P(X\le x)

則進一步把離散與連續分佈放進同一套語言中。

條件機率描述得到新資訊之後如何重新計算機率;獨立性描述一個事件是否會改變另一個事件的機率;全機率公式與 Bayes 定理則提供了在不同條件與資訊之間轉換的方法。理解這套語言之後,後面的期望值、變異數、聯合分佈、統計推斷與隨機過程,其實都只是建立在這些概念之上的延伸。

讀者可以接著閱讀隨機過程 1:什麼是隨機過程,理解如何把單一隨機變數擴展成隨時間變化的隨機變數族;對計數型隨機現象,也可以參考隨機過程 9:泊松過程,進一步理解事件計數、Poisson 分佈與連續時間隨機過程之間的關係。