R optim_log似然估计器和梯度在同一函数中

时间:2013-06-07 23:58:05

标签: r optimization gradient

我编写了一个函数,用于在R中执行最大模拟似然估计,这非常有效。

然而,问题是,optim不会调用相同的函数来估计似然值并同时估计梯度,就像matlab中的fminuc优化器那样。因此,每次如果optim想要更新梯度,则必须重复给定参数矢量的模拟。最后,optim调用了大约100倍的loglik函数来更新参数,另外还调用了loglik函数的50倍来计算梯度。

我想知道是否有一个优雅的解决方案来避免50个额外的模拟步骤,例如通过在每个步骤中存储估计的似然值和梯度。然后,在下一次调用似然函数之前,检查对于给定参数向量,信息是否已经可用。这可以通过在optim和loglik函数之间插入一个附加函数来完成。但这似乎很小。

有什么好主意吗?

干杯, 本

0 个答案:

没有答案