小编tim*_*sad的帖子

最大似然的 Hessian 矩阵 - 高斯与 R

我正在努力解决以下问题。简而言之:两个不同的软件包(Aptech 的 Gauss 和 R)在最大似然法中产生完全不同的 Hessian 矩阵。我使用相同的程序(BFGS),完全相同的数据,相同的最大似然公式(这是一个非常简单的 logit 模型),具有完全相同的起始值,令人困惑的是,我得到了相同的参数和 log-结果可能性。两个程序中只有 Hessian 矩阵不同,因此标准误差的估计和统计推断不同。

在这个特定的例子中,它并没有出现太大的偏差,但是模型的每一个增加的复杂性都会增加差异,所以如果我尝试估计我的最终模型,两个程序都会产生完全错误的结果。

有谁知道,这两个程序在计算 Hessian 矩阵的方式上有何不同,以及获得相同结果的正确方法可能是什么?

编辑:在 R (高斯)代码中,向量X ( alt ) 是自变量,由两列向量组成,第一列完全是 1,第二列是受试者的响应。向量y ( itn ) 是因变量,由一列和受试者的响应组成。该示例(R 代码和数据集)取自http://www.polsci.ucsb.edu/faculty/glasgow/ps206/ps206.html,只是作为重现和隔离问题的示例。

我已附上代码(高斯和 R 语法)和输出。

任何帮助将不胜感激。谢谢 :)

高斯:

start={ 0.95568840 , -0.20459156 };

library maxlik,pgraph;
maxset;
_max_Algorithm = 2;
_max_Diagnostic = 1;
{betaa,f,g,cov,ret} = maxlik(XMAT,0,&ll,start);
call maxprt(betaa,f,g,cov,ret);
print _max_FinalHess;

proc ll(b,XMAT);
local exb, probo, logexb, yn, logexbn, yt, ynt, logl;

    exb = EXP(alt*b);
    //print exb;
    probo = exb./(1+exb); …
Run Code Online (Sandbox Code Playgroud)

r mle hessian-matrix gauss

5
推荐指数
1
解决办法
954
查看次数

标签 统计

gauss ×1

hessian-matrix ×1

mle ×1

r ×1