引言
發現對概率論的基本概念理解不是很深入,導致看後面的東西時常有些莫名其妙的疑惑,回頭來看看概率論與統計
1. 累積分佈函數(CDF – Cumulative distribution function 或直接就叫 distribution function)
CDF其定義爲
正如統計學完全教程裏說的,這個CDF函數是很有迷惑性的,有必要仔細理解它。我以前每次看這個表達式都是一閃而過,沒有好好理解,而它的真正的意義應該是表示隨機變量小於或等於其某一個取值x的概率。設一個例子,拋一枚均勻的硬幣兩次,設隨機變量X表示出現正面的次數,那麼
對於這個圖,要想清楚清楚如下兩個問題:
1)爲什麼函數始終是右連續的? 因爲根據CDF的表達式中的小於等於號,當X=x時,P(X=x)的那部分應該被加到
2)爲什麼
因此F函數始終是非降的,右連續的,且
2. 概率密度函數(PDF – Probability density function)
對於離散隨機變量的PDF爲:
對於連續隨機變量,若存在一個函數
則
表面看起來這個定義簡單,但是要深入理解這些式子的含義,這個定義對後面整個機器學習的內容都是最基礎最重要的。
其實後面所謂的 density estimation(EM algorithm和Sampling Methods)都是要估計出一個PDF來。
最簡單的PDF就是比如翻硬幣的例子,假如翻正面概率0.4,反面0.6,則這個模型的PDF就是{0.4, 0.6}
稍微複雜點的PDF就是univariate Gaussian啦,其實也不復雜,高中就見過
3. 伯努利、二項分佈、多項分佈
伯努利分佈就是對單次拋硬幣的建模,X~Bernoulli(p)的PDF爲
很多次拋硬幣的建模就是二項分佈了。注意二項分佈有兩個參數,n和p,要考慮拋的次數。
二項分佈的取值X一般是出現正面的次數,其PDF爲:
多項分佈則更進一層,拋硬幣時X只能有兩種取值,當X有多種取值時,就應該用多項分佈建模。
這時參數p變成了一個向量
2.1.1 The beta distribution
如果忘記伯努利分佈和二項分佈是怎麼回事了,看這裏。
書中引出貝塔分佈的理由:P70提到,由於最大似然估計在觀察數據很少時,會出現嚴重over-fitting(比如估計拋硬幣正反面概率,只有3次拋硬幣觀察數據,且結果正好都是正面,則模型預測以後所有拋硬幣都將是正面)。爲了解決這個問題,可以考慮貝葉斯方法,即引入一個先驗知識(先驗分佈p(μ))來控制參數μ,那麼如何挑選這個分佈呢?
根據:
已經知道似然函數的形式,如果選擇的先驗分佈也與 μ
和 (1-μ) 兩者的乘方成比例,那麼後驗分佈的函數形式就會跟它的先驗函數形式一樣了。具體來說,選擇prior的形式是
最終這裏的先驗和後驗就都是貝塔分佈了,其中先驗的形式如下:
其中
在維基裏面,有這麼一個式子:
瞬間覺得世界清晰了,因爲
從式2.14看出,Beta分佈就是一個μ的PDF(概率密度函數)(這個昨天(3@21)剛仔細看過哈),μ本身是二項分佈的參數,而a,b由於2.14的歸一化過程可以被視作μ的控制參數,因此貝塔分佈的a和b就被稱作hyperparameters。下面的圖是Beta分佈的幾個例子,其中橫軸是μ取值範圍,縱軸是PDF取值,PDF的值可以大於1哦。
最後得到的postprior如下:
要把這個postprior歸一化其實可以參照式2.13,式2.17中的m+a等同於2.13中那個a,而l+b就是2.13中那個b,所以:
最後,如果我們已經有觀察數據D,要估計μ,即
可以發現這個式子比最大似然估計的結果m/(m+l)多了a和b,也就是先驗知識的影響。
2.2 Multinomial Variables
Multinomial Variables說白了就是多種選擇選其一。比如隨機變量X有三種取值x1,x2,x3,那麼用一個三維向量表示Multinomial 的取值就是{1,0,0},{0,1,0},{0,0,1}分別代表選中x1,x2,x3,即必須選中一個,同時只能選一個這樣的意思。
如果用μk表示xk=1時的概率,那麼對於隨機變量x的取值的概率分佈可以表示爲:
其實這個式子的意思就是當K取值k的時候,只有xk是1,其他都是0,所以這個p(x|μ)的值就是μk的值而已,因爲一個數的0次方是1,所以對於其他xi(i≠k)的那部分μi全部都乘以了一個1而已。搞了這麼一個玄乎的式子,應該是爲了數學表示全面點,事實上直接理解就是p(x|μ) = μk。
上面所講的這些其實只是多項分佈的一次事件(或一次觀察),如果有N多次觀察,那麼就需要用多項分佈來描述了。就像伯努利分佈只是描述一次拋硬幣,而二項分佈是描述N次拋硬幣的一樣。
對於Multinomial 的極大似然估計其實可想而知,就是數數xk的個數然後取佔整個集合的比例作爲概率了。式(2.31)給了數學上的likelihood的式子,但是那個什麼拉格朗日乘子λ我已經沒啥概念了,只知道是用來求函數極值的,這裏記着點以後到高數裏去看。2012@4@4補充,大致看了一下拉格朗日乘數法,沒有想象中的複雜,就是用來求一個條件極值,在這裏。
Dirichlet分佈可以看做是分佈之上的分佈。如何理解這句話,我們可以先舉個例子:假設我們有一個骰子,其有六面,分別爲{1,2,3,4,5,6}。現在我們做了10000次投擲的實驗,得到的實驗結果是六面分別出現了{2000,2000,2000,2000,1000,1000}次,如果用每一面出現的次數與試驗總數的比值估計這個面出現的概率,則我們得到六面出現的概率,分別爲{0.2,0.2,0.2,0.2,0.1,0.1}。現在,我們還不滿足,我們想要做10000次試驗,每次試驗中我們都投擲骰子10000次。我們想知道,出現這樣的情況使得我們認爲,骰子六面出現概率爲{0.2,0.2,0.2,0.2,0.1,0.1}的概率是多少(說不定下次試驗統計得到的概率爲{0.1, 0.1, 0.2, 0.2, 0.2, 0.2}這樣了)。這樣我們就在思考骰子六面出現概率分佈這樣的分佈之上的分佈。而這樣一個分佈就是Dirichlet分佈。
首先用上面這一段來點直觀印象,然後列一些資料:
維基裏面對於狄利克雷分佈貌似介紹的挺複雜,不夠基礎。我找到了一個CMU的PPT:Dirichlet Distribution, Dirichlet Process and Dirichlet Process Mixture,找到一篇華盛頓大學的《Introduction to the Dirichlet Distribution and Related Processes》介紹。
發現CMU那個ppt裏面講到,Beta is the conjugate prior of Binomial,有一種原來如此的感覺。嗯,原來貝塔分佈是二項分佈的共軛先驗分佈,那麼狄利克雷分佈就是多項分佈的共軛先驗分佈。所以要看狄利克雷分佈,就要先了解多項分佈,然後呢,想要了解狄利克雷之於多元的關係,就要先看貝塔分佈和伯努利分佈的關係。所以,二項分佈、beta分佈、以及共軛這三點是理解狄利克雷分佈的關鍵基礎知識,這個基礎知識記錄在這裏(PRML2.1整小章介紹了這個)。
下面正式進入狄利克雷分佈介紹,首先說一下這個多項分佈的參數μ。在伯努利分佈裏,參數μ就是拋硬幣取某一面的概率,因爲伯努利分佈的狀態空間只有{0,1}。但是在多項分佈裏,因爲狀態空間有K個取值,因此μ變成了向量
上式中,
其中
對於參數
從這個形式可以看出,後驗也是狄利克雷分佈。類似於貝塔分佈歸一化後驗的方法,我們把這個後驗歸一化一下,得到:
2.3 The Gaussian Distribution
1. preliminary (Matrix Algebra — Methods of Multivariate Analysis C H A P T E R 2)
加入一些其他內容,調整至http://www.xperseverance.net/blogs/2012/12/1579/
2.多元情況下的協方差
我覺得PRML上2.3中的多元高斯分佈爲啥讓人覺得虎,就是因爲相對於單元高斯分佈,多元情況下的方差令人迷惑和費解,所以本節只記錄《MMA》中第三章講述的多元協方差矩陣。
bivariate
case:現在假設只在二維情況下討論問題,則每個隨機變量表示爲
同時相關係數:
對於兩個變量的相關性的理解可以用下面一個例子來描述:
設有二維隨機變量(x,y),x表示升高,y表示體重,則憑經驗就可以想到,身高是和體重相關的,所以講這個隨機變量畫成二維點圖應該如下(點集中在兩個象限,展現出很高的相關性):
而如果把x換成智力,y換成身高,那麼就會變成下面這個樣子(所有點四個象限都有,展現出無關性):
3. 多元高斯分佈:
未完待續!
2.5 Nonparametric Methods
這章主要介紹兩種無參方法:核方法和近鄰法。
P122 開始介紹核密度估計時,從公式2.242到2.246都是爲了推導未知概率密度p(x)的估計。
最後推導得到式2.246如下:
其中V是x附近區域R的體積,K則是落入x附近區域R中的數據點個數,由此導出了兩種不同的密度估計方法:
(1)如果固定K而估計V的大小,那麼就是kNN算法(k固定而根據選定最近的k個數據來評估R的體積)
(2)如果固定V而估計K的大小,那麼就是核密度估計,用一個核函數表示一個固定的體積V,然後數數這個體積裏面數據點K的個數
這就是對這兩種無參數方法比較深入的理解,很好。
關於核密度估計,雖然還不是很清楚,但是可以知道其實它的道理跟P121的histogram approach是一樣的,只不過核密度估計是高維的而已