如何选择获得最大似然估计的方法

机器算法验证 最大似然 可能性
2022-04-07 01:35:38

给定一个示例随机变量X1,X2,,Xn,并假设我们有一个分布函数来描述数据(伯努利):

f(xi;p)=pxi(1p)(1xI)

这里p是未知参数,我们想用它找到最大似然估计器(MLE)。

据我了解,有两种方法可以获得 MLE:

  1. 是通过使用微积分,像这样在纸上做这导致我们获得p^=i=1nXin. 有了它,我们就可以插入X1,X2,,Xn值并获取实际值p^.

  2. 数值(迭代)搜索过程,例如在 R 中使用bbmle::mle2 包。

我的问题,给定一个问题,我们如何决定使用哪种方法来查找 MLE。用微积分或数字搜索程序?

1个回答

这里的 MLE 没有什么特别之处,因为您所要求的内容确实适用于任何优化问题。在这个更广泛的意义上,您想知道最大化/最小化函数所需的方法。

应用标准微积分方法进行优化,您应该能够获得函数临界点的方程,以及优化的二阶条件,这通常可以让您找到最大化点。通常最大化点是一个临界点,在这种情况下,优化涉及找到临界点方程的解。在某些问题中,临界点具有明确的封闭形式解决方案,如您问题中的示例所示。在其他问题中,临界点方程没有封闭形式的解,在这种情况下,通常通过迭代数值方法求解该方程(即,从某个任意点开始,然后越来越接近临界点通过一些迭代算法)。

区分这些情况的最佳方法是简单地尝试代数优化,看看这是否会导致您获得显式解决方案,或者需要数值方法的情况。如果可以得到最大值的显式封闭形式的解,那么你就完成了,不需要数值方法。如果您需要数值方法来找到临界点方程的解,那么您可以以代数方式形成这个迭代过程,或者依赖于诸如bbmlein之类的包R归根结底,优化需要熟悉微积分;凭借经验,您将能够预测哪些问题可以提供封闭形式的解决方案,哪些问题需要迭代方法。