问题标签 [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 回答
204 浏览

r - R: 将 mle 与 pnorm 一起使用时,标准误差不合理

向量a中的值被视为真实值,我想使用 mle 估计它们。我通过添加噪声 N(0,sigma^2)从a中生成100 个“扰动”向量。对于每个受干扰的向量,我按降序对它们进行排序。假设观察到的顺序是:x_1>x_4>x_5>x_3>x_2 我们想计算观察到这个顺序的概率,我们这样做:P(X_1-X_4>0|a)*P(X_4-X_5>0 |a)*P(X_5-X_3>0|a)*P(X_3-X_2>0|a) (我们忽略依赖关系),其中 X_1-X_4 ~ N(a[1]-a[4],2 *std^2) 等等。

通常在使用 mle 时使用密度函数,但这里我们使用 pnorm。运行下面的代码后我遇到的问题是,对于估计,标准误差都是相同的(而且太大了)。我做错了什么?

R代码:

0 投票
3 回答
39876 浏览

r - MLE error in R: initial value in 'vmmin' is not finite

Suppose I have 2 data.frame objects:

I want to do MLE. With df1 everything is ok:

But if I would do the same task with df2 I would receive an error:

How can I overcome it?

0 投票
2 回答
1425 浏览

r - 在三参数 Weibull cdf 上运行最大似然估计时出错

我正在研究在许多夏天(尽管首先我只是想让一年的工作)随着时间的推移(以不规则的时间间隔拍摄)苍蝇的累积出现。累积出现遵循 sigmoid 模式,我想创建 3 参数 Weibull 累积分布函数的最大似然估计。我一直尝试在fitdistrplus包中使用的三参数模型不断给我一个错误。我认为这一定与我的数据结构有关,但我无法弄清楚。显然,我希望它将每个点读为x(学位日)和y(emergence) 值,但似乎无法读取两列。我得到的主要错误是“数学函数的非数字参数”或(代码略有不同)“数据必须是长度大于 1 的数字向量”。下面是我的代码,包括在数据框中添加的列,df_dd_em用于累积出现和出现百分比,以防万一。

0 投票
0 回答
227 浏览

probability - 什么是隐藏(未观察到的)数据?GMM 中的隐藏数据是什么?

我正在一起学习EM算法和GMM

我不理解维基百科中描述的 EM 算法:

EM算法用于在方程不能直接求解的情况下找到统计模型的最大似然参数。通常,这些模型除了未知参数和已知数据观察之外还涉及潜在变量。

直到现在,我对这种情况下的潜在变量感到好奇。

也就是说,要么数据中存在缺失值,要么可以通过假设存在其他未观察到的数据点来更简单地制定模型。

这句话,你能举一个关于丢失或未观察到的数据的简单例子吗?

不幸的是,维基百科中有一个例子,但我很难理解这个概念,我对高斯混合模型中的隐藏数据感到好奇。

我认为均值、协方差和加权因子是未知参数。

那么高斯混合模型中的隐藏数据是什么?

还是我的想法错了?

0 投票
2 回答
2965 浏览

r - Poisson MLE 的手卷 R 代码

我正在尝试编写自己的函数来了解泊松分布在最大似然估计框架中的行为(因为它适用于 GLM)。

我熟悉 R 的便捷glm功能,但想尝试手动滚动一些代码以了解发生了什么:

我输入时的 R 输出maxLike如下:

我假设我optim在我的函数中指定错误,但我对 MLE 的具体细节或约束优化不够熟悉,无法理解我缺少什么。

0 投票
1 回答
1137 浏览

r - 将函数参数传递给 mle() 以获得对数似然

我正在使用 mle() 方法在 R 中手动估计具有多个预测变量的 logit 回归。我无法在下面的函数中传递计算对数似然度所需的额外参数calcLogLikelihood

这是我计算负对数似然的函数。

}

这是我的 x 和 y 数据矩阵的样子:

这是对我的函数的调用:

这是我的错误信息:

