深入浅出LDA(1)
来源:互联网 发布:软件开发质量保证措施 编辑:程序博客网 时间:2024/05/27 00:50
作者:相国大人
- 阅读说明
- Gamma函数
- 1 Gamma函数
- 2 用Gamma函数来扩充定义
- 3 Gamma函数的由来
- 4 Gamma函数的性质
0. 阅读说明
与LDA紧密相关的必要且最小知识集合为博文的正文。凡是灰色框中的内容为拓展和补充内容,直接跳过并不会影响你的理解。灰色框指的是如下形式的段落:
这是一个灰色框示意段落
这部分内容为补充性内容,直接跳过并不会影响你的理解
1. Γ 函数
1.1 Γ 函数
我们这里不加证明的给出性质:
想要证明上面这个式子也不难,分布积分就可以了。
整数阶乘其实就是
因此,以后只要看到
1.2 用Γ 函数来扩充定义
请注意:
我们使用
其中
写成这个式子后,我们发现,如果
这个式子就是下一节我们要讲的
1.3 Γ 函数的由来
Γ 函数的由来
原作者:Rickjin
博主相国大人做了一些修改,精简和补充
参考文献:
《LDA-math-神奇的Gamma函数(1)》作者:Rickjin
《LDA-math-神奇的Gamma函数(2)》作者:Rickjin
《LDA-math-神奇的Gamma函数(3)》作者:Rickjin
欧拉发现
n! 可以用如下的一个无穷乘积表达
[(21)n1n+1][(32)n2n+2][(43)n3n+3]⋯=n!(1.6)
即limm→∞1⋅2⋅3⋯m(1+n)(2+n)⋯(m+n)(m+1)n=n!(1.7)
欧拉开始尝试从一些简单的例子开始做一些计算,看看是否有规律可循,欧拉极其擅长数学的观察与归纳。当 n=1/2的时候,带入(1.7) 式计算,整理后可以得到
(12)!=2⋅43⋅3⋅4⋅65⋅5⋅6⋅87⋅7⋅8⋅109⋅9⋯‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾√(1.8)
然而右边正好和著名的 Wallis 公式关联。Wallis 在1665年使用插值方法计算半圆曲线y=x(1−x)‾‾‾‾‾‾‾‾√ 下的面积(也就是直径为1的半圆面积)的时候,得到关于π 的如下结果
2⋅43⋅3⋅4⋅65⋅5⋅6⋅87⋅7⋅8⋅109⋅9⋯=π4(1.9)
于是,欧拉利用 Wallis 公式得到了如下一个很漂亮的结果:(12)!=π√2
对数学家而言,有π 的地方必然有和圆相关的积分。由此欧拉猜测n! 一定可以表达为某种积分形式,于是欧拉开始尝试把n! 表达为积分形式。Wallis 公式计算的是半圆曲线y=x(1−x)‾‾‾‾‾‾‾‾√ 下的面积,即处理积分∫10x12(1−x)12dx .受 Wallis 的启发,欧拉开始考虑如下的一般形式的积分
J(e,n)=∫10xe(1−x)ndx(1.10)
此处n为正整数,e为正实数。迭代地进行分部积分方法,容易得到
J(e,n)=1⋅2⋯n(e+1)(e+2)⋯(e+n+1)(1.11)
即:
n!=(e+1)(e+2)⋯(e+n+1)∫10xe(1−x)ndx(1.12)
欧拉令e=f/g ,这样有:
J(e,n)=∫10xfg(1−x)ndx=gn+1n![f+(n+1)g](f+g)(f+2g)⋯(f+ng)(1.13)
于是:
n!(f+g)(f+2g)⋯(f+ng)=f+(n+1)ggn+1∫10xfg(1−x)ndx(1.14)
欧拉看到这的时候,就比较激动了,他想,如果令t=1,g=0 左边就变成了n! ,可是右边积分变成了:
∫10x10(1−x)n0n+1dx
解这个式子比较困难,于是欧拉又做了一个变换:用xgf+g 来代替x ,这样,上面的积分变成:
∫10(1−xgf+g)ngf+gdx(1.15)
故(1.14) 式变成:
n!(f+g)(f+2g)⋯(f+ng)=f+(n+1)ggn+1∫10(1−xgf+g)ngf+gdx=f+(n+1)g(f+g)n+1∫10(f+g)n+1gn+1(1−xgf+g)ngf+gdx=f+(n+1)g(f+g)n+1∫10⎛⎝⎜⎜(1−xgf+g)g/(f+g)⎞⎠⎟⎟ndx(1.16)
这时,另f=1,g=0 我们可以得到:
n!=∫10(1−x00)ndx(1.17)
根据洛必达法则,有
limz→01−xzz=洛必达limz→0−xzlnx=−lnx(1.18)
因此
n!=∫10(−lnx)ndx(1.19)
如果令x=e−t 上式就变成了
n!=∫+∞0tne−tdt(1.20)
这样一来,整数的阶乘被写成了积分的形式,所以我们可以将整数的阶乘推广到实数域里,即定义一个在实数域的阶乘函数,Γ 函数。
欧拉早期定义的Γ 函数是:
就是上面的阶乘积分式子。但是后来欧拉修改了定义,将Γ(x)=∫∞0txe−tdt=x! Γ 函数定义为:
Γ(x)=∫+∞0tx−1e−tdt=(x−1)!(1.21)
之所以这样做,有数学家猜测,一个可能的原因是欧拉研究了如下积分:
这个函数现在称为Beta 函数。如果Gamma 函数的定义选取满足B(m,n)=∫10xm−1(1−x)n−1dx(1.22) Γ(n)=(n−1)! , 那么有
B(m,n)=Γ(m)Γ(n)Γ(m+n)(1.23)
非常漂亮的对称形式。可是如果选取Γ(n)=n! 的定义,令
E(m,n)=∫10xm(1−x)ndx
则有
E(m,n)=Γ(m)Γ(n)Γ(m+n+1)
这个形式显然不如B(m,n) 优美,而数学家总是很在乎数学公式的美感的。
1.4 Γ 函数的性质
Γ 函数的性质
作者:相国大人
1. 与欧拉常数的关系
我们把调和级数与自然对数差值的极限叫做欧拉常数γ :
γ=limn→∞(∑k=1n1k−ln(n))(1.24)
其中:γ=−dΓ(x)dx|x=1(1.25)
为了证明上面这个式子,我们需要做两件事:
第一:我们需要知道dnΓ(x)dxn=∫∞0tx−1e−t(lnt)ndt(1.26)
得到这个式子并不难:
∵Γ(x)=∫+∞0tx−1e−tdt=(x−1)!(1.27)
∴dΓ(x)dx=∫∞0dtx−1dxe−tdt=∫∞0tx−1(lnt)e−tdt(1.26)
同理,以此类推可以得到任意阶导数(1.26)
第二:我们需要知道令dΓ(x)dx|x=1=∫∞0e−xlnxdx(1.27) (1.26) 中的x=1 即可得到此式。
这样,我们只需要证明:
即可,下面是具体的证明过程。γ=−∫∞0e−xlnxdx(1.28)
在证明之前,我们需要知道几个常见的公式:
xn−1=(x−1)(xn−1+xn−2+⋯+x+1)(1.29)
∫10xk−1dx=1k(1.30)
∫n11xdx=lnn(1.31)
证明:
由(1.24,1.30,1.31) 立即可得
将γ=limn→∞(∑k=1n∫10xk−1dx−∫n11xdx)=limn→∞(∫10∑k=1nxk−1dx−∫n11xdx)(1.32) (1.29) 代入(1.32) 立即得到:
(1.32)=limn→∞(∫101−xn+11−xdx−∫n11xdx)=1−x→tlimn→∞(∫101−(1−t)n+1tdt−∫n11xdx)=t→xn+1limn→∞⎛⎝⎜⎜∫n01−(1−xn+1)n+1xdx−∫n11xdx⎞⎠⎟⎟=limn→∞⎛⎝⎜⎜∫101−(1−xn+1)n+1xdx+∫n11−(1−xn+1)n+1xdx−∫n11xdx⎞⎠⎟⎟=limn→∞⎛⎝⎜⎜∫101−(1−xn+1)n+1xdx−∫n1(1−xn+1)n+1xdx⎞⎠⎟⎟(1.33)
把上面的式子极限放到积分里面(之所以可以这样做是因为两部分都有极限)得到:
(1.32)=∫101−e−xxdx−∫∞1e−xxdx=−(∫10e−xlnxdx+∫∞1e−xlnxdx)+(1−e−x)lnx∣∣10−(e−x)lnx∣∣+∞1(1.34)
对于式子(1.34) ,后面两项均为0:
limx→0(1−e−x)lnx=limx→0lnx11−e−x=洛必达limx→01x−e−x(1−e−x)2=limx→02(1−e−xe−x)−e−x+xe−x=limx→02(1−e−x)x−1=0
limx→+∞(e−x)lnx=limx→+∞lnxex=洛必达limx→+∞1xex=0
因此有:
γ=−∫∞0e−xlnxdx=−dΓ(x)dx|x=1
阅读全文
0 0
- 深入浅出LDA(1)
- 深入浅出讲解LDA主题模型(一)
- 深入浅出LDA(2)
- 深入浅出LDA(3)
- 深入浅出LDA(4)
- LDA(FISHER)与核LDA
- LDA(LDA文档主题生成模型)
- 线性判别分析(LDA)
- LDA(一)
- LDA(二)
- 线性判别分析 (LDA)
- 线性判别分析(LDA)
- LDA浅析(一)
- 线性判别分析(LDA)<->
- 线性判别分析(LDA)
- LDA(Fisher判别)
- 线性判别分析(LDA)
- 线性判别分析(LDA)
- web服务器 http请求返回 不同返回码的 对应 语意
- NOIP2010第一道 ---导弹拦截(摘自洛谷题解)
- VS2013 BCGControlBar 25 遇到的问题记录
- MySQL数据库学习笔记
- [Google Guava] 6-字符串处理:分割,连接,填充
- 深入浅出LDA(1)
- Go学习笔记(五)
- Understanding LSTM Networks
- configuration.output.path: The provided value "./" is not an absolute path!
- hibernate简介
- JAVA 构建使用 Native 库
- 接下来的学习计划
- sdnu1081.2013
- python 正则表达式 (持续更新)