Multinomial distribution
將二元分布的二元情況擴充到多元,即可得到對應的多元分布。
首先先將伯努利分布擴充到多元假設對於離散變數 x x,可能有 K K個取值,那麼 x x一次的觀測值被表示為一個向量,且滿足 ∑Kk=1xk=1 ∑k=1Kxk=1,僅有一個維的值為 1 1,其它都為 0 0。 故 x x的機率品質函數為: p(x|μ)=ΠKk=1μxkk p(x|μ)=Πk=1Kμkxk
μ μ也為一個 K K維向量。且$p(x{k}=1)=\mu_k ,\sum{k=1}^K\mu_k=1$。對應的方差為 E[x|μ]=∑xp(x|μ)x=(μ1,...,μK)T=μ E[x|μ]=∑xp(x|μ)x=(μ1,...,μK)T=μ
經過 N N次觀察得到資料集 D D,則對應的似然函數為 p(D|μ)=ΠNn=1ΠKk=1μxnkk=ΠKk=1μ(∑nxnk)k=ΠKk=1μmkk p(D|μ)=Πn=1NΠk=1Kμkxnk=Πk=1Kμk(∑nxnk)=Πk=1Kμkmk
其中 mk=∑nxnk mk=∑nxnk表示觀測 N N次,其中觀測值為第 k k個的次數。它也是該分布的充分估計量。通過最大似然法估計 μ μ,考慮到似然函數和 μ μ的約束,所以利用了拉格朗日乘子法:
∑kmklnμk+λ∑Kk=1(μk−1) ∑kmklnμk+λ∑k=1K(μk−1).
通過對上式求導可得 μk=−mkλ μk=−mkλ
由 ∑Kk=1μk=1 ∑k=1Kμk=1,可得 λ=−N λ=−N,所以 μk=mkN μk=mkN。
m1,m2,…,mK m1,m2,…,mK的分布即為multinomial分布,paf為: Multi(m1,m2,...,mK|μ,N)=Cm1NCm2N−m1...CmKmKΠKk=1μmkk Multi(m1,m2,...,mK|μ,N)=CNm1CN−m1m2...CmKmKΠk=1Kμkmk
Dirichlet分布
和Beta分布相同,狄利克雷分布也是在多元情況下用來描述 μ μ的先驗分布,所以它也具有共軛性質,具有和似然函數相同的形式,它的pdf為: Dir(μ|a)=Γ(a0)Γ(a1)...Γ(aK)ΠKk=1μak−1k Dir(μ|a)=Γ(a0)Γ(a1)...Γ(aK)Πk=1Kμkak−1
上式中 a0=∑Kk=1ak a0=∑k=1Kak。 a a也是一個向量,它是描述狄利克雷分布的超參數。
將似然機率和先驗機率相乘,可得 p(μ|D,a)∝p(D|μ)p(μ|a)∝ΠKk=1μak+mk−1k p(μ|D,a)∝p(D|μ)p(μ|a)∝Πk=1Kμkak+mk−1
可知後驗機率仍舊是狄利克雷分布,故可得 p(μ|D,a)=Dir(μ|a)=Γ(a0+N)Γ(a1+m1)...Γ(aK+mK)ΠKk=1μak+mk−1k p(μ|D,a)=Dir(μ|a)=Γ(a0+N)Γ(a1+m1)...Γ(aK+mK)Πk=1Kμkak+mk−1
可以將 ak ak視為對於 xk=1 xk=1的次數的簡單的先驗估計。
from: http://bucktoothsir.github.io/blog/2015/11/17/multinomialanddirichlet/