何时使用梯度下降与蒙特卡洛作为数值优化技术


11

当一组方程无法解析求解时,则可以使用梯度下降算法。但是,似乎也可以使用蒙特卡罗模拟方法来解决没有解析解的问题。

如何分辨何时使用梯度下降以及何时使用蒙特卡洛?还是我只是将术语“模拟”与“优化”混为一谈?

非常感谢你!

Answers:


4

这些技术做不同的事情。

梯度下降是一种优化技术,因此在需要最大化的统计方法(MLE,MAP)中很常见。

蒙特卡洛模拟用于通过从分布中采样并评估样本上的某些函数来计算积分。因此,它通常与需要计算期望值的技术一起使用(贝叶斯推断,贝叶斯假设检验)。


那么梯度下降与微分(最大值,最小值)有关,而蒙特卡洛与积分有关?
维克多

梯度是导数的(众多)之一。因此,梯度下降与分化有关。但是我要说的是,“梯度下降使用导数来进行优化”和“蒙特卡洛使用采样来进行积分”,如果我不得不使用尽可能少的单词的话。
jlimahaverford 2015年

4

这些都是庞大的算法系列,因此很难为您提供准确的答案,但是...

当您要查找最大值(或最小值)时,渐变上升(或下降)很有用。例如,您可能正在寻找概率分布的模式,或使某些损失函数最小化的参数组合。找到这些极值所用的“路径”可以告诉您有关函数整体形状的一些信息,但这并不是故意的。实际上,效果越好,除了极值之外,您对其他所有知识的了解就越少。

蒙特卡洛方法以蒙特卡洛赌场命名,因为它们像赌场一样依赖于随机化。它可以以许多不同的方式使用,但是其中大多数集中在近似分布上。例如,马尔可夫链蒙特卡罗算法,找到了从复杂的概率分布中有效采样的方法。其他蒙特卡洛模拟可能会生成可能结果的分布。


“蒙特卡罗方法”通常是指你做什么的样品,而不是用于获取样本的方法。在MCMC中,“马尔可夫链”是指获取样本的过程。
jlimahaverford 2015年

真?我一直认为蒙特卡洛(Monte Carlo)暗示着某种随机化正在进行中,并不意味着更多。在MCMC中,确实涉及到马尔可夫链,但是您也从链中随机取样(因此,蒙特卡洛)/
Matt Krause

也许这是一个见解。如果我使用MCMC来近似后验分布的平均值,那么我将使用马尔可夫链上的随机游走近似地从我的非标准化分布中采样,而我将使用蒙特卡洛积分来近似均值。我认为采样方法是启用蒙特卡洛方法的工具。例如,我不会将拒绝采样称为蒙特卡洛方法,但是我可以想象有人一起使用它们。
jlimahaverford 2015年

综上所述,维基百科确实考虑了采用蒙特卡洛方法进行拒绝采样。因此,我的想法很有可能是完全错误的。
jlimahaverford 2015年

2

正如其他人所解释的那样,梯度下降/上升执行优化,即找到函数的最大值或最小值。蒙特卡洛是一种随机模拟的方法,即通过重复随机采样来近似累积分布函数。这也称为“蒙特卡洛积分”,因为连续分布的cdf实际上是整数。

梯度下降法和蒙特卡洛法之间的共同点是,它们在没有闭合形式解的问题中特别有用。只要解析解决方案可行,就可以使用简单的微分来找到任何凸函数的最大或最小点。如果不存在这样的解决方案,则需要使用迭代方法,例如梯度下降。蒙特卡洛模拟是相同的;您基本上可以使用普通积分来分析计算任何cdf,但不能保证总是有这种封闭形式的解决方案。通过蒙特卡洛模拟,该问题再次变得可解决。

您可以使用梯度下降进行模拟,也可以使用蒙特卡洛进行优化吗?简单回答是不。蒙特卡洛需要一个随机元素(一种分布)来进行采样,并且梯度下降法无法处理随机信息问题。但是,您可以将模拟与优化相结合,以产生功能更强大的随机优化算法,这些算法可以解决简单的梯度下降法无法解决的非常复杂的问题。一个例子是模拟退火蒙特卡洛。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.