马尔可夫“折棍子”过程 Markovian Stick-breaking Process 在直方图平滑中的应用
馬爾可夫“折棍子”過(guò)程 Markovian Stick-breaking Process 在直方圖平滑中的應(yīng)用
- 用Dirichlet prior做Histogram Smoothing
- 用Markovian Stick-breaking Prior做Histogram Smoothing
- Dirichlet Generator
- Tridiagonal Generator
上一篇介紹了Markovian Stick-breaking Process的構(gòu)造,這一篇介紹它在非參貝葉斯統(tǒng)計(jì)中的一個(gè)簡(jiǎn)單應(yīng)用——Histogram Smoothing。
用Dirichlet prior做Histogram Smoothing
這個(gè)toy example來(lái)自WILLIAM LIPPITT AND SUNDER SETHURAMAN的manuscript(ON THE USE OF MARKOVIAN STICK-BREAKING PRIORS)。
假設(shè)一個(gè)鞋店老板想了解附近居民的鞋碼分布,假設(shè)有ddd種尺碼。在實(shí)際走訪之前,因?yàn)樗麤](méi)有任何關(guān)于鞋碼分布的先驗(yàn)信息,于是他決定使用non-informative measure:
μ=1?d\mu=\frac{\vec 1}ozvdkddzhkzdμ=d1?
在他走訪之后,記下了每種鞋碼對(duì)應(yīng)的人數(shù),用f?\vec ff?表示;如果先驗(yàn)為Dirichlet(θμ)Dirichlet(\theta \mu)Dirichlet(θμ),則對(duì)于Multinomial的數(shù)據(jù),后驗(yàn)為Dirichlet(θμ+f?)Dirichlet(\theta\mu+\vec f)Dirichlet(θμ+f?),后驗(yàn)均值為
θμ+f?θ+f?T1?\frac{\theta \mu+\vec f}{\theta+\vec f^T \vec 1}θ+f?T1θμ+f??
因此θ\thetaθ可以代表先驗(yàn)的強(qiáng)度,θ\thetaθ越大,先驗(yàn)對(duì)后驗(yàn)的影響就越大。
上圖展示了Dirichlet prior的缺陷,在處理count data的時(shí)候,如果某些類別的數(shù)據(jù)樣本很少(中圖),那么在后驗(yàn)均值中,這些類別也不會(huì)被填充(右圖),所以后驗(yàn)均值的直方圖依舊無(wú)法展示數(shù)據(jù)的真實(shí)特征,也就是說(shuō)Dirichlet prior并沒(méi)有完全發(fā)掘出所有類別的先驗(yàn)信息。
用Markovian Stick-breaking Prior做Histogram Smoothing
Dirichlet Generator
要使用MSB(G)MSB(G)MSB(G)作為先驗(yàn)的話,需要先確定generator matrix GGG,因?yàn)镈irichlet prior是MSB(G)MSB(G)MSB(G)的一個(gè)特例,我們可以先看看Dirichlet prior Dirichlet(α)Dirichlet(\alpha)Dirichlet(α)對(duì)應(yīng)的generator matrix。
用有向圖代表Dirichlet prior不同category(在這個(gè)例子中就是鞋碼)之間的dependence,但是Dirichlet prior中不同category是獨(dú)立的,因此從節(jié)點(diǎn)iii到jjj的有向邊的權(quán)重只取決于jjj,對(duì)于Dirichlet(α)Dirichlet(\alpha)Dirichlet(α)而言,這個(gè)權(quán)重與αj\alpha_jαj?成正比(簡(jiǎn)單起見(jiàn)可以就用αj\alpha_jαj?),因此Dirichlet prior有向圖的伴隨矩陣為
A=[α1α2α3?αdα1α2α3?αdα1α2α3?αd?????α1α2α3?αd]A=\left[ \begin{matrix} \alpha_1 & \alpha_2 & \alpha_3 & \cdots & \alpha_d \\ \alpha_1 & \alpha_2 & \alpha_3 & \cdots & \alpha_d \\ \alpha_1 & \alpha_2 & \alpha_3& \cdots & \alpha_d \\ \cdots & \cdots & \cdots & \cdots & \cdots \\ \alpha_1 & \alpha_2 & \alpha_3 & \cdots & \alpha_d\end{matrix} \right]A=???????α1?α1?α1??α1??α2?α2?α2??α2??α3?α3?α3??α3????????αd?αd?αd??αd?????????
根據(jù)Generator的定義把伴隨矩陣修正為generator:
G=[α1?∑i=1dαiα2α3?αdα1α2?∑i=1dαiα3?αdα1α2α3?∑i=1dαi?αd?????α1α2α3?αd?∑i=1dαi]G=\left[ \begin{matrix} \alpha_1-\sum_{i=1}^d \alpha_i & \alpha_2 & \alpha_3 & \cdots & \alpha_d \\ \alpha_1 & \alpha_2-\sum_{i=1}^d \alpha_i & \alpha_3 & \cdots & \alpha_d \\ \alpha_1 & \alpha_2 & \alpha_3-\sum_{i=1}^d \alpha_i & \cdots & \alpha_d \\ \cdots & \cdots & \cdots & \cdots & \cdots \\ \alpha_1 & \alpha_2 & \alpha_3 & \cdots & \alpha_d -\sum_{i=1}^d \alpha_i \end{matrix} \right]G=????????α1??∑i=1d?αi?α1?α1??α1??α2?α2??∑i=1d?αi?α2??α2??α3?α3?α3??∑i=1d?αi??α3????????αd?αd?αd??αd??∑i=1d?αi??????????
這就是Dirichlet prior的generator matrix。
Tridiagonal Generator
根據(jù)Dirichlet generator的思想,用有向圖表示不同category之間的dependence structure,再把有向圖的伴隨矩陣改寫(xiě)為generator的形式,這樣我們就可以根據(jù)需求設(shè)計(jì)category之間的prior dependence structure。
在鞋碼的這個(gè)例子中,我們可以假設(shè)鞋碼其實(shí)是根據(jù)連續(xù)型隨機(jī)變量——腳的長(zhǎng)度——離散化之后的結(jié)果,因此鞋碼之間的dependence structure應(yīng)該是:
這兩個(gè)結(jié)果非常直觀,比如在買鞋的時(shí)候,平時(shí)穿40鞋的人最多再試一下39或者41,一般不會(huì)嘗試38或者42;根據(jù)我們對(duì)鞋碼之間dependence的認(rèn)識(shí),我們可以寫(xiě)出對(duì)應(yīng)有向圖的伴隨矩陣:
A=[ww00wwww?00ww?0?????w00?w]A=\left[ \begin{matrix} w & w & 0 & 0 & w \\ w & w & w & \cdots & 0 \\ 0 & w & w& \cdots & 0 \\ \cdots & \cdots & \cdots & \cdots & \cdots \\ w & 0 & 0 & \cdots & w\end{matrix} \right]A=???????ww0?w?www?0?0ww?0?0?????w00?w????????
這里我做了一點(diǎn)標(biāo)準(zhǔn)化處理,假設(shè)category 1與category d相鄰,改寫(xiě)為generator之后它就成了對(duì)角元相同的一個(gè)很像三對(duì)角矩陣的矩陣(因?yàn)橛杏疑献笙聝蓚€(gè)www,所以并不是三對(duì)角矩陣),這是就稱這種generator為tridiagonal generator的原因:
G=[?2ww00ww?2ww?00w?2w?0?????w00??2w]G=\left[ \begin{matrix} -2w & w & 0 & 0 & w \\ w & -2w & w & \cdots & 0 \\ 0 & w & -2w& \cdots & 0 \\ \cdots & \cdots & \cdots & \cdots & \cdots \\ w & 0 & 0 & \cdots & -2w\end{matrix} \right]G=????????2ww0?w?w?2ww?0?0w?2w?0?0?????w00??2w????????
下面是原文的兩個(gè)模擬結(jié)果:
總結(jié)
以上是生活随笔為你收集整理的马尔可夫“折棍子”过程 Markovian Stick-breaking Process 在直方图平滑中的应用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: UA MATH567 高维统计专题1 稀
- 下一篇: UA PHYS515A 电磁理论V 电磁