Answers:
这些技术做不同的事情。
梯度下降是一种优化技术,因此在需要最大化的统计方法(MLE,MAP)中很常见。
蒙特卡洛模拟用于通过从分布中采样并评估样本上的某些函数来计算积分。因此,它通常与需要计算期望值的技术一起使用(贝叶斯推断,贝叶斯假设检验)。
这些都是庞大的算法系列,因此很难为您提供准确的答案,但是...
当您要查找最大值(或最小值)时,渐变上升(或下降)很有用。例如,您可能正在寻找概率分布的模式,或使某些损失函数最小化的参数组合。找到这些极值所用的“路径”可以告诉您有关函数整体形状的一些信息,但这并不是故意的。实际上,效果越好,除了极值之外,您对其他所有知识的了解就越少。
蒙特卡洛方法以蒙特卡洛赌场命名,因为它们像赌场一样依赖于随机化。它可以以许多不同的方式使用,但是其中大多数集中在近似分布上。例如,马尔可夫链蒙特卡罗算法,找到了从复杂的概率分布中有效采样的方法。其他蒙特卡洛模拟可能会生成可能结果的分布。
正如其他人所解释的那样,梯度下降/上升执行优化,即找到函数的最大值或最小值。蒙特卡洛是一种随机模拟的方法,即通过重复随机采样来近似累积分布函数。这也称为“蒙特卡洛积分”,因为连续分布的cdf实际上是整数。
梯度下降法和蒙特卡洛法之间的共同点是,它们在没有闭合形式解的问题中特别有用。只要解析解决方案可行,就可以使用简单的微分来找到任何凸函数的最大或最小点。如果不存在这样的解决方案,则需要使用迭代方法,例如梯度下降。蒙特卡洛模拟是相同的;您基本上可以使用普通积分来分析计算任何cdf,但不能保证总是有这种封闭形式的解决方案。通过蒙特卡洛模拟,该问题再次变得可解决。
您可以使用梯度下降进行模拟,也可以使用蒙特卡洛进行优化吗?简单回答是不。蒙特卡洛需要一个随机元素(一种分布)来进行采样,并且梯度下降法无法处理随机信息问题。但是,您可以将模拟与优化相结合,以产生功能更强大的随机优化算法,这些算法可以解决简单的梯度下降法无法解决的非常复杂的问题。一个例子是模拟退火蒙特卡洛。
这个答案部分是错误的。您确实可以将Monte Carlo方法与梯度下降相结合。您可以使用蒙特卡洛方法来估计损失函数的梯度,然后梯度下降可使用该函数来更新参数。分数梯度估计器是一种流行的估计梯度的蒙特卡洛方法,例如可用于强化学习。参见Shakir Mohamed等人的机器学习中的蒙特卡洛梯度估计(2019)。有关更多信息。