動差生成函數 (上)

本文的閱讀等級:中級

機率 (概率) 學的研究始於隨機實驗。考慮投擲一顆六面骰子,樣本空間是所有可能出現點數形成的集合。為了分析機率模型,我們定義隨機變數 X 為一個從樣本空間至實數系的函數。(本文沿用機率學的慣用符號,隨機變數以大寫斜體英文字母表示,矩陣則以大寫粗體英文字母表示。) 譬如,若骰子擲出 i 點,則設 X=i,因此 X 的值域為 \{1,2,3,4,5,6\}。如果隨機變數 X 的值域為一有限集 \{x_1,x_2,\ldots,x_n\} 或無限可數集 \{x_1,x_2,\ldots\} (包含無窮多個元素的集合,其中每一個元素唯一對應一個自然數),則 X 稱為離散型隨機變數。如果隨機變數 X 的值域為全部實數或由一部分區間組成,即 \{x\vert a\le x\le b \},其中 -\infty<a<b<\infty,則 X 稱為連續型隨機變數。本文討論內容限定於離散型隨機變數 (下篇將介紹連續型隨機變數的動差生成函數)。在機率學中,離散型隨機變數 X 的機率分布通常以兩種方式表示:

  1. 機率質量函數 (probability mass function) p(x_i)=P(X=x_i),即 X 等於 x_i 的機率。在不造成混淆的情況下,我們經常稱機率質量函數為機率分布。
  2. 累積分布函數 (cumulative distribution function) F(x_i)=P(X\le x_i),即 X 不大於 x_i 的機率。顯然,F(x_i)=\sum_{x_j\le x_i}p(x_j)

本文將介紹第三種機率分布的描述方式,稱為動差生成函數或動差母函數 (moment generating function)。

 
對於一個離散型隨機變數 X,值域為有限或無限可數集 \{x_1,x_2,\ldots\},我們用期望值 \mu 來測量機率分布 p 的集中趨勢,並用變異數 (或稱變異量數,方差) \sigma^2 來測量機率分布的離散趨勢:

\displaystyle\begin{aligned} \mu&=E(X)=\sum_{i=1}^\infty x_ip(x_i)\\ \sigma^2&=E(X-\mu)^2=\sum_{i=1}^\infty(x_i-\mu)^2p(x_i),\end{aligned}

其中 E 是期望算子。注意,E 是隨機變數的一個線性算子。我們以一個例子解釋動差生成函數背後的數學原因。假設有兩顆灌了鉛的骰子,隨機變數 XY 的機率分布分別如下所示:

\displaystyle p_X=\left(\begin{array}{cccccc} 1&2&3&4&5&6\\ \frac{1}{6}&0&\frac{1}{3}&\frac{1}{6}&\frac{1}{3}&0 \end{array}\right),~~~p_Y=\left(\begin{array}{cccccc} 1&2&3&4&5&6\\ 0&\frac{1}{3}&\frac{1}{6}&\frac{1}{3}&0&\frac{1}{6} \end{array}\right)

雖然 XY 的機率分布不同,但期望值和變異數相同:\mu_X=\mu_Y=7/2\sigma_X^2=\sigma_Y^2=23/12。自然地,我們會問:如果已知一個離散型隨機變數 X 的期望值 \mu 和變異數 \sigma^2,還必須知道甚麼訊息才能決定機率分布 p?因為 E 是線性算子,根據變異數定義,

\displaystyle\begin{aligned} \sigma^2&=E(X-\mu)^2=E(X^2-2X\mu+\mu^2)\\ &=E(X^2)-2E(X)\mu+\mu^2=E(X^2)-(E(X))^2.\end{aligned}

上式指出 E(X)E(X^2) 決定了 \mu\sigma^2,這個信號指引我們前進的方向。設隨機變數 X 的值域為 \{x_1,x_2,\ldots\}X^k 的期望值稱為 Xk 次動差 (moment,或稱原點動差),定義如下:

\displaystyle \mu_k=E\left(X^k\right)=\sum_{i=1}^\infty (x_i)^kp(x_i)

