我是靠谱客的博主 繁荣翅膀,最近开发中收集的这篇文章主要介绍gamma函数stiriling公式_神奇的伽玛函数 | 伽玛函数和伽玛分布……,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

伽玛函数(Gamma函数),也叫欧拉第二积分,是阶乘函数在实数与复数上扩展的一类函数。伽玛函数在分析学、概率论、偏微分方程和组合数学中有重要的应用。

我们通常看到的伽玛函数是这样的:

2538f74c0307f9e7151e09ab42a3c32c.png

这到底是个什么东西?有什么用?欧拉又是怎么发现它的?

09b4515b75ecd67623efae919677a5fd.png

  欧拉大神

1伽玛函数的起因

发现伽玛函数的起因是数列插值。数列插值问题,通俗地说就是把数列的通项公式从整数定义域扩展到实数。例如数列1,4,9,16,.....可以用通项公式n²表达,即便n为实数的时候,这个通项公式也是良好定义的。直观的说,就是可以找到一条平滑的曲线y = x²,该曲线能够通过所有的整数点(x, x²),从而可以把定义在整数域的公式扩展到实数域。

759511f637344dea3d032f8e1b28e3e3.png

1728年,哥德巴赫开始处理阶乘序列的插值问题:1,2,6,24,120,720,...,既然可以计算2!, 3!,…,是否可以计算2.5!呢?把最初的一些(n, n!)的点画在坐标轴上,确实可以看到,能够画出一条通过这些点的平滑曲线。问题是,这条曲线是什么?

e14a0876d59f4e83e6e6bcd541b260d4.png

510bc0e71b803144464d14fd0c260e20.png

哥德巴赫无法解决阶乘往实数域上扩展的这个问题,于是写信请教尼古拉斯·贝努利和丹尼尔·贝努利两兄弟,由于欧拉当时正好和丹尼尔·贝努利在一块玩,他也因此得知了这个问题。之后欧拉于1729年完美地解决了这个问题,由此导致了伽玛函数的诞生。当时欧拉只有 22 岁,这让我感觉自己就是混吃等死的。

2发现伽玛函数

在某一个特殊的时刻,欧拉发现阶乘n!可以用一个无穷乘积表示:

3570da1590f2e503e62e5e006019787d.png

如果有m项乘积:

7f965e33550e6ab9e76802639290a414.png

当m远远大于n时,上式可继续计算:

67ebf0f228dd9bfbe7d925a9a7718ef7.png  

当m→∞时,无穷乘积的极限:

32d9d8d78a4e990ee5bbd4803d1d175b.png

很难想像在没有计算机的年代能够发现这个变态的无穷乘积,估计欧拉当年是根据极限倒推无穷乘积,然后对外宣称在机缘巧合下发现了无穷乘积。

值得注意的是,n!明显不等于③,③又是由②整理而来的,因此n!也不等于②,而是在m→∞时n!等于②或③的极限。以n = 2为例,n! = 2,m是2、50、100时,②的结果分别是1.5、1.9615384615384617、1.980392156862745,展开的越多,越接近于n!。

有了这个无穷乘积,欧拉便开用1/2代入①进行尝试:

faf20f5cfb0388e166f23ee2543c99ae.png

根号里面的东西是英国数学家沃利斯(John Wallis)在1665年写下的沃利斯公式:

f17175bac110502b6451c8fe17f0b697.png

于是欧拉把沃利斯公式折半:

87d7926aa178a54291b206208e75a558.png

π真是一个神奇的数字!

1665年牛顿还很小,还没有发明积分,沃利斯用各种巧妙的技巧得到了这个结论,推导过程实际上是在处理6f859e076b4b8f5da854f874daf13d3a.png。受沃利斯的启发,欧拉开始考虑如下的一般形式的积分:

a4562cf1809d76b30fec715af4ceb48e.png

此处n为正整数,a为正实数。利用分部积分:

60db42ae1fb714d5f4ef83bac5a37214.png

继续使用分部积分:

12aafcd5dd8f65d0525222c0a728393a.png

上面所有递推合并到一起就得到了最终的结果:

1b0ad168e61138e00d1de927882e6432.png

现在阶乘变成了积分的形式。然而这个式子的前提是n是正整数,无法推广到分数,欧拉继续研究如何化简这个表达式。a是一个任意实数,能否让a消失?一个惯用的方法是取极端值,a > 0的一个极端是无穷,看看让a趋近于无穷时会得到什么结果。这里欧拉使用的技巧是让a等于两个实数的商:

3d0ff6054ece96d87401774145fde662.png

等式两侧同时除以(f+g)(f+2g)…(f+ng):

5411665af791e4c8005feb587389c649.png

当f→1,g→0时,左侧趋近于n!,但是右侧出现了讨厌的0分母,此时为了简化计算:

eed0c041a7c856a375c4da92505efae6.png

将上式结论代入④:

0c43345e27c12228fe1cf706daa4bd5d.png

用求极限的方式去掉f和g:

55fe74b1719a4a4b0b56f0d6c004fc20.png

当f→1,g→0时h→0,(1-th)/h的极限变成了0/0的形式,在洛必达法则的帮助下,0/0形和∞/∞形的极限也是可以求解的。令u(h) = 1-th,v(h) = h,根据洛必达法则:

b97e4ac1f17b4d915b5d4dc078be4791.png

