我覺得以後無論是想從事演算法崗還是資料探勘/分析崗的同學,除了編碼能力,統計學也是基礎,把統計學學好,將來在工作崗位中一定能夠受益匪淺。

這幾天開始重溫統計學,相比較於大學時候學的機率論與數理統計(大部分都忘得差不多了),現在重新學習,仍然是受益良多。這幾天把我所學的知識,儘量利用通俗易懂的方式做一個總結和歸納,以方便自己日後的複習以及讀者們的觀看。

貝葉斯學派和頻率學派

頻率學派的觀點就是根據隨即重複的事件來考察機率,假設有一個樣本分佈

F(X,\theta)

,頻率學派認為這個分佈本身就是確定的,只不過

\theta

的值未知,需要從實際的樣本分佈中推斷出來。一個典型的觀點就是事件發生的機率是基於已知樣本的發生頻率。

貝葉斯學派的觀點是一個事件在發生之前,人們應該對該事件本身就有一個認知,並且認為

F(X,\theta)

中的

\theta

並不是確定的,而是一個隨機變數,並且服從於某個已知的分佈

H(\theta)

,這就是

先驗分佈,

在得到了更多的樣本X之後,會基於已知樣本對先驗分佈有更新的認識,此時就得到了

後驗分佈

。我們知道貝葉斯公式:

p(\theta|X)=\frac{p(X|\theta)p(\theta)}{p(X)}

p(\theta|X)

就是我們想得到的

\theta

的後驗機率,而

p(\theta)

是事先就認知的先驗機率。

p(X|\theta)

被看作是關於引數向量

\theta

的似然函式。表達的是在不同的

\theta

引數下,觀測資料出現的可能性大小。

似然函式並不是引數

\theta

的機率分佈。

頻率學派認為貝葉斯學派的先驗分佈

太過於依賴主觀認識

,因為主觀機率因人而異不存在客觀事實性。因此必須透過大量的重複實驗樣本來解釋機率本身。而貝葉斯學派認為並不是所有的事件都可以做出大量重複性的試驗,

比如地震預測

等。如果先驗分佈選取的不恰當,那麼很容易最後的結果誤差會很大。

比如某次投硬幣試驗中,只投了3次,並且3次都是正面,那麼如果在少樣本的情況下,基於頻率學派的思想,那麼會預測到未來的投擲都會是正面(完全基於樣本事實)。如果是基於貝葉斯的思想,任何有合理的先驗都不會得到如此極端的結論。

1。 伯努利分佈

考慮一個二元隨機變數

X\in\{0,1\}

,假設

x=1

的機率記為

\mu

,那麼

p(x=1|\mu)=\mu

p(x=0|\mu)=1-\mu

該分佈機率公式可以寫為:

B(x|\mu)=\mu^x(1-\mu)^{1-x}

期望:

E(x)=\mu

;方差:

var(x)=\mu(1-\mu)

上文提到過,

p(X|\mu)

是關於引數

\mu

的似然函式,那麼可以根據已知的樣本集,構造出關於

\mu

的似然函式:(假設樣本獨立同分布,因此似然函式為每個樣本發生機率相乘)

p(X|\mu)=\prod_{n=1}^{N}p(x_n|\mu)=\prod_{n=1}^{N}\mu^{x_n}(1-\mu)^{(1-x_n)}

在求解最大似然的過程中,因為每個樣本的機率都是小於1的,因此如果樣本數很大的情況下,每個樣本的機率值相乘可能會造成數值下溢,因此通常的做法是對似然函式取對數:

ln\ p(X|\mu)=\sum_{n=1}^{N}{ln\ p(x_n|\mu)}=\sum_{n=1}^{N}\{x_nln\ \mu+(1-x_n)ln\ (1-\mu)\}

在計算極大似然估計的時候,我們會求關於

ln\ p(X|\mu)

的導數零點,便可得到最大似然估計值

\mu_{ML}=\frac{1}{N}\sum_{n=1}^{N}{x_n}

,可以得到,這裡對

\mu

的估值就是

樣本均值

2。 二項分佈

在給定資料集規模

N

的條件下,對於上面分佈

X\in\{0,1\}

,觀察

x=1

出現的

數量m的機率分佈

