问题标签 [mle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
138 浏览

r - 调整 mle2 以使用未命名的参数向量和附加算法

晚上好,

我有一个关于mle2()语法的快速问题。我有一个optim()优化以下形式的对数似然函数的例程(并且运行了数千次,所以我不想改变太多):

其中p是 1-8 个参数的向量,X是输入matrixy是响应/自变量向量,ModelFunction是指定模型形状的函数,CostFunction指定模型似然在期间应包含的成本/损失函数优化。该代码与以下代码一起使用optim()maxLik[maxLik] 可以正常工作:

但我不能让它轻松地与mle()or一起工作mle2()。我只想在 mle2 中运行它以将可能性轮廓与我自己的轮廓函数进行比较。在我深入研究mle2()代码之前,有谁知道是我的未命名参数向量还是导致函数崩溃的附加参数?我以为是前者,但我很困惑,因为它给我的错误是:

并且该论点已明确指定。我真的无法在小插图中找到任何带有附加参数的示例。

PS:我本来只是对这篇文章发表评论,因为它显然是相关的: 从命名列表创建函数参数(使用 stats4::mle 的应用程序) 但我没有足够的评论点。

更新:根据 Ben 的小插图,mle2() 有选项vecpar和选项应该允许指定“与 Optim 兼容”。parnames我简化了目标函数(对数似然)以包含硬编码损失和模型示例。结果如下所示:

但是,这仍然不起作用。我很难对其进行故障排除,因为我不知道如何在调用后引用目标函数中的参数mle2。如果我在print(p[2])里面包含调试命令ObjFun2,它会返回NULL。所以参数不再是向量形式。然而print(A)强制函数粉碎。同样,我在网上找不到任何可行的例子,所以也许我错过了一些非常简单的东西。

我不能使用parameters上面链接中 Ben 建议的参数,因为我的模型不是线性的。

我试图查看内部,mle2()但在调用calc_mle2_function().

0 投票
1 回答
547 浏览

r - R中的digamma函数的根

我正在研究最大似然估计器,其中一个参数是使用 digamma 函数估计的。我正在尝试使用 uniroot 来求解方程,但无法这样做。这是我的代码:

这会产生以下错误:

根据曲线,第一个错误是有道理的,但第二个让我卡住了。我完全有可能误解了如何找到 digamma 函数的根,或者 R 中有一个可以提供帮助的数值包(也许是 rootsolve?)。不知道我在这里缺少什么 - 任何提示将不胜感激。谢谢!

0 投票
0 回答
1044 浏览

r - R中的MLE负对数似然截断正常

我的代码有点卡住了,如果有人可以帮助我,我将不胜感激!

下面的代码基本上是我编写的一个函数,它使您能够根据具有参数 μ、σ2 和 τ 的截断正态分布的 iid 样本 x1、...、xn 计算 μ 和 σ2 的最大似然估计值,其中τ 的值是已知的。

这是我到目前为止的代码。

我现在需要编写另一个函数,比如 trnorm.MLE(),它将使用上面的函数来计算 μ 和 σ2 的最大似然估计,给定一个观测向量 x1、...、xn 和 τ 值。

我决定我的函数应该有以下参数:

  • x:观察向量,
  • tau :阈值,
  • theta0:向量,元素为 theta0[1] 初始猜测 mu 和 theta0[2] 初始猜测 sigmasq。

理想情况下,trnorm.MLE() 函数应该返回一个长度为 2 的向量,其中第一个分量是 μ 的 MLE,第二个分量是 σ2 的 MLE。

作为猜测,我写了这个:

我知道这远非正确,但我无法正确表达!我收到各种错误

nlm 中的错误(tnorm.negll,theta0,xbar,SS,n,tau,hessian = TRUE):“nlm”优化器中的函数值无效

或者

if (theta[2] >= 0) { 中的错误:需要 TRUE/FALSE 的缺失值

谢谢您阅读此篇。希望有人可以指导我完成这个?

此致。

编辑:更改了 tnorm.negll 返回结果的方式

0 投票
0 回答
2567 浏览

r - R中指数分布的MLE

如果我们从指数分布生成一个随机向量:

现在我们要使用之前生成的向量exp.seq来重新估计 lambda
所以我们定义对数似然函数:

现在optim或者nlm我得到了非常不同的 lambda 值:

我对正态分布使用了相同的技术,并且效果很好。那么这里的错误在哪里呢?
我使用我自己的指数分布定义,因为我稍后需要更改它。

0 投票
0 回答
1523 浏览

r - R dlmMLE 多元模型估计

我正在尝试使用dlmMLER 中的函数作为dlm库的一部分来估计多元状态空间模型,但不断收到以下错误。

我使用的模型规格是:

我在 R 中指定了模型,如下所示。

当我运行代码时,它会执行到dlmMLE调用函数的最后一行并返回我提到的错误。

我一直在努力解决这个问题一段时间,但似乎无法让模型工作。有人可以提供一些帮助吗?将不胜感激。

谢谢,斯特凡

0 投票
1 回答
2383 浏览

nlp - 理解 nlp 中的最大似然

我试图了解 NLP 中的最大可能性是什么。我在看这个演示文稿:

http://www.phontron.com/slides/nlp-programming-en-01-unigramlm.pdf(第 9 页)

我在 Manning 和 Schütze 的《统计语言处理基础》中看到了相同的方程式。

现在,我理解 MLE 的方式是这样的:

我知道实验的结果,我知道潜在的分布,但我不知道单个事件的概率。MLE 通过查找在我的观察中最有可能的概率值来帮助我找到概率(或更一般的未知参数)。

所以 MLE 告诉我,当任何单个事件的概率为 x 时,观察某个事件的概率最高。

现在,如果这是真的,为什么那张幻灯片上没有微积分?为什么在这种情况下 MLE 是用一个简单的分数计算的?我不明白这与 MLE 有什么关系?

我想,MLE 是一个最大化问题......?

0 投票
1 回答
2031 浏览

r - 使用最大似然在 R 中拟合 Logit/Probit 回归模型

这里有一个简单的问题:

我想知道 R 中是否有任何函数可以使用最大似然法拟合logit/probit回归模型?

目前,我正在使用由函数给出的 OLS 方法glm(我希望它确实使用 OLS 方法)......我在某处读到使用 OLS 方法的概率/logit 模型可能存在附带参数问题。所以我想试试 MLE 方法。

提前谢谢你的帮助!

0 投票
0 回答
2967 浏览

python - Python中多元正态分布的最大似然估计

我正在尝试使用 MLE 拟合多元正态分布的参数。

拟合单变量正态分布很好:

但是遇到了一些多变量问题(将数组分配给变量时出错):

似乎优化算法不适用于任意数组/矩阵。我必须将平均数组和协方差矩阵解压缩到一个平面数组中以最小化。

显然,当维度增加或对于一些更复杂的分布而没有封闭形式的解决方案时,这将很快失控。在这里做什么最好?谢谢你。

0 投票
1 回答
84 浏览

r - R非数字参数错误中的最大似然估计

这是我对负二项分布的似然函数。我做错了什么来得到这个错误?

  • k + z 中的错误:二元运算符的非数字参数

R代码

0 投票
0 回答
90 浏览

r - 如何使用最大似然估计器估计线性模型的复合误差项?

我正在尝试使用 stats4 和 bbmle 包估计具有 R 中复合误差项的线性模型的参数。

对于模型规范,请单击
线性模型规范对数似然函数规范

到目前为止我的代码:

模型的输出:

我得到了微不足道的估计(估计应该至少更接近使用 OLS 估计器产生的估计),而且我得到了上面显示的警告消息。我的头现在乱了。对你的帮助表示感谢。

问候。