LDA主题模型之数学基础

本文详细介绍了LDA主题模型背后的数学基础,包括基础概念、Gamma函数及其递归性质、Beta与Dirichlet分布。Gamma函数是阶乘在实数集上的延拓,与概率分布中的Gamma分布密切相关。Beta分布描述了随机变量的概率概率分布,常用于概率估计的共轭性质。Dirichlet分布是Beta分布的多维扩展,适用于多个概率的联合分布。通过对这些数学概念的理解,可以更好地掌握LDA主题模型的工作原理。
摘要由CSDN通过智能技术生成

前言

这段时间先把LDA需要的数学知识先给学了一遍,本文将数学知识以及自己对其的理解梳理成这三个部分:

  1. 一些最基础概念
  2. 基础函数-Gamma函数
  3. 概率分布-Beta与Dirichlet分布

一些最基础概念

  • 分布函数:设X是一个随机变量,x是任意实数,函数F(x)=P(X≤x)称为X的分布函数。有时也记为X~F(x)

    由其定义易知有下述性质

    1. 单调非降性
      1. 有界性: 0F(x)1 0 ≤ F ( x ) ≤ 1 ; F()=0 F ( − ∞ ) = 0 ; F(+)=1 F ( + ∞ ) = 1
      2. 右连续性: F(x)=F(x+0) F ( x ) = F ( x + 0 )
  • 概率密度函数:对于一维实随机变量X,设它的累积分布函数是 FX(x) F X ( x ) ,如果存在可测函数 fX(x) f X ( x ) ,满足

    Fx(a)=afx(x)dx,<a< F x ( a ) = ∫ − ∞ a f x ( x ) d x , ∀ − ∞ < a < ∞

    X 是一个连续型随机变量,并且 fX(x) f X ( x ) 是它的概率密度函数

    简而言之就是分布函数是概率密度函数的积分,概率密度函数是分布函数的导数

基础函数-Gamma函数

  • Gamma 函数的定义

    Γ(x)=0tx1etdt Γ ( x ) = ∫ 0 ∞ t x − 1 e − t d t

    其函数形状如下

    通过分部积分可以推导出这个函数有如下的递归性质

    Γ(x+1)=xΓ(x) Γ ( x + 1 ) = x Γ ( x )

    分部积分以及推导过程如下:
    Γ(x)=0tx1etdt=0tx1det=[(ettx1|0)0etdtx1]=[00etdtx1]=0ettx2(x1)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)=0ettx2(x1)dt=xΓ(x)(9)(10) (9) ∴ Γ ( x + 1 ) = ∫ 0 ∞ e − t t x − 2 ( x − 1 ) d t (10) = x Γ ( x )

    由于上述递归性质, Γ(x) Γ ( x ) 函数可以当成是阶乘在实数集上的延拓

    Γ(n)=(n1)! Γ ( 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

    问题

    1. 该积分式有原函数吗,不然是如何计算的?
    2. 由matlab计算得到 Γ(0)= Γ ( 0 ) = ∞ 那么 Γ(1)=0Γ(0)=1 Γ ( 1 ) = 0 ∗ Γ ( 0 ) = 1 是为什么?
  • Gamma 函数用处

    上面也说了,Gamma 函数重要意义是使得阶乘能在实数集上进行延拓,那么只要是能用阶乘表示的都可以使用Gamma 函数将其延拓至实数域

    例如导数。 xn x n 的k阶导数如下:

    f(k)(xn)=n!(nk)!xnk f ( k ) ( x n ) = n ! ( n − k ) ! x n − k

    其中的阶乘可以用Gamma 函数表达,表达为
    Γ(n+1)Γ(nk+1)xnk Γ ( n + 1 ) Γ ( n − k + 1 ) x n − k

    这样就将导数的阶从整数延拓到实数,例如,取n=1我们可以计算 x 的 阶导数为
    Γ(1+1)Γ(11/2+1)x11/2=2xπ Γ ( 1 + 1 ) Γ ( 1 − 1 / 2 + 1 ) x 1 − 1 / 2 = 2 x π

  • Gamma 分布

    Gamma函数定义为 Γ(x)=0tx1etdt Γ ( x ) = ∫ 0 ∞ t x − 1 e − t d t ,稍作变换可得

    0xα1exΓ(α)dx=1 ∫ 0 ∞ x α − 1 e − x Γ ( α ) d x = 1

    由于其结果等于1,于是可以取积分中的函数作为概率密度,得到一个Gamma 分布的密度函数
    Gamma(x|α)=xα1exΓ(α) G a m m a ( x | α ) = x α − 1 e − x Γ ( α )

    如果做一个变换 x=βx x = β x ,则
    Γ(α)=0(βt)α1eβtdβt=βα0tα1etβdt Γ ( α ) = ∫ 0 ∞ ( β t ) α − 1 e − β t d β t = β α ∫ 0 ∞ t α − 1 e − t β d t

    这样变换之后就得到Gamma 分布的更一般的形式
    Gamma(t|α,β)=
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值