,就被稱為二項分佈。這裡和伯努利分佈區別的是,每一次試驗所遵循分佈為伯努利分佈,而二項分佈是指,經過

N

次重複性試驗,對於某樣本出現的次數服從二項分佈。

X\sim B(N,\mu)

Bin(m|N,\mu)=\binom{N}{m}\mu^m(1-\mu)^{N-m}

,其中

\binom{N}{m}=\frac{N!}{(N-m)!m!}

之前解釋了伯努利分佈和二項分佈的關係,那麼這裡對於二項分佈的期望與方差:

E(m)=\sum_{m=0}^{N}{m\ Bin(m|N,\mu)}=N\mu

var(m)=\sum_{m=0}^{N}{(m=E(m))^2}Bin(m|N,\mu)=N\mu(1-\mu)

3。 Beta分佈

我們回想之前的伯努利分佈以及二項分佈的特性,舉一個極端的例子:

做一次拋硬幣的試驗:連續拋3次(

少樣本的情況下

),且3次都是正面朝上,記試驗次數為N,正面朝上的次數為m,此時

N=m

。伯努利分佈中對於引數

\mu

(正面朝上的機率)的估計來自於樣本均值,此時為1,那麼得出

\mu=1

,那麼意味著後面每次拋硬幣都會是正面朝上,這顯然是不合理的。二項分佈中預測試驗N次情況下,正面朝上次數m的機率。由上文中對於二項分佈期望與伯努利分佈期望關係再結合這個試驗可以得出二項分佈的期望就是試驗次數,這顯然也是不合理。

頻率學派的思想在某事件發生次數很有限的情況下,對機率的預測侷限性很大。這個時候貝葉斯方法就會顯現出優勢所在。

從上面的例子可以得出,頻率學派的思想在小規模資料集中不可避免的會出現嚴重的過擬合現象。對於這種情況下,我們就要引入貝葉斯學派的理論。

根據貝葉斯的思想,我們需要一個關於引數

\mu

的先驗機率分佈

p(\mu)

共軛性:選擇一個正比於

\mu

1-\mu

的冪指數的先驗機率分佈

,那麼後驗機率分佈就會有著與先驗分佈相同函式形式。

首先這裡先解釋一下為什麼會使用Beta分佈來作為先驗機率分佈:

(1)首先Beta分佈的機率公式是符合之前所說的共軛性的:

Beta(\mu|a,b)=\frac{\Gamma(a+b)}{\Gamma(a)(b)}\mu^{a-1}(1-\mu)^{b-1}

期望:

E(\mu)=\frac{a}{a+b}

;方差:

var(\mu)=\frac{ab}{(a+b)^2(a+b+1)}

在這裡a和b稱為超引數,控制了引數

\mu

的機率分佈。

(2)從實際的場景出發來看,還是拿拋硬幣來舉例,首先我拿到了一枚硬幣,這枚硬幣的質地(是否均勻)未知,我現在需要給它一個先驗機率分佈,那麼基於常識,我們知道有很多人做過拋硬幣的試驗,不管硬幣是否是同一種,普遍認為硬幣正面朝上的機率會最終停留在0。5左右。那麼這個就是我們的先驗分佈。我們知道,我們不能完全把常識性的結論直接定在這個試驗上,因為我們對該硬幣的材料,質地都不瞭解,也許它做工粗糙,質地不均勻,那麼就有可能不在0。5左右。因此我們需要透過試驗去獲取樣本,並且透過事件發生的樣本來不斷的修正我們的先驗機率,迴圈往復,最後變成可以適應此枚硬幣並且較為準確的後驗機率。那麼為什麼要挑選Beta分佈作為先驗機率呢?第一條是因為滿足共軛性,那麼來看看另一個Beta分佈的性質:

二項分佈的機率公式前文有介紹過,這裡我們將Beta先驗以及二項似然函式相乘並且歸一化,可以得到這樣的一個關係:

p(\mu|m,l,a,b)\propto\mu^{m+a-1}(1-\mu)^{l+b-1}

這裡的m是硬幣正面向上的次數,而l是反面向上的次數。

根據共軛性質,可以最終得到:

p(\mu|m,l,a,b)=\frac{\Gamma(m+a+l+b)}{\Gamma(m+a)\Gamma(l+b)}\mu^{m+a-1}(1-\mu)^{l+b-1}

