下载  >  人工智能  >  机器学习  > 《LDA数学八卦》电子书

《LDA数学八卦》电子书 评分

在机器学习中,LDA(Latent Dirichlet Allocation)是非常常用的模型之一,常用于文本建模,类似于SVD,PLSA等模型,可用于浅层语义分析;但其所涉及的数学知识较多较杂,这本电子书就是详解LDA模型中的重要数学知识;
0.1开篇 在 Machine learning中,LDA是两个常用模型的简称: Linear discrim- inant, Analysis和 Latent dirichlet allocation,在这篇文章中我们主要八卦的 是后者。IDA是一个在文本建模中很著名的模型,类似于SVD,PISA等模 型,可以用于浅层语义分析在文本语义分析中是一个很有用的模型。很不幸 的是,这个模型中涉及的数学知识有点多,包括 Gamma.两数, Dirichlet分布 Dirichlet- Multinomial共轭, Gibbs sampling, Variational inference,贝叶斯文 本建模,PLSA建模,以及LDA文本建模。 这篇文章的主要日标,就是科普在学习理解LDA模型中,需要了解的 些重要的数学知识。预设的读者是做自然语言处理、机器学习、数据挖掘方向 的工程师,要读懂这篇科普,需要的数学基础知识基本上不超过陈希孺先生的 《概率论与数理统训》这本书。 文章标题挂上“八卦”两字,因为八卦意味着自由、不拘束、可以天马行 空,细节处理上也难免有不严谨的地方:当然我也希望八卦是相对容易理解的, 即便他是关于数学的八卦。对于本文中的任何评论,欢迎发信到我的新浪微博 帐号 rickjinl,或者是邮箱 zhihiuijing@ gMail coir 0.2神奇的 Gamma函数 0.2.1 Gamma函数诞生记 学高等数学的时候,我们都学习过如下一个长相有点奇特的 Gamma函数 通过分部积分的方法,可以推导出这个函数有如下的递归性质 r(x+1)=x(x) 于是很容易证明,T(x)函数可以当成是阶乘在实数集上的延拓,具有如下性质 r(m)=(7-1) 学习了 Gamma函数之后,多年以来我一直有两个疑问: 1.这个长得这么怪异的个函数,数学家是如何找到的; 2.为何定义r函数的时候,不使得这个函数的定义满足r(n)=m!而 是T(m)=(m-1 最近翻了一些资料,发现有不少文献资料介绍 Gamma函数发现的历史, 要说清楚它需要一定的数学推导,这儿只是简要的说一些主线。 1728年,哥德巴赫在考虑数列插值的问题,通俗的说就是把数列的通项公 式定义从整数集合延拓到实数集合,例如数列1,4.9,16,…可以用通项公式2 白然的表达,即便为实数的时候,这个通项公式也是良好定义的。直观的说 也就是可以找到一条平滑的曲线通过y=x2通过所有的整数点(m,n2)这些点, 从而可以把定义在整数集上的公式延拓到实数集合。天哥德巴赫开始处理阶 乘序列1,2,6,24,120.720,……,我们可以计算2!,3!,是否可以计算25!呢?我们把 最初的一些(mn,m!)的点画在坐标轴上,确实可以看到,容易画出一条通过这些 点的平滑曲线 THE FACTORIALS 23456 8 2624120 504040,320 9 Figurc1:通过(m,m)的曲线 哥德巴赫无法解决这个问题,丁是写信请教尼古拉斯.贝努利和他的弟弟丹 尼尔.贝努利,由丁欧拉当时和丹尼尔.贝努利在一块,他也因此得知了这个问 题。而欧拉于1729年完美的解决了这个问题,由此导致了T函数的诞生,当时 欧拉只有22岁。 事实上首先解决〃!的插值计算问题的是月尼尔.贝努利,他发现,如 果m,n都是正整数,如果m→∞,有 r几 (m+ →m! (1+m)(2+m)…(m-1+m) 于是用这个无穷乘积的方式可以把m!的定义延拓到实数集合。例如,取m=2.5, 3 m足够大,基于上式就可以近似计算出2.5!。 欧拉也偶然的发现nl!可以用如下的一个无穷乘积表达 1)m+1 m+3 用极限形式,这个式子整理后可以写为 1·2.3·m m→∞(1+n)(2+m)…(m+m) (m1+1)=n 左边可以整理为 1·2·3·m 7+ (1+m)(2+n)…(m 1.2.3 n+1)(m+2)m (m+1)”2 (1+n)(2+n)…m(m+1)(m+2)…(m+m) m7+1)n m-1)(m+2)…(m+m) m+1 n 1+k 所以(1)、(2)式都成立。 欧拉开始尝试从一些简单的例子开始做一些计算,看看是否有规律可循, 欢拉极其擅长数学的观察与归纳。当n=1/2的时候,带入(1)式计算,整理后 可以得到 44.66·88·10 2 3.35.57.79.9 然而右边正好和著名的wali公式关联。 Wallis在1665年使用插值方法计算半 圆线y=√x(1-x)下的面积(也就是直径为1的半圆面积)的时候,得到关 于丌的如下结耒, 2·44·66·88·10 3·35·57·79.9 4 于是,欧拉利用Wali公式得到了如下一个很漂亮的结果 欧拉和高斯都是具有超凡直觉的数学家,但是欧拉和高斯的风格迥异。高 斯是个老狐狸,数学上非常严谨,发表结果的时候却都把思考的痕迹抹去,只 留下漂亮的结果,这招致了一些数学家对高斯的批评;而欧拉的风格不同,经 常通过经验直觉做大胆的猜测,而他的文章中往往留下他如何做数学猜想的痕 迹,而文章有的时候论证不够严谨。拉普拉斯曾说过:”读读欧拉,他是所有人 Figure2:大数学家欧拉 的老师。”波利亚在他的名著《数学与猜想》中也对欧拉做数学归纳和猜想的方 式推崇备至。 欧拉看到()中居然有丌,对数学家而言,有丌的地方必然有和圆相关的 积分。由此欧拉猜测n!一定可以表达为某种积分形式,丁是欧拉开始尝试把n! 表达为积分形式。虽然 Wallis的时代微积分还没有发明出来, Wallis是使用 插值的方式做推导计算的,但是 Wallis公式的推导过程基本上就是在处理积 分x2(1-m)=dx,受 Wallis的启发,欧拉开始考虑如下的般形式的积分 J (e, n) 此处n为正整数,e为正实数。利用分部积分方法,容易得到 J(e+1 e+1 重复使用上述迭代公式,最终可以得到 1.2·7 +1)(c+2)…(c+m+1) 于是欧拉得到如下一个重要的式子 n!-(e+1)( (e+n+1)/x°(1-x) 接下来,欧拉使用了一点计算技巧,取e=/9并且令f→1,9→0,然后对上 式右边计算极限(极限讣算的过程此处略去,推导不难,有兴趣的同学看后面的 参考文献吧),于是欧拉得到如下简洁漂亮的结果: (logt)dt 欧拉成功的把n!表达为了积分形式!如果我们做一个变换t=e-",就可以得到我 们常见的 Galma函数形式 ' eda 于是,利用上式把阶乘延拓到实数集上,我们就得到 Gamma函数的一般形式 T(aH Figure 3: T(r) Gamma函数找到了,我们来看看第二个问题,为何 Gamma函数被定义 为r(π)=(η-1),这看起来挺别扭的。如果我们梢微修正一下,把 Gamma图 数定义中的t-1替换为t T(L) 这不就可以使得r(n)-m!了嘛。欧拉最早的 Gamma函数定义还真是如上所示, 选择了r(m)-m!,可是欧拉不知出于什么原因,后续修改了Gama函数的定 义,使得r(m)=(n-1)!。而随后勒让德等数学家对 Gamma函数的进一步深入 研究中,认可了这个定义,于是这个定义就成为了既成事实。有数学家猜测, 个可能的原因是欧拉研究了如下积分 B(m, n) 这个函数现在称为Beta函数。如果(ama凶数的定义选取满足I(m)=(7-1)!, 那么有 B T(mr(n m.2 r(m +n 6 非常漂亮的对称形式。可是如果选取rn)=ml!的定义,令 E(m,n=/am(1-c)"dx 则有 E(m, n) T(mr(n) r(m+n+1) 这个形式显然不如B(m,m)优美,而数学家总是很在乎数学公式的美感的。 要了解更多的(amna函数的历史,推荐阅读 Philip Davis, Leon hard Fuler's Integra A Historical Profile of the Gamma function Jacques Dutka, The early history of the Factorial Function Detlef gronna. Why is the gamma function so as it is? 0.22 Gamma函数欣赏 Each generation has found something of interest to say about the gamma function. Perhaps the neat generation will also Philip Davis Gamma函数从它诞生开始就被许多数学家进行研究,包括高斯、勒让德、 威尔斯特拉斯、柳维尔等等。这个函数在现代数学分析中被深入研究,在概率 论中也是无处不在,很多统计分布都和这个函数相关。 Gamma函数作为阶乘 的推广,首先它也有和 Stirling公式类似的一个结论 T(a)v2Te-ax"t-i 另外, Gamma函数不仅可以定义在实数集上,还可以延拓到整个复平面上。 Figure4:复平面上的 Gamma函数 Gamma函数有很多妙用,它不但使得(1/2)!的计算有意义,还能扩展很 多其他的数学概念。比如导数,我们原来只能定义一阶、二阶等整数阶导数, 有了Gama函数我们可以把函数导数的定义延拓到实数集,从而可以计算1/2 阶导数同样的积分作为导数的逆运算也可以有分数阶。我们先考虑下x”的 各阶导数 first derivative nX second derivative third derivative nn k-th derivative n(m-1)(n-2)…(n-k+1)x6 (n-k) Figure5:mn的各阶导数 由于k阶号数可以用阶乘表达,于是我们用 Gamma函数表达为 r(n+1) (7-k+1) 于是基于上式,我们可以把导数的阶从整数延拓到实数集。例如,取n=1,k 我们可以计算x的阶导数为 r(1+1 (1-1/2+1) 很容易想到对于一般的函数f()通过Tyor级数展开可以表达为幂级数,于 是借用xn的分数阶导数,我们可以尝试定义出仟意函数的分数阶导数。不过 有点遗憾的是这种定义方法并非良定义的,不是对所有函数都适用,但是这 个思想却是被数学家广泛采纳了,并由此发展了数学分析中的一个研究课题 Fractional( alculus,在这种微积分中,分数阶的导数和积分都具有良定义,而 这都依赖于 Gamma函数。 Gamma函数和欧拉常数?有密切关系,可以发现 dr( dl=1-im(1+2+2+…+--0gm) → 进一步还可以发现 Gamma函数和黎曼卤数(s)有密切联系 ((s)=1++ 而函数涉及了数学中著名的黎曼猜想和素数的分布定理。希尔伯特曾说,如 果他在沉睡1000年后醒来,他将问的第一个问题便是:黎曼猜想得到证明了吗? Figurc 6 log r(a) 从 Gamma函数的图像我们可以看到它是个凸函数,不仅如此,logr(ax) 也是个凸函数,数学上可以证明如下定理 定理0.21( Bohr-Mullerup)如果f:(0,∞)→(0,∞),且满足 f(1)-1 2.f(x+1)=xf(x) 3.logf(x)是凸函数 那么f(x)=I(x),也就是r(x)是唯一满足以上条件的函数。 如下数被称为 Digamma函数, 业(x)= d log r(z) T 这也是一个很重要的函数,在涉及求 Dirichlet分布相关的参数的极大似然估计 时,往往需要使用到这个函数。 Digamma函数具有如下一个漂亮的性质 y(x+1)=(x)+ 函数亚(x)和欧拉常数?以及函数都有密切关系,令 d m+l log t yn(c) +1 则业o(x)=y(x),可以证明 v(2)=1

...展开详情
所需积分/C币:13 上传时间:2019-01-04 资源大小:1.95MB
举报 举报 收藏 收藏 (1)
分享 分享

评论 下载该资源后可以进行评论 2

tersisfu 一直没搞懂LDA,认真学习中
2019-06-03
回复
qq_22189569 有帮助, 谢谢楼主
2019-05-14
回复
LDA数学八卦.pdf

LDA学习必备资料,详细科普LDA中所用到的数学知识。

立即下载
LDA算法原理详解及代码,另附LDA数学八卦高清PDF版笔记整理

里面文档对LDA算法有详细的推导过程,并带有仿真代码;同时还有一份关于LDA所运用的数学知识笔记。希望对你们学习和理解LDA算法有帮助!!!

立即下载
LDA数学八卦-带书签

讲解LDA模型,相当经典的文档,里面的数学推理严谨。自制书签,方便查阅。有需要的自行下载。

立即下载
LDA数学八卦 Rickjin

在 Machine Learning 中,LDA 是两个常用模型的简称: Linear Discriminant Analysis 和 Latent Dirichlet Allocation, 在这篇文章中我们主要八卦的是后者。LDA 是一个在文本建模中很著名的模型,类似于 SVD, PLSA 等模型, 可以用于浅层语义分析,在文本语义分析中是一个很有用的模型。很不幸的是,这个模型中涉及的数学知识有点多, 包括 Gamma 函数, Dirichlet 分布, Dirichlet-Multinomial 共轭, Gibbs Sampling, Variational Inference,

立即下载
rickjin的LDA数学八卦

深入理解LDA主题模型的数学原理。 一个函数:gamma函数 四个分布:二项分布、多项分布、beta分布、Dirichlet分布 一个概念和一个理念:共轭先验和贝叶斯框架 两个模型:pLSA、LDA 一个采样:Gibbs采样

立即下载
lda数学八卦

lda原理介绍说明,详细介绍lda实现原理

立即下载
LDA 数学八卦

主题模型,顾名思义,就是对文字中隐含主题的一种建模方法。还是上面的例子,“苹果”这个词的背后既包含是苹果公司这样一个主题,也包括了水果的主题。当我们和第一句进行比较时,苹果公司这个主题就和“乔布斯”所代表的主题匹配上了,因而我们认为它们是相关的。 在这里,我们先定义一下主题究竟是什么。主题就是一个概念、一个方面。它表现为一系列相关的词语。比如一个文章如果涉及到“百度”这个主题,那么“中文搜索”、“李彦宏”等词语就会以较高的频率出现,而如果涉及到“IBM”这个主题,那么“笔记本”等就会出现的很频繁。如果用数学来描述一下的话,主题就是词汇表上词语的条件概率分布 。与主题关系越密切的词语,它的条件概

立即下载