上例中,E(X^3)=123/2E(Y^3)=129/2。如果我們知道所有的動差 \mu_kk=1,2,\ldots,這些訊息能夠完全決定 X 的機率分布嗎?至少當 X 的值域是有限集時,答案是肯定的 (稍後將證明)。

 
美國賓州大學教授維爾夫 (Herbert Wilf) 說[1]:「生成函數是一列用來展示一串數字的掛衣架。」動差生成函數是動差的一種簿記機制,它將動差 \mu_kk=0,1,2,\ldots,收集起來並以無窮級數的形式表示如下:

\displaystyle m(t)=E\left(e^{Xt}\right)=E\left(\sum_{k=0}^{\infty}\frac{X^kt^k}{k!}\right)=\sum_{k=0}^{\infty}\frac{\mu_kt^k}{k!}=\sum_{i=1}^\infty e^{x_it}p(x_i)

其中指數函數 e^{Xt} 以泰勒級數展開,最後一個表達式由 e^{Xt} 的期望值定義而來。機率質量函數 p(x) 和累積分布函數 F(x) 都定義於隨機變數 X 的值域,其函數值直接告訴我們關於機率分布的訊息。然而,動差生成函數本身並不是一個從某個定義域映射至某個值域的函數,取名「函數」僅是出於歷史原因。動差生成函數 m(t) 的變數 t 沒有特別的意義,真正有價值的資訊是 t^k 的係數 \mu_k/k!,因此較準確的名稱是「動差生成級數」。如何從維爾夫指稱的掛衣架取下某一個數字?也就是說,如何從 m(t) 取出 \mu_k?很簡單,求 m(t)0k 次導數即可。因為

\displaystyle m^{(k)}(t)=\sum_{i=1}^\infty (x_i)^ke^{x_it}p(x_i)=E\left(X^ke^{Xt}\right)

立得 \displaystyle m^{(k)}(0)=E(X^k)=\mu_k

 
從外表很難想像一個隨機變數的動差生成函數是機率分布的另一種表達。下面我們證明若離散型隨機變數的值域為一有限集,則機率分布完全由動差決定。在此之前,我們必須先確定動差生成函數具有收斂性。

 
收斂性定理:令 X 為一離散型隨機變數,其值域為一有限集 \{x_1,x_2,\ldots,x_n\}。對於任一 t,動差生成級數

\displaystyle m(t)=\sum_{k=0}^\infty\frac{\mu_kt^k}{k!}

收斂至一光滑函數 (smooth function),也就是無窮可導的函數。

證明於下。考慮動差的定義式

\displaystyle \mu_k=\sum_{i=1}^n(x_i)^kp(x_i)

\vert x_q\vert=\max_{1\le i\le n}\vert x_i\vert。上式取絕對值,

\displaystyle \vert\mu_k\vert\le\sum_{i=1}^n\vert x_i\vert^kp(x_i)\le \vert x_q\vert^k\sum_{i=1}^np(x_i)=\vert x_q\vert^k

最後一個等式使用了歸一性 \sum_{i=1}^np(x_i)=1。對於任一正整數 r

\displaystyle \sum_{k=0}^r\left|\frac{\mu_kt^k}{k!}\right|\le\sum_{k=0}^r\frac{\vert x_qt\vert^k}{k!}\le \sum_{k=0}^\infty\frac{\vert x_qt\vert^k}{k!}=e^{\vert x_qt\vert}

因此證明動差生成級數對於任一 t 總是收斂 (因為指數函數總是收斂)。動差生成級數是一無窮冪級數,因此它是一個光滑函數。

 
唯一性定理:令 X 為一離散型隨機變數,其值域為一有限集 \{x_1,x_2,\ldots,x_n\}。隨機變數 X 的機率分布為 p 由動差生成函數 m(t) 唯一決定,反之亦然。

我們知道 p 決定 m(t),如下:

\displaystyle m(t)=\sum_{j=1}^ne^{x_jt}p(x_j)

y_j=p(x_j)j=1,\ldots,n,並令 t_i=i-1b_i=m(t_i)i=1,\ldots,n。根據收斂性定理,每一 b_i 必定存在。將 t_i 代入上式,可得

