问题标签 [log-likelihood]
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.
r - 边际似然估计中的数值问题
我尝试使用迭代过程来估计模型选择的贝叶斯设置中的边际似然。如果您对具体细节感兴趣,请参阅this或this paper。我与数字问题斗争了很长一段时间,所以我想我不妨在这里试一试,试试运气。我试图使下面的内容尽可能简短、可重复和通用。
那个设定
目标是运行表单的迭代过程
获得对我的模型的边际似然y的估计(这个迭代过程将很快收敛到y的某个值)。您在公式中看到的所有其他变量都是标量或已计算的参数可能性,因此它们是固定值。每次迭代中唯一变化的项是y的值。所以基本上我有长度为 L 的向量p_l和q_l以及长度为 M 的向量p_m和q_m。到目前为止一切都很好。
问题
不幸的是,上面公式中使用的似然值不是对数似然(我计算并存储在向量中),而是实际的似然。这是我遇到的数字问题的根源。您可能知道对数量级很大的负对数似然求幂的老问题。我的对数似然性非常负,以至于 exp(log似然性) 几乎总是为 0。网上已经有一些类似的问题有答案,但这些解决方案都没有对我有用。
我试过的
我认为可能有希望的是利用 exp(log(x)) = x 并扩展分数这一事实,因此您可以将上面的公式重写为
其中C是您选择的常数。有关遵循相同想法的证明,请参见本文的附录。如果可以找到一个合适的C值,使总和中的项可以管理,那么问题就解决了。然而,在我的例子中p_l、q_l、p_m和q_m在数量级上是非常不同的,所以无论我尝试减去或添加C的什么值,我都会再次出现下溢或上溢。因此,现在我真的不知道如何从这里开始。我感谢任何评论和提示。
代码和数据
您可以在此处找到一些示例数据(即具有对数似然的向量)。迭代过程的代码是
谢谢!
r - R- 脆弱 Cox 模型的似然函数
我正在尝试为具有伽马脆弱性的 cox 模型的似然函数编写 R 代码。我知道 R 中有一些包可以很容易地做到这一点。但是我想为我自己的数据而不是使用包编写具有伽马脆弱性的 cox 模型的自定义似然函数。
由于我认为自己是 R 和统计学的高级初学者,因此我需要这方面的帮助来学习如何在 R 中逐步完成它。我想知道是否有任何可用的代码可以参考?
我感谢任何帮助和建议。
python - 在 Scikit-learn 的 LDA 实现中,“困惑度”(或“分数”)应该上升还是下降?
我想知道 Scikit-learn 的 LDA 实现中的困惑和分数是什么意思。这些功能是模糊的。
至少,当模型更好时,我需要知道这些值是增加还是减少。我已经搜索过,但不知何故不清楚。我觉得困惑应该下降,但我想要一个关于这些值应该如何上升或下降的明确答案。
r - R中的似然比检验
我有 2 个在 R 中运行的线性模型
和
我想进行似然比检验,看看添加的额外因素是否显着。我该怎么做,如何解释显示的结果?
非常感谢
python - PYMC2 零概率错误
我有一个具有统一先验的 6 个参数的模型:
我有一个返回对数似然值的自定义似然函数:
calculate_probability
在给定参数值和观察数据的情况下,返回此模型的对数似然度的 my 函数在哪里。由于某种原因,当 MCMC 采样时:
并且程序满足 if 条件 ( parameter5<parameter4
) 我收到此错误:
我想知道是否有人知道我可能做错了什么?
machine-learning - 深度学习日志似然
我是深度学习领域的新手,我使用对数似然法来比较 MSE 指标。谁能展示如何计算以下 2 个预测输出示例,每个示例有 3 个输出神经元。谢谢
yt = [ [1,0,0],[0,0,1]]
yp = [ [0.9, 0.2,0.2], [0.2,0.8,0.3] ]
python - 联合正态先验分布的后验
我有一些关于高斯推理的基本问题。
我有以下数据:
编辑:我假设剂量反应 logit(θ) = α + βx 的简单回归模型,其中 logit(θ) = log(θ / (1-θ))。θ 代表给定剂量 x 的死亡概率。
我想在 (α,β) 上创建一个联合正态先验分布,其中 α ∼ N(0,22),β ∼ N(10,102) 和 corr(α,β) = 0.5,然后计算 a 中的后验密度先验周围的点网格(α:0±4,β:10±20)。
首先,我创建了以下联合正态先验分布:
这是正确的吗?
其次,如何计算网格中的后验密度?