PRML 閱讀筆記(七)

2.3.3 Bayes'theorem for Gaussian variables

          之前兩節,書中用標準二次型和配方的方法找到了p(xa)和p(xb|xa),這一節中,把它們記爲p(x)和p(y|x),並把他們當作貝葉斯理論中的先驗概率和似然函數,用以求得p(y)和後驗概率p(x|y)。爲了簡化描述,作者先對之前的結論進行了描述的簡化,定義了三個新的參數(對照上一節可知三個參數的含義),並隨之引出了線性高斯模型的概念。

            一如之前分塊的方法,這次書中將x,y拼接:

           

              即,p(x,y)=p(z)。然後作者通過最上面的兩個公式,利用x和y|x分佈的期望和協方差矩陣進行推導,得到關於z的二次型。這樣便得到了z的協方差矩陣,不同的是,現在z的協方差矩陣已經被x和y|x的參數所表示,再通過配方法得到z的均值,這樣便可以得到p(y)的期望和協方差矩陣了。關於p(x|y),我們已經有p(x)p(y|x)和p(y),利用公式p(x)p(y|x)/p(y),不難得出後驗概率。



2.3.4 Maximum likelihood for Gaussian

          假設X服從多維高斯正態分佈,可以得到密度函數的log形式,對log函數中的μ球偏導(求導過程利用了附錄C的公式19),並令偏導數爲“0”,可以得到μ的最大似然估計:

          

          關於樣本協方差矩陣的最大似然估計是怎麼得到的,作者似乎並沒有特別明確說明,直接給出了結果。如同單維高斯分佈一樣,作者又提出了樣本均值是期望的無偏估計,而樣本協方差矩陣則是協方差矩陣的有偏估計,從而引起過擬合。所以對估計量進行修正:

          


2.3.5 Sequential estimation

           利用上一小節得到的μ的最大似然估計,可以進行對μ的序貫估計,即每獲得一個樣本就對μ進行更新,可以用在線上實時的應用中。作者先是提出了一種比較簡單的方法,對得到的μ的最大似然估計進行推導,得到一個根據前n-1個樣本的最大似然估計和下一個樣本來得到n個樣本的最大似然估計。因爲這種方法並不通用,作者進而提出了一種稱爲Robbins-Monro的算法。

            首先,定義函數f(θ),稱爲迴歸函數:

            

             而我們算法的目標則是要求導當f(θ)=0使的θ,稱爲root θ。如果有大量的樣本,可以直接對迴歸函數建模求出root。但此時是想通過每觀察一個z,便對θ進行更新。於是根據算法,我們假設條件方差有界:

              

              (假設條件方差的數學意義是什麼?)

              我們可以根據下面的式子來計算root θ:

              

               其中,z是我們的觀測值,並且正數aN要滿足如下條件:

              

                 第一個條件是爲了使θ收斂到一個有限值。第二個條件和第三個條件的數學意義我們看明白,希望大神指點一下,謝謝。

                 現在,我們有了Robbins-Monro算法,下一步就是如何利用算法解決序貫估計的問題。當我們總共有N個樣本,其實通過最大似然函數求出的θ是一個固定值,即:


                 這樣,當N趨近於無限大,我們交換微分與求和符號,可以得到:

                 

                 這時候,根據R-M算法的定義,算法中的z就出現了,即Ex括號部分的函數。所以我們可以利用以下的公式來解決最大似然估計的問題了: 

               

                 最後,作者舉了一個單維高斯分佈的例子,並根據上述推論寫出了其中的z:

                 

                爲什麼作者說z服從期望爲(μ-μML)的高斯分佈,σ呢?,圖2.11那些p(z|μ)是什麼意思,和序貫估計有什麼關係,沒明白。。。                


