最近实在太忙,实验室要轮讲bishop的那本模式识别与机器学习,虽然我不是弄这块的,不过任务还是得完成,查资料的过程中发现了这篇个人觉得很有趣的文章,这个系列也是为理解LDA模型做铺垫。
原文地址:http://cos.name/2013/01/lda-math-gamma-function/
1. 神奇的Gamma函数
1.1 Gamma 函数诞生记
学高等数学的时候,我们都学习过如下一个长相有点奇特的Gamma函数
学习了Gamma 函数之后,多年以来我一直有两个疑问:
最近翻了一些资料,发现有不少文献资料介绍 Gamma 函数发现的历史,要说清楚它需要一定的数学推导,这儿只是简要的说一些主线。
1728年,哥德巴赫在考虑数列插值的问题,通俗的说就是把数列的通项公式定义从整数集合延拓到实数集合,例如数列 1,4,9,16,⋯ 可以用通项公式 n2 自然的表达,即便 n 为实数的时候,这个通项公式也是良好定义的。直观的说也就是可以找到一条平滑的曲线 y=x2 通过所有的整数点 (n,n2) ,从而可以把定义在整数集上的公式延拓到实数集合。一天哥德巴赫开始处理阶乘序列 1,2,6,24,120,720,⋯ ,我们可以计算 2!,3! , 是否可以计算 2.5! 呢?我们把最初的一些 (n,n!) 的点画在坐标轴上,确实可以看到,容易画出一条通过这些点的平滑曲线。
但是哥德巴赫无法解决阶乘往实数集上延拓的这个问题,于是写信请教尼古拉斯.贝努利和他的弟弟丹尼尔.贝努利,由于欧拉当时和丹尼尔.贝努利在一块,他也因此得知了这个问题。而欧拉于1729 年完美的解决了这个问题,由此导致了 Γ 函数的诞生,当时欧拉只有22岁。
事实上首先解决 n! 的插值计算问题的是丹尼尔.贝努利,他发现,
如果 m,n 都是正整数,如果 m→∞ ,有
欧拉也偶然的发现 n! 可以用如下的一个无穷乘积表达
用极限形式,这个式子整理后可以写为
欧拉开始尝试从一些简单的例子开始做一些计算,看看是否有规律可循,欧拉极其擅长数学的观察与归纳。当 n=1/2 的时候,带入(*)式计算,整理后可以得到
欧拉和高斯都是具有超凡直觉的数学家,但是欧拉和高斯的风格迥异。高斯是个老狐狸,数学上非常严谨,发表结果的时候却都把思考的痕迹抹去,只留下漂亮的结果,这招致了一些数学家对高斯的批评;而欧拉的风格不同,经常通过经验直觉做大胆的猜测,而他的文章中往往留下他如何做数学猜想的痕迹,而文章有的时候论证不够严谨。 拉普拉斯曾说过:”读读欧拉,他是所有人的老师。”波利亚在他的名著《数学与猜想》中也对欧拉做数学归纳和猜想的方式推崇备至。
欧拉看到 (12)! 中居然有 π , 对数学家而言,有 π 的地方必然有和圆相关的积分。由此欧拉猜测 n! 一定可以表达为某种积分形式,于是欧拉开始尝试把 n! 表达为积分形式。虽然Wallis 的时代微积分还没有发明出来,Wallis 是使用插值的方式做推导计算的,但是Wallis 公式的推导过程基本上就是在处理积分 ∫10x12(1−x)12dx ,受 Wallis 的启发,欧拉开始考虑如下的一般形式的积分
Gamma 函数找到了,我们来看看第二个问题,为何 Gamma 函数被定义为 Γ(n)=(n−1)! , 这看起来挺别扭的。如果我们稍微修正一下,把Gamma 函数定义中的 tx−1 替换为 tx
要了解更多的 Gamma 函数的历史,推荐阅读
1.2 Gamma 函数欣赏
Each generation has found something of interest to say about the gamma function. Perhaps the next generation will also.
—Philip J.Davis
Gamma 函数从它诞生开始就被许多数学家进行研究,包括高斯、勒让德、威尔斯特拉斯、柳维尔等等。这个函数在现代数学分析中被深入研究,在概率论中也是无处不在,很多统计分布都和这个函数相关。Gamma 函数作为阶乘的推广,首先它也有和 Stirling 公式类似的一个结论
复平面上的Gamma 函数
Gamma 函数有很多妙用,它不但使得 (1/2)! 的计算有意义,还能扩展很多其他的数学概念。比如导数,我们原来只能定义一阶、二阶等整数阶导数,有了Gamma 函数我们可以把函数导数的定义延拓到实数集,从而可以计算 1/2 阶导数,同样的积分作为导数的逆运算也可以有分数阶。我们先考虑一下 xn 的各阶导数
由于k阶导数可以用阶乘表达,于是我们用Gamma 函数表达为
很容易想到对于一般的函数 f(x) 通过 Taylor 级数展开可以表达为幂级数,于是借用 xn 的分数阶导数,我们可以尝试定义出任意函数的分数阶导数。不过有点遗憾的是这种定义方法并非良定义的,不是对所有函数都适用,但是这个思想却是被数学家广泛采纳了,并由此发展了数学分析中的一个研究课题:Fractional Calculus,在这种微积分中,分数阶的导数和积分都具有良定义,而这都依赖于 Gamma 函数。
Gamma 函数和欧拉常数 γ 有密切关系,可以发现
进一步还可以发现 Gamma 函数和黎曼函数 ζ(s) 有密切联系,
logΓ(x)
从Gamma 函数的图像我们可以看到它是一个凸函数, 不仅如此, logΓ(x) 也是一个凸函数,数学上可以证明如下定理:
[Bohr-Mullerup定理] 如果 f:(0,∞)→(0,∞) ,且满足
那么 f(x)=Γ(x) , 也就是 Γ(x) 是唯一满足以上条件的函数。
如下函数被称为 Digamma 函数,
所以Gamma 函数在数学上是很有魅力的,它在数学上应用广泛,不仅能够被一个理科本科生很好的理解,本身又足够的深刻,具有很多漂亮的数学性质,历史上吸引了众多一流的数学家对它进行研究。美国数学家 Philip J.Davis 写了篇很有名的介绍 Gamma 函数的文章:“Leonhard Euler’s Integral:A Historical Profile of the Gamma Function”,文中对 Gamma 函数一些特性发现的历史进行了很详细的描述,这篇文章获得了 Chauvenet Prize(美国数学会颁发的数学科普最高奖)。
(本小节主要是数学欣赏,如果对某些概念不熟悉,就略过吧:-))
1.3 从二项分布到Gamma 分布
Gamma 函数在概率统计中频繁现身,众多的统计分布,包括常见的统计学三大分布( t 分布, χ2 分布, F 分布)、Beta分布、 Dirichlet 分布的密度公式中都有 Gamma 函数的身影;当然发生最直接联系的概率分布是直接由 Gamma 函数变换得到的 Gamma 分布。对Gamma 函数的定义做一个变形,就可以得到如下式子
Gamma(t|α,β) 分布图像
Gamma 分布在概率统计领域也是一个万人迷,众多统计分布和它有密切关系。指数分布和 χ2 分布都是特殊的Gamma 分布。另外Gamma 分布作为先验分布是很强大的,在贝叶斯统计分析中被广泛的用作其它分布的先验。如果把统计分布中的共轭关系类比为人类生活中的情侣关系的话,那指数分布、Poission分布、正态分布、对数正态分布都可以是 Gamma 分布的情人。接下来的内容中中我们主要关注 β=1 的简单形式的 Gamma 分布。
Gamma 分布首先和 Poisson 分布、Poisson 过程发生密切的联系。我们容易发现Gamma 分布的概率密度和 Poisson 分布在数学形式上具有高度的一致性。参数为 λ 的Poisson 分布,概率写为
这种数学上的一致性是偶然的吗?这个问题我个人曾经思考了很久,终于想明白了从二项分布出发能把 Gamma 分布和 Poisson 分布紧密联系起来。我们在概率统计中都学过 Poisson(λ) 分布可以看成是二项分布 B(n,p) 在 np=λ,n→∞ 条件下的极限分布。如果你对二项分布关注的足够多,可能会知道二项分布的随机变量 X∼B(n,p) 满足如下一个很奇妙的恒等式
这个等式反应的是二项分布和 Beta 分布之间的关系,证明并不难,它可以用一个物理模型直观的做概率解释,而不需要使用复杂的数学分析的方法做证明。由于这个解释和 Beta 分布有紧密的联系,所以这个直观的概率解释我们放到下一个章节,讲解 Beta/Dirichlet 分布的时候进行。此处我们暂时先承认(*)这个等式成立。我们在等式右侧做一个变换 t=xn ,得到
接下来我们继续玩点好玩的,对上边的等式两边在 λ→0 下取极限,左侧Poisson分布是要至少发生k个事件的概率, λ→0 的时候就不可能有事件发生了,所以 P(X≤k)→1 , 于是我们得到
看,我们从二项分布的一个等式出发, 同时利用二项分布的极限是Possion 分布这个性质,基于比较简单的逻辑,推导出了 Gamma 分布,同时把 k! 表达为 Gamma 函数了!实际上以上推导过程是给出了另外一种相对简单的发现 Gamma 函数的途径。
回过头我们看看(**)式,非常有意思,它反应了Possion 分布和 Gamma 分布的关系,这个和(*)式中中反应的二项分布和Beta 分布的关系具有完全相同的结构。把(**)式变形一下得到
其实(*)和(**)这两个式子都是陈希儒院士的《概率论与数理统计》这本书第二章的课后习题,不过陈老师习题答案中给的证明思路是纯粹数学分析的证明方法,虽然能证明等式成立,但是看完证明后无法明白这两个等式是如何被发现的。上诉的论述过程说明,从二项分布出发,这两个等式都有可以很好的从概率角度进行理解。希望以上的推导过程能给大家带来一些对 Gamma 函数和 Gamma 分布的新的理解,让Gamma 分布不再神秘。