前言
这段时间先把LDA需要的数学知识先给学了一遍,本文将数学知识以及自己对其的理解梳理成这三个部分:
一些最基础概念
分布函数:设X是一个随机变量,x是任意实数,函数F(x)=P(X≤x)称为X的分布函数。有时也记为X~F(x)
由其定义易知有下述性质
- 单调非降性
- 有界性: 0≤F(x)≤1 0 ≤ F ( x ) ≤ 1 ; F(−∞)=0 F ( − ∞ ) = 0 ; F(+∞)=1 F ( + ∞ ) = 1
- 右连续性: F(x)=F(x+0) F ( x ) = F ( x + 0 )
- 单调非降性
概率密度函数:对于一维实随机变量X,设它的累积分布函数是 FX(x) F X ( x ) ,如果存在可测函数 fX(x) f X ( x ) ,满足
Fx(a)=∫a−∞fx(x)dx,∀−∞<a<∞ F x ( a ) = ∫ − ∞ a f x ( x ) d x , ∀ − ∞ < a < ∞
则X 是一个连续型随机变量,并且 fX(x) f X ( x ) 是它的概率密度函数简而言之就是分布函数是概率密度函数的积分,概率密度函数是分布函数的导数
基础函数-Gamma函数
Gamma 函数的定义
Γ(x)=∫∞0tx−1e−tdt Γ ( x ) = ∫ 0 ∞ t x − 1 e − t d t
其函数形状如下
通过分部积分可以推导出这个函数有如下的递归性质
Γ(x+1)=xΓ(x) Γ ( x + 1 ) = x Γ ( x )
分部积分以及推导过程如下:
Γ(x)=∫∞0tx−1e−tdt=∫∞0tx−1de−t=−[(e−ttx−1|∞0)−∫∞0e−tdtx−1]=−[0−∫∞0e−tdtx−1]=∫∞0e−ttx−2(x−1)dt(4)(5)(6)(7)(8) (4) Γ ( x ) = ∫ 0 ∞ t x − 1 e − t d t (5) = ∫ 0 ∞ t x − 1 d e − t (6) = − [ ( e − t t x − 1 | 0 ∞ ) − ∫ 0 ∞ e − t d t x − 1 ] (7) = − [ 0 − ∫ 0 ∞ e − t d t x − 1 ] (8) = ∫ 0 ∞ e − t t x − 2 ( x − 1 ) d t∴Γ(x+1)=∫∞0e−ttx−2(x−1)dt=xΓ(x)(9)(10) (9) ∴ Γ ( x + 1 ) = ∫ 0 ∞ e − t t x − 2 ( x − 1 ) d t (10) = x Γ ( x )由于上述递归性质, Γ(x) Γ ( x ) 函数可以当成是阶乘在实数集上的延拓
Γ(n)=(n−1)! Γ ( n ) = ( n − 1 ) !
使得阶乘能在实数集上的延拓,这也是我认为Gamma函数最大的贡献另外,由Gamma函数延伸出的一个函数如下,称为 Digamma 函数
Ψ(x)=dlogΓ(x)dx Ψ ( x ) = d log Γ ( x ) d x
涉及求Dirichlet 分布相关的参数的极大似然估计时,往往需要使用到这个Digamma函数。与Gamma函数一样,Digamma 函数具有递归性质,如下
Ψ(x+1)=Ψ(x)+1x Ψ ( x + 1 ) = Ψ ( x ) + 1 x
问题:
- 该积分式有原函数吗,不然是如何计算的?
- 由matlab计算得到 Γ(0)=∞ Γ ( 0 ) = ∞ 那么 Γ(1)=0∗Γ(0)=1 Γ ( 1 ) = 0 ∗ Γ ( 0 ) = 1 是为什么?
Gamma 函数用处
上面也说了,Gamma 函数重要意义是使得阶乘能在实数集上进行延拓,那么只要是能用阶乘表示的都可以使用Gamma 函数将其延拓至实数域
例如导数。 xn x n 的k阶导数如下:
f(k)(xn)=n!(n−k)!xn−k f ( k ) ( x n ) = n ! ( n − k ) ! x n − k
其中的阶乘可以用Gamma 函数表达,表达为
Γ(n+1)Γ(n−k+1)xn−k Γ ( n + 1 ) Γ ( n − k + 1 ) x n − k
这样就将导数的阶从整数延拓到实数,例如,取n=1我们可以计算 x 的 阶导数为
Γ(1+1)Γ(1−1/2+1)x1−1/2=2x−−√π−−√ Γ ( 1 + 1 ) Γ ( 1 − 1 / 2 + 1 ) x 1 − 1 / 2 = 2 x π
Gamma 分布
Gamma函数定义为 Γ(x)=∫∞0tx−1e−tdt Γ ( x ) = ∫ 0 ∞ t x − 1 e − t d t ,稍作变换可得
∫∞0xα−1e−xΓ(α)dx=1 ∫ 0 ∞ x α − 1 e − x Γ ( α ) d x = 1
由于其结果等于1,于是可以取积分中的函数作为概率密度,得到一个Gamma 分布的密度函数
Gamma(x|α)=xα−1e−xΓ(α) G a m m a ( x | α ) = x α − 1 e − x Γ ( α )
如果做一个变换 x=βx x = β x ,则
Γ(α)=∫∞0(βt)α−1e−βtdβt=βα∫∞0tα−1e−tβdt Γ ( α ) = ∫ 0 ∞ ( β t ) α − 1 e − β t d β t = β α ∫ 0 ∞ t α − 1 e − t β d t
这样变换之后就得到Gamma 分布的更一般的形式
Gamma(t|α,β)=