2.3.6 Bayesian inference for the Gaussian

                假設方差已知,那麼通過觀察N個樣本,可以利用貝葉斯推導出均值μ的分佈。

                先從簡單情況開始。對於N個隨機變量xi獨立且屬於同一高斯分佈,則有似然函數:

     

                  我們把p看作μ的函數,假設方差已知。選擇高斯分佈p(μ)作爲共軛先驗,結合似然函數,通過推導可以得到:

                  

               因爲樣本方差已知,這樣就得到了對於期望的推斷。我只是不太明白這有什麼意義,想知道樣本均值的話直接就可以得到,而且是方差的無偏估計,爲什麼還要設定一個共軛先驗,再來推斷期望。意義是在於當我們不信任樣本,或者想加入一些其它因素,例如經驗先驗之類的因素的時候就可以這麼做麼,即貝葉斯推導,就像在扔三枚硬幣的例子裏那樣所講述的,加入先驗會得到一些更好的結果?

                   

                現在,假設均值已知,想對方差進行Bayes推導。同剛纔一樣,還從N個樣本服從同一高斯分佈的簡單情況開始,因爲是想推導方差,所以我們把似然函數看作是方差的函數,則有:

                 

                此時的共軛先驗不再是高斯分佈了,因爲在除指數部分以外,又多出了一個方差的線性函數。由2.1,2.2節知,此時的先驗共軛應該服從Gamma分佈。在似然函數和先驗共軛相乘後,得到了後驗分佈,是一個Gamma分佈:

                   

             前面,我們分別假設方差已知推期望和假設期望推方差。最後,當我們想用Bayes同時推導方差和期望時,如何找到合適的共軛先驗。我們依舊利用樣本服從同一正態分佈的例子,對似然函數做一點變形,然後利用似然函數的形式,找到先驗共軛的形式,發現共軛先驗服從Gaussian-Gamma分佈。具體就不介紹了,後面作者又介紹了在類似情況下多維高斯的共軛先驗Wishart分佈。


2.3.7 Student's t-distribution

                 這一節作者主要大致介紹了Student's t-distribution。t分佈其實是對一個高斯分佈和一個關於precision的Gamma分佈的積分:

                 

            作者用大段介紹了t分佈的健壯性,當它面對一些異常點,面對噪聲的時候,所顯示的效果要比高斯分佈更好。圖2.16就介紹了t分佈“heavy tail”的性質,當面對幾個異常點的時候,它的尾巴並沒有那麼容易就翹起來。最後作者又簡要介紹了高維t分佈。


2.3.8 Periodic variables

          高斯函數在很多實際應用中都會有很大作用,但在另一些情況中,它又會顯示出一些天生的短板,比如在面對週期性變量的時候。

         我沒有明白作者舉的關於θ用單維高斯去model的例子,只知道它很依賴起點的選取,不同的起點就會有不同的均值和方差。那我們固定一個起點然後再去model不就可以了麼?

         作者接下來用了另一種方式去對θ建模。因爲我們只對角度建模,所以我們可以假設所有的樣本點都落在座標爲(θ,1)的單位圓上,所以假設在笛卡爾座標系中表示樣本,就成了xi(cosθ,sinθ)。我們可以得到樣本x的均值爲:

          

          (注意樣本均值會落在圓上但更可能是圓內),樣本均值的橫縱座標應該如下:

           

             此時,等號兩邊同時相除再解出θ,我們就得到了一個不依賴於任何起點選取的樣本均值。很自然的,我們想得到關於週期變量的分佈。假設θ的週期是2π,θ的概率密度必須滿足三個條件:歸一化,非負。作者提出了一個滿足條件的概率密度,服從高斯聯合概率的x1,x2:

            

             其中x1=cosθ,x2=sinθ。且假設μ1=r0cosθ0,μ2=r0sinθ0;代入之後進行一些推導,可以得出一個關於θ的分佈:

            

             這個分佈稱爲von Mises分佈,θ0是分佈的均值,m被稱爲concentration。I(m)是一個關於m的歸一化函數。再根據上式對兩個參數進行最大似然估計我們可以得到兩個參數的估計值,其中需要用一兩個三角函數公式。這樣便得到了週期性變量θ的分佈。


2.3.9 Mixtures of Gaussians

             有時一個高斯模型可能不足以對變量建模,例如作者所舉的噴泉噴發的例子,所以此時我們可能需要多個高斯模型的線性組合,即mixture of Gaussian。有如下公式:

             

             其中πk被稱爲混合係數。作者在這一節也只是大概介紹了一下,後來又對上式做了一些Bayes方面的解釋,更多內容會放在第9章討論。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章