这个错误似乎即将到来,因为我没有calcLogLikelihood正确传递所需的 x 和 y 参数,但我不确定出了什么问题。如何修复此错误?

0 投票
0 回答
450 浏览

r - 如何从 mle2 对象计算置信带?

mle2从R 中的对象绘制置信带的最佳方法是什么?predict(object, interval = 'confidence')您可以与对象一起使用的典型方法lm似乎不适用于mle2对象。

我找到了计算线性模型置信带的数学(https://stats.stackexchange.com/questions/101318/understanding-shape-and-calculation-of-confidence-bands-in-linear-regression)但我想要绘制非线性关系的置信带。

无论用于创建mle2对象的确定性函数是什么,我都非常喜欢 R 函数来计算和绘制波段!

可在此处找到可重现的示例:错误:“'vmmin' 中的初始值不是有限的”不在 mle2() 中而是在 confint() 中

0 投票
0 回答
102 浏览

r - 为什么在手动设置子集时在 mle2 中返回一个错误

更新:对于一个最小的示例向下滚动(不重现相同的错误但不同的结果

在我的实际问题之前要注意一点:我对 R 很陌生,所以我希望我说得通。我尝试使用 google 和 R 的调试功能来解决问题(尽管我对它们还不太熟悉)。

除其他外,我已阅读:

关于何时使用 %in% 以及何时使用 == 子集的问题

子集与通过 [] 处理行和列

这把我带到了 Hadley Wickham 的非常好的博客,在那里我将进一步研究 R 的调试功能,他的文章: 非标准评估

我的问题

我有一个名为data的数据框,其中包含公司债券的数据以及债券的到期收益率、寿命和评级等数据。

我想使用 bbmle 包中的 mle2 函数(它是 optim 函数的包装器)来估计期限结构的模型,请参见下面的代码。然而,残差正态分布的假设是否合理尚有待商榷:

方法1:“手动”子集工作得很好:

方法 2:当我尝试从 mle2 函数中调用子集时,会发生错误:

因此,由于方法 1 有效,而方法 2 应该是一种更方便的方法来做完全相同的事情,而不必为每个评级引入新变量,我认为我的代码中一定有问题。正如我所说,我尝试使用调试方法,结果在 R 机房深处的某个地方出现了完全不同的错误。

在产生的错误中,我从R Mailing list 中找到了这个,这里的问题是分数而不是整数被提供为 dbinom 分布的大小参数。但我看不出这是我的代码中的问题。

提前致谢

B.洛尔

根据要求,我尝试提出一个使用示例性数据的最小示例。最小示例不会产生错误,但会产生两组不同的估计值。这很奇怪,因为据我了解,这两个功能都应该做同样的事情

0 投票
1 回答
876 浏览

r - 了解 R 的 mle2 函数及其参数

如果这个问题很愚蠢,我很抱歉,因为所有人都出去了。

我想利用 R 的 mle2() 函数来找到特定统计函数的最佳参数;我认为它使用梯度下降来做到这一点?所以我的电话是这样的:

我的似然函数特别需要 a1、b1、d2 和 b2 在 [0,1] 范围内(0 到 1 之间的实数)。如果 mle2() 使用梯度下降,我假设它在优化阶段开始将提到的参数移动到负范围 - 但我希望它特别这样做,我希望它搜索 0 和 1 之间的参数。

有办法吗?我在这里真的很无知吗?

提前致谢。

0 投票
2 回答
1252 浏览

r - 最小化负对数似然:由初始值引起的 optim() 错误

我想通过直接最小化负对数似然(不使用 glm)来获得拟合到某些比例数据的累积正态曲线的最大似然参数(MLE)。对于引入 optim() 的一些初始值没有问题:

但是,如果我使用实际上更接近 MLE 参数的初始值

我收到以下错误:

似乎该错误是由负对数似然评估中的一些无穷大引起的。我发现如果我使用log.ppnorm 选项提高精度,我不会得到错误

但问题是,除了pnorm我还想拟合a + b * pnorm带有ab常量的曲线,在这些情况下我不能用来log.p提高精度。