根據試驗樣本的正面以及反面向上數,a和b相應的增加m和l,這是一個非常好的性質,根據試驗不斷進行,會有更多的樣本,透過樣本可以簡單直觀的對先驗機率函式進行修正。

貝葉斯共有屬性:隨著觀測到越來越多的資料,後驗機率表示的不確定性將會持續下降。

4。 高斯分佈

又名正態分佈,是用處最廣泛的分佈之一。

高斯分佈的定義:

\mathcal N(x|\mu,\sigma^2)=\frac{1}{(2\pi\sigma^2)^{\frac{1}{2}}}exp\left[ -\frac{1}{2\sigma^2}(x-\mu)^2 \right]

\mu

為均值期望,

\sigma^2

為方差。

對於

D

維向量

x

的高斯分佈:

\mathcal  N(x|\mu,\Sigma)=\frac{1}{(2\pi)^{\frac{D}{2}}}\frac{1}{|\Sigma|^{\frac{1}{2}}}exp\left\{ -\frac{1}{2}(x-\mu)^T\Sigma^{-1}(x-\mu) \right\}

\Sigma

D\times D

矩陣稱為協方差,

|\Sigma|

表示

\Sigma

的行列式。

\mu

\sigma^2

未知的時候,如何去求解呢?

給定觀測資料集:

D=\{x_1,...,x_N\}^T

,得到似然函式:

ln\ p(D|\mu,\sigma^2)=-\frac{1}{2\sigma^2}\sum_{n=1}^{N}{(x_n-\mu)^2-\frac{N}{2}ln\ \sigma^2-\frac{N}{2}ln(2\pi)}

得到期望最大似然解:

\mu_{ML}=\frac{1}{N}\sum_{n=1}^{N}{x_n}

(樣本均值)

方差最大似然解:

\sigma^2_{ML}=\frac{1}{N}\sum_{n=1}^{N}{(x_n-\mu_{ML})^2}

(樣本方差)

最大似然解

\mu_{ML}

\sigma^2_{ML}

都是資料集

D

的函式,

也就是說是基於已給的樣本所得出的結論,而不是基於真實的均值和方差

,因此往往

方差會被系統性的低估

,也就是

有偏估計

方差的

無偏估計

\tilde{\sigma}^2=\frac{N}{N-1}\sigma^2_{ML}=\frac{1}{N-1}\sum_{n=1}^{N}{(x_n-\mu_{Ml}})^2

當資料點的數量

N

增大時,最大似然解的偏移會變得不太嚴重,並且在極限

N\rightarrow \infty

的情況下,方差的最大似然解與產生資料的分佈的真實方差相等。

5。 均勻分佈

又稱矩形分佈,在相同長度間隔的分佈機率是相等的,一般由數軸上的最大/小值a,b來定義,即

X\sim U(a,b)

機率密度函式:

\begin{cases} f(x)=\frac{1}{b-a},\ a<x<b\\[2ex] f(x)=0,\ else\\[2ex] \end{cases}

累積分佈函式:

\begin{cases} F(x)=0.x<a\\[2ex] F(x)=\frac{x-a}{b-a}.a\leq x\leq b\\[2ex] F(x)=1,x>b\\[2ex] \end{cases}

均勻分佈的期望:

E(X)=\int_{-\infty}^{\infty}xf(x)dx=\int_{a}^{b}\frac{x}{b-a}dx=\frac{a+b}{2}

方差:

var(X)=E(X^2)-E(X)^2=\int_{a}^{b}x^2\frac{1}{b-a}dx-\left( \frac{a+b}{2} \right)^2=\frac{(b-a)^2}{12}

6。 泊松分佈

泊松分佈比較適合描述單位時間或空間內隨機事件發生的次數,如某一服務設施在一定時間內到達的人數,電話交換機接到呼叫的次數,汽車站臺的候客人數,機器出現的故障數等等。

服從泊松分佈可以記為:

X\sim P(\lambda)

觀察事物單位時間內平均發生

\lambda

次的條件下,實際發生k次的機率

p(x)

表示式為:

p(X=k)=\frac{\lambda^k}{k!}e^{-\lambda},k=0,1...

