ガンマ分布
📂確率分布論ガンマ分布
定義

k,θ>0に対して、以下の確率密度関数を持つ連続確率分布Γ(k,θ)をガンマ分布gamma distributionと呼ぶ。
f(x)=Γ(k)θk1xk−1e−x/θ,x>0
- Γはガンマ関数を示す。
- ガンマ分布の確率密度関数はα,β>0に対して、以下のようにも定義される。本質的にはθ=β1かの違いだけだ。
f(x)=Γ(α)βαxα−1e−βx,x>0
基本性質
モーメント生成関数
- [1]: m(t)=(1−θt)−k,t<θ1
- [2]: X∼Γ(α,β)ならば
E(X)=Var(X)=kθkθ2
- [3]: ガンマ分布に従うランダムサンプルX:=(X1,⋯,Xn)∼Γ(k,θ)が与えられているとする。
(k,θ)に対する十分統計量Tは次の通り。
T=(i∏Xi,i∑Xi)
定理
スケーリング
- [a]: X∼Γ(k,θ)ならばスカラーc>0に対してcX∼Γ(k,cθ)
- ∫μ∞Γ(k)zk−1e−zdz=x=0∑k−1x!μxe−μ
- [c]: Γ(1,λ1)⟺exp(λ)
- [d]: Γ(2r,2)⟺χ2(r)
- [e]: 2つの確率変数X1,X2が独立であり、X1∼Γ(α1,1)、X2∼Γ(α2,1)とすると
X1+X2X1∼beta(α1,α2)
説明
ガンマ分布は、ガンマ関数にちなんで名付けられた関数であり、その確率密度関数の積分が1になることはオイラー積分に由来する。直感的な意味を持つというよりは、統計学的に有用な特性が多いため人為的に導入された分布である。このような分布をサンプリング分布sampling distributionとも呼ばれるが、ガンマ分布は特有の形状のおかげで様々な分布へと姿を変え、多くの便利な特性を提供してくれる。
ベイズ理論
ベイジアンでは、ポアソン分布の共役事前分布として使用されることもある。
証明
[1]
t<θ1の時、y:=xθ(1−θt)と置くとdy=θ(1−θt)dxであるから
m(t)=====∫0∞etxΓ(k)θk1xk−1e−x/θdx∫0∞Γ(k)θk1xk−1ex(t−1/θ)dx∫0∞Γ(k)θk1xk−1e−xθ(1−θt)dx∫0∞Γ(k)θk1(1−θtyθ)k−1e−y1−θtθdy(1−θt1)k∫0∞Γ(k)θkθkyk−1e−ydy
オイラー積分により、∫0∞Γ(k)1yk−1e−ydy=1である。
m(t)=(1−θt)−k,t<θ1
■
[2]
直接演繹する。
■
[3]
直接演繹する。
[a]
X∼Γ(k,θ)とc>0に対してY=cXとすると
mX(t)====∫0∞etxΓ(k)θk1xk−1e−x/θdx∫0∞etxΓ(k)(cθ)kckxk−1e−cx/cθdx∫0∞ectcxΓ(k)(cθ)k1(cx)k−1e−cx/cθcdx∫0∞ectyΓ(k)(cθ)k1yk−1e−y/cθdy
[1]モーメント生成関数により
mY(t)=====E(etY)E(etcX)∫0∞ectcyΓ(k)(cθ)k1yk−1e−y/cθdy∫0∞etzΓ(k)(cθ)k1zk−1e−z/cθdz(1−cθ)−k
それ故にY∼Γ(k,cθ)である。
■
数学的帰納法で示す。
■
[c]
モーメント生成関数で示す。
■
[d]
モーメント生成関数で示す。
■
コード
こちらは、ガンマ分布の確率密度関数をGIFアニメで表示するJuliaのコードです。
@time using LaTeXStrings
@time using Distributions
@time using Plots
cd(@__DIR__)
x = 0:0.1:20
Θ = collect(0.1:0.1:10.0); append!(Θ, reverse(Θ))
animation = @animate for θ ∈ Θ
plot(x, pdf.(Gamma(1, θ), x),
color = :black,
label = "r = 1, θ = $(rpad(θ, 4, '0'))", size = (400,300))
xlims!(0,20); ylims!(0,0.5); title!(L"\mathrm{pmf\,of\,} \Gamma (1, \theta)")
end
gif(animation, "pdf1.gif")
animation = @animate for θ ∈ Θ
plot(x, pdf.(Gamma(2, θ), x),
color = :black,
label = "r = 2, θ = $(rpad(θ, 4, '0'))", size = (400,300))
xlims!(0,20); ylims!(0,0.5); title!(L"\mathrm{pmf\,of\,} \Gamma (2, \theta)")
end
gif(animation, "pdf2.gif")
animation = @animate for θ ∈ Θ
plot(x, pdf.(Gamma(4, θ), x),
color = :black,
label = "r = 4, θ = $(rpad(θ, 4, '0'))", size = (400,300))
xlims!(0,20); ylims!(0,0.5); title!(L"\mathrm{pmf\,of\,} \Gamma (4, \theta)")
end
gif(animation, "pdf4.gif")