\displaystyle b_i=\sum_{j=1}^ne^{x_jt_i}y_j,~~~i=1,\ldots,n

或以矩陣形式表示為 \mathbf{A}\mathbf{y}=\mathbf{b},其中 n\times n 階矩陣 \mathbf{A}=[a_{ij}] 的各元是 a_{ij}=e^{x_jt_i}。寫出

\displaystyle \mathbf{A}=\begin{bmatrix} 1&1&\cdots&1\\ e^{x_1}&e^{x_2}&\cdots&e^{x_n}\\ e^{2x_1}&e^{2x_2}&\cdots&e^{2x_n}\\ \vdots&\vdots&\ddots&\vdots\\ e^{(n-1)x_1}&e^{(n-1)x_2}&\cdots&e^{(n-1)x_n} \end{bmatrix}

這種特殊形態矩陣稱為 Vandermonde 矩陣。因為所有的 e^{x_j} 相異,可以證明 \mathbf{A} 是可逆矩陣 (見“特殊矩陣 (8):Vandermonde 矩陣”),即得 \mathbf{y}=\mathbf{A}^{-1}\mathbf{b},故機率分布 p 由動差生成函數 m(t) 唯一決定。

 
動差生成函數不具備內在含義,它的主要用途在於簡化計算。下面舉例說明如何從機率分布求得動差生成函數,並由一次和二次動差推導期望值和變異數。

 
例一:二項 (binomial) 分布

假設隨機變數 X 的值域為 \{0,1,2,\ldots,n\},且 p_X(k)=\binom{n}{k}p^{k}q^{n-k}k=0,1,\ldots,n,其中 q=1-p。使用二項式定理 (見二項式係數公式),

\displaystyle m(t)=\sum_{k=0}^ne^{kt}\binom{n}{k}p^{k}q^{n-k}=\sum_{k=0}^n\binom{n}{k}(pe^t)^kq^{n-k}=\left(pe^t+q\right)^n

m(t) 可得

\displaystyle\begin{aligned} \mu_1&=m'(0)=\left.n\left(pe^t+q\right)^{n-1}pe^t\right|_{t=0}=np\\ \mu_2&=m''(0)=\left.n(n-1)\left(pe^t+q\right)^{n-2}(pe^t)^2+n\left(pe^t+q\right)^{n-1}pe^t\right|_{t=0}=n(n-1)p^2+np ,\end{aligned}

所以 \mu=\mu_1=np\sigma^2=\mu_2-\mu_1^2=np(1-p)

 
例二:卜瓦松 (Poisson) 分布

假設隨機變數 X 的值域為 \{0,1,2,\ldots\},且 p_X(k)=e^{-\lambda}\lambda^k/k!k=0,1,2,\ldots。根據定義,

\displaystyle m(t)=\sum_{k=0}^\infty e^{kt}\frac{e^{-\lambda}\lambda^k}{k!}=e^{-\lambda}\sum_{k=0}^\infty \frac{(\lambda e^t)^k}{k!}=e^{-\lambda}e^{\lambda e^t}=e^{\lambda(e^t-1)}

m(t) 可得

\displaystyle\begin{aligned} \mu_1&=m'(0)=\left.e^{\lambda(e^t-1)}\lambda e^t\right|_{t=0}=\lambda\\ \mu_2&=m''(0)=\left.e^{\lambda(e^t-1)}(\lambda^2e^{2t}+\lambda e^t)\right|_{t=0}=\lambda^2+\lambda ,\end{aligned}

所以 \mu=\mu_1=\lambda\sigma^2=\mu_2-\mu_1^2=\lambda。這個例子展示了動差生成函數的價值。如果我們使用定義推導卜瓦松分布的變異數,中間計算過程將比上述方法複雜許多。

 
關於其他類型的機率分布的動差生成函數請參考維基百科[2]。下面說明兩個實用的動差生成函數性質。

 
性質一:給定一隨機變數 X,若 Y=aX+b,則 m_Y(t)=e^{bt}m_X(at)