泊松分佈的期望和方差都是

\lambda

當二項分佈的

N

很大而

\mu

很小時

,泊松分佈可作為二項分佈的近似,其中

\lambda=N\mu

。通常當

N\geq20,\mu\leq0.05

時,就可以用泊松公式近似計算。

7。 指數分佈

指數分佈是一種連續機率分佈,指數分佈可以用來表示獨立隨機事件發生的

時間間隔

,比如旅客進機場的時間間隔等。許多電子產品的

壽命分佈一般服從指數分佈

。有的系統的壽命分佈也可用指數分佈來近似。它在可靠性研究中是最常用的一種分佈形式。記為:

X\sim E(\lambda)

指數分佈是威布林分佈以及伽馬分佈的特例。

機率密度函式:

f(x)=\begin{cases} \lambda e^{-\lambda x},x>0\\[2ex] 0\ ,x\leq0 \end{cases}

\lambda>0

又被稱為

率引數

分佈函式:

F(x;\lambda)=\begin{cases} 1-e^{-\lambda x}\ ,x\geq0\\[2ex] 0\ ,x\leq0 \end{cases}

期望:

E(X)=\frac{1}{\lambda}

,方差:

var(X)=\frac{1}{\lambda^2}

無記憶性

:當

s,t\geq0

時,有

P(T>s+t|T>t)=P(T>s)

,如果

T

是某一元件的壽命,已知元件使用了

t

小時,它總共使用至少

s+t

小時的條件機率,與從開始使用時算起它使用至少s小時的機率相等。這個可以透過機率密度函式推匯出來,比較簡單。

8。 威布林分佈

又稱為韋布爾分佈、韋伯分佈或者韋氏分佈,主要應用於可靠性分析和壽命檢驗。威布林分佈在可靠性工程中被廣泛應用,尤其適用於

機電類產品的磨損累計失效的分佈形式

。由於它可以利用機率值很容易地推斷出它的分佈引數,被

廣泛應用於各種壽命試驗的資料處理

機率密度函式:

f(x;\lambda,k)=\begin{cases} \frac{k}{\lambda}\left( \frac{x}{\lambda} \right)^{k-1},x\geq0\\[2ex] 0,x<0 \end{cases}

\lambda>0

是比例引數,

k>0

是形狀引數,

k=1

時。即為指數分佈。

期望:

E(x)=\lambda \Gamma(1+\frac{1}{k})

,其中

\Gamma

是伽馬函式。

伽馬函式:

\Gamma(x)=\int_{0}^{\infty}t^{x-1}e^{-t}dt\   \ \ \ (x>0)

方差:

var(x)=\lambda^2\left[ \Gamma(1+\frac{2}{k})-\Gamma(1+\frac{1}{k})^2 \right]

應用場景:工業製造、研究生產過程和運輸時間關係、極值理論、預測天氣、可靠性和失效分析、雷達系統、對接受到的雜波訊號的依分佈建模、擬合度、無線通訊技術中,相對指數衰減頻道模型,Weibull衰減模型對衰減頻道建模有較好的擬合度、量化壽險模型的重複索賠、預測技術變革、風速等。

9。 伽馬分佈

機率密度函式:

f(x,\beta,\alpha)=\frac{\beta^\alpha}{\Gamma(\alpha)}x^{\alpha-1}e^{-\beta x}\ \ ,x>0

\alpha

稱為形狀引數,

\beta

稱為逆尺度引數。

期望:

E(x)=\frac{\alpha}{\beta}

;方差:

var(x)=\frac{\alpha}{\beta^2}

特殊形式

當形狀引數

\alpha=1

時,伽馬分佈就是引數為

\lambda

的指數分佈

\alpha=\frac{n}{2},\beta=\frac{1}{2}

時,伽馬分佈就是自由度為n的卡方分佈

10。 多項式分佈

我們知道二項分佈其實是基於某事件的發生只有2種可能,比如拋硬幣,只有正面向上和反面向上兩種可能,有時候,某事件的發生可能性會有多種,比如擲骰子,就有6種可能性。這種具有多種可能性的事件機率分佈就被稱為多項式分佈。

在多項式分佈中,存在一個具有

K