于是在对⑤的等式两侧求极限时,神奇的一幕出现了:

e5a98e192bc9d5d3e34d02a7e4102329.png

任意实数a已经消失了,n!变成了一个简洁的积分形式。继续变换:

1c50cd59374e5aae9ab2aa167b74293c.png

这就是欧拉最早定义的伽玛函数,实际上就是阶乘扩展到实数范围:

2669e12be85886e1f149e601e4af3ad4.png

但是欧拉后来修改了伽玛函数的定义,变成了:

9a1871d24d5a4c08641c61ff11f511c0.png

这也是现在我们所说的伽玛函数,⑥和⑦是两种表达,⑦更为常见,从积分域可以看出t和u的取值范围。

3伽玛函数的性质

欧拉在伽玛函数的推导中实际上引入了两类积分形式:

2145476d31216fc122943e1c1e74923a.png

后来这两个积分的参数做了-1的偏移,改为:

fbdc10ac105fa25e0f9ce086ab9e5d4e.png

B(α, β)现在成为贝塔函数或贝塔积分,Γ(x)实际上是在计算x – 1的阶乘,两个函数之间存在一些很好的关系:

e706e8a5209facd2727e9c4138635564.png

我们知道0! = 1,Γ(1)对此进行了解释:

cffa87186190ea8a95ced106190bfec2.png

来看一下Γ(x)的曲线:

f0e8b9a76bf6473730bce75d2bf8c621.png

 从Γ(x)的曲线可以看出Γ函数是一个凸函数,logΓ(x)也是一个凸函数:

f999b14640ed2daad499ae30320d3157.png

下面的的matlib代码可以绘制Γ(x)和logΓ(x)的曲线:

x = 0:0.1:10;plot(x, gamma(x));axis([0,4,0,6]);xlabel('x');ylabel('r(x)');figure;plot(x, lgamma(x));axis([0,8,-1,6]);xlabel('x');ylabel('logr(x)');
4伽玛分布

伽玛函数在概率统计中频繁现身,泊松分布、贝塔分布、狄克雷分布中都有伽玛函数的身影。当然,发生最直接联系的概率分布是直接由伽玛函数变换得到的伽玛分布。

为了便于看清伽玛分布,先把伽玛函数中的变量名称修改一下:

a6467e5eeb12fd0cf8e27d9973b4c277.png

等式两侧同时除以Γ(α):

76244758fb687ac115889de60ca8308f.png

这正好符合连续型概率分布的定义,被积函数就是伽玛分布的密度函数:

92009b64a89bc7ba2afdc05342813a91.png

如果令u = βx,则:

cba90f00cdc4d852f2a1bb93fcad62d0.png

于是我们得到了伽玛分布的一般形态:

87bcb67cd9b9fd82f92d00cb4446e338.png

其中α称为形状参数(shape parameter),决定了分布曲线的形状;β称为速率参数(rate parameter)或逆尺参数(inverse scale parameter),决定了曲线的陡峭程度:

α" style="display: inline-block; overflow-wrap: normal; max-width: none; max-height: none; min-width: 0px; min-height: 0px; float: none;">β" style="display: inline-block; overflow-wrap: normal; max-width: none; max-height: none; min-width: 0px; min-height: 0px; float: none;">8599877e4fc8dad16be6389c6c8fda47.png

可以看到, β之所以被称为逆尺参数,是因为1/β越大,曲线越陡峭。在matlab中,gamma分布的参数使用的是1/β:

x = 0:0.1:20;a = [1 2 3 5 9]; b = [0.5 0.5 0.5 1 2]; L(1, 1) = {''};for i = 1:size(a)(2)  g = gampdf(x, a(i), 1/b(i));  L(1, i) = ['alpha=', num2str(a(i)), ',beta=', num2str(b(i))];  plot(x, g, 'LineWidth',2);  hold on;endforlegend(L);xlabel('x');ylabel('f(x;alpha, beta)');axis([0,20,0,0.5]);

概率统计中的众多分布都和Gamma分布有密切关系。以泊松分布为例,随机变量X服从参数为λ的泊松分布分布X~Po(X; λ),其质量函数是:

f73118842f6e53611cd6f5da4de4d39f.png

在Gamma分布的密度中取α=r+1,β=1得到:

e239c432fc70f241330494b7e5eb3437.png

因此当β=1时,Gamma分布和泊松分布在形式上是完全一致的,只是泊松分布是离散的,而Gamma分布是连续的,可以直观地认为Gamma分布是泊松分布在正实数集上的连续化版本。

伽玛分布的期望值和方差分别为:

α" style="display: inline-block; overflow-wrap: normal; max-width: none; max-height: none; min-width: 0px; min-height: 0px; float: none;">β" style="display: inline-block; overflow-wrap: normal; max-width: none; max-height: none; min-width: 0px; min-height: 0px; float: none;">0df23a15b2ad889bffe767cea16116af.png

本文参考:https://cosx.org/2013/01/lda-math-gamma-function

11f6c42d9d79c8253fac1bdc9de38c82.png

最后

以上就是繁荣翅膀为你收集整理的gamma函数stiriling公式_神奇的伽玛函数 | 伽玛函数和伽玛分布……的全部内容,希望文章能够帮你解决gamma函数stiriling公式_神奇的伽玛函数 | 伽玛函数和伽玛分布……所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(87)

评论列表共有 0 条评论

立即
投稿
返回
顶部