t 視為常數,

\displaystyle\begin{aligned} m_Y(t)&=E\left(e^{Yt}\right)=E\left(e^{(aX+b)t}\right)\\ &=e^{bt}E\left(e^{X(at)}\right)=e^{bt}m_X(at).\end{aligned}

 
性質二:若 XY 是兩個獨立隨機變數,則 Z=X+Y 的動差生成函數為 m_Z(t)=m_X(t)m_Y(t)

XY 是獨立的隨機變數,則 E(XY)=E(X)E(Y)。利用獨立隨機變數的性質,

\displaystyle\begin{aligned} m_Z(t)&=E\left(e^{(X+Y)t}\right)=E\left(e^{Xt}e^{Yt}\right)\\ &=E\left(e^{Xt}\right)E\left(e^{Yt}\right)=m_X(t)m_Y(t).\end{aligned}

 
性質二的用途在於計算多個獨立隨機變數之和的機率分布,見下例。

 
例三:二項分布之和

假設 XY 為兩個獨立隨機變數,值域為 \{0,1,2,\ldots,n\},且 p_X(k)=p_Y(k)=\binom{n}{k}p^{k}q^{n-k}k=0,1,\ldots,n,其中 q=1-p。若 Z=X+Y,則值域為 \{0,1,2,\ldots,2n\}。使用例一結果和性質二,

\displaystyle m_Z(t)=m_X(t)m_Y(t)=\left(pe^t+q\right)^{2n}

Z=X+Y 的機率分布為

\displaystyle p_Z(t)=\binom{2n}{k}p^{k}q^{2n-k},~~~k=0,1,2,\ldots,2n

 
例四:卜瓦松分布之和

假設 XY 為兩個獨立隨機變數,值域為 \{0,1,2,\ldots\},且 p_X(k)=e^{-\lambda_1}\lambda_1^k/k!p_Y(k)=e^{-\lambda_2}\lambda_2^k/k!k=0,1,2,\ldots。若 Z=X+Y,則值域為 \{0,1,2,\ldots\},使用例二結果和性質二,

\displaystyle m_Z(t)=m_X(t)m_Y(t)=e^{\lambda_1(e^t-1)}e^{\lambda_2(e^t-1)}=e^{(\lambda_1+\lambda_2)(e^t-1)}

Z=X+Y 的機率分布為

\displaystyle p_Z(t)=\frac{e^{-(\lambda_1+\lambda_2)}(\lambda_1+\lambda_2)^k}{k!},~~~k=0,1,2,\ldots

 
最後我們總結離散型隨機變數的動差生成函數的兩個主要功用:

  1. 提供一個計算動差的快速方法;
  2. 提供一個推導多個獨立隨機變數之和的機率分布的簡易方法。

此外,離散型隨機變數的生成函數是解析分支過程 (branching process) 的一個重要工具,這個主題將獨立出來另文討論。下文將介紹連續型隨機變數的動差生成函數及其應用。

 
參考來源:
[1] 維基百科:Generating Function 原文是 “A generating function is a clothesline on which we hang up a sequence of numbers for display.”
[2] 維基百科:Moment Generating Function

繼續閱讀:
This entry was posted in 機率統計 and tagged , , , , , , , . Bookmark the permalink.

6 Responses to 動差生成函數 (上)

  1. Anderson says:

    写得好!之前学线性代数就来过这里。如有可能希望周老师增加些统计学的内容

  2. ChiChih Wang says:

    寫得真好欸
    很詳細,也提供應用和證明,真是好

  3. Dewy Yeng says:

    老師你好:
    請問動差生成函數的收斂性在隨機變數X的值域是無窮集時也成立嗎?
    因為文中的收斂性證明僅證明在有限集,而文末將動差生成函數應用在無窮集(卜瓦松分布)上
    感謝

  4. 陳宗為 says:

    不好意思,我有一篇文章想引用您這份動差生成含數(上)的內容,作者名稱,您願意用周老師,還是ccjou呢? 亦或兩個都放上? 因為不知道您的本名,所以這樣冒昧的問您。

Leave a comment