個(多個)互斥狀態的離散變數(事件發生可能性)。一種比較方便的表示方法就是將某次事件發生的變量表示為

K

維向量

x

,向量中某個元素

x_k=1

,其他元素等於0。

比如:

x=(0,0,1,0,0)^T

,意思就是,該樣本

x_3

可能性發生,其餘的可能性並沒有發生。

如果用

\mu_k

表示

x_k=1

的機率,那麼就可以得到變數

x

的分佈:

p(x|\mu)=\prod_{k=1}^{K}\mu_k^{x_k}

,其中

\mu=(\mu_1,...,\mu_K)

,並且

\sum_{k}{\mu_k}=1

可以推斷出分佈的期望:

E(x|\mu)=\sum_{x}{p(x|\mu)x=(\mu_1,...,\mu_K)}^T=\mu

考慮一個有

N

個獨立觀測樣本

D=\{x_1,...,x_N\}

,似然函式形式為:

p(D|\mu)=\prod_{n=1}^{N}\prod_{k=1}^{K}\mu_k^{x_{nk}}=\prod_{k=1}^{K}\mu_k^{(\sum_{n}{x_{nk}})}=\prod_{k=1}^{K}\mu_k^{m_k}

上式中,

m_k=\sum_nx_{nk}

,表示

x_k=1

的次數,稱為該分佈的

充分統計量

現在來求解

\mu

的最大似然解:我們知道

\sum_{k=1}^{K}{\mu_k}=1

,上文已經給出了似然函式,對其取對數並結合拉格朗日乘子法可得:

\sum_{k=1}^{K}{m_k\ ln\ \mu_k}+\lambda\left( \sum_{k=1}^{K}{\mu_k-1} \right)

,對其求導得出:

\mu_k=-\frac{m_k}{\lambda}

將結果帶入到限制條件

\sum_{k=1}^{K}{\mu_k}=1

中解得:

\lambda=-N

最後得出最大似然解:

\mu_k^{ML}=\frac{m_k}{N}

,也就是N次觀測中,

x_k=1

的觀測所佔比例。

考慮

m_!,...,m_K

在引數

\mu

和觀測總數

N

條件下聯合分佈:

Mult(m_1,m_2,...,m_K|\mu,N)=\binom{N}{m_1m_2...m_K}\prod_{k=1}^{K}\mu_k^{m_k}

,,稱為

多項式分佈

其中

\binom{N}{m_1m_2...m_K}=\frac{N!}{m_1!m_2!...m_K!}

是歸一化係數。

11。 狄利克雷分佈

前文介紹了多項式分佈的表示式,這裡介紹一下多項式分佈引數

\{\mu_k\}

的一組先驗分佈:

共軛先驗:

p(\mu|\alpha)\propto\prod_{k=1}^{K}\mu_k^{\alpha_k-1}

,其中

0\leq \mu_k\leq 1

並且

\sum_k\mu_k=1

,這裡

\alpha=(\alpha_1,...,\alpha_K)^T

機率歸一化形式為:

Dir(\mu|\alpha)=\frac{\Gamma(\alpha_0)}{\Gamma(\alpha_1)...\Gamma(\alpha_K)}\prod_{k=1}^{K}\mu_k^{\alpha_k-1}

以上就是

狄利克雷分佈

\Gamma(x)

是Gamma函式。

多項式分佈中的機率公式和狄利克雷分佈(多項式分佈的先驗分佈)相乘,得到了

引數

\{\mu_k\}

的後驗分佈

,確定歸一化係數之後,可以得到:

p(\mu|D,\alpha)=Dir(\mu|\alpha+m)=\frac{\Gamma(\alpha_0+N)}{\Gamma(\alpha_1+m_1)...\Gamma(\alpha_K+m_K)}\prod_{k=1}^{K}\mu_k^{\alpha_k+m_k-1}

這裡的

m=(m_1,...,m_K)^T

這其實和二項分佈的先驗機率分佈Beta分佈相似。

具有兩個狀態的量既可以表示為⼆元變數然後使⽤二項分佈公式建模,也可以表示為二維向量的變數然後使用多項式分佈公式建模。

參考部落格:

參考書籍:《Pattern Recognition And Machine Learning》——Christopher M。 Bishop

參考網頁:百度百科