问题标签 [expectation-maximization]

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 回答
28 浏览

expectation-maximization - expectation maximization with constriants

I have a very general question. As we all know, in Bayesian Inference, we introduce several hyper-parameters to define a prior PDF, together with the likelihood function, we can obtain a posterior PDF from which we can obtain a Maximum-A-posterior(MAP) solution. Once those hyper-parameters are determined, we can obtain the MAP solution.

And we can use Expectation Maximization (EM) to calculate those hyper-parameters. My question is what if some of the hyper-parameters have constraints?

To be more specific, we have $$N$$ hyper-parameters in total, where we denoted as $$\Phi\,=\,{\phi_1,\phi_2,...,\phi_N}$$, and we know the first $$K$$ parameters should be less than a pre-given value $$\theta$$,i.e., $$\phi_i<\theta, i=1,2,...K$$.

Any idea?

0 投票
1 回答
469 浏览

r - kmeans 结果作为 Mclust 中的初始参数

我正在做高斯混合模型。我已经在数据集上完成了 kmeans,我想使用 R 中 em 算法的初始参数的均值、方差和大小。我发现参数是 3 个列表,我尝试做同样的事情,但它给我以下错误:

数组(x,c(长度(x),1L)中的错误,如果(!is.null(名称(x)))列表(名称(x),:“数据”必须是向量类型,为“空” '

我的代码

有人可以告诉我应该如何将 kmeans 结果分配为初始参数吗?

0 投票
1 回答
149 浏览

r - R中的二项分布

我应用了这段代码,我一遍又一遍地得到这个错误。

错误:找不到对象“C_normpost”

谁能帮我这个?

另一方面,如果有人能想出一种方法来分离两个二项分布,那就太好了。

0 投票
1 回答
331 浏览

statistics - EM算法不工作

我正在尝试实现一个简单的 EM 算法。到目前为止,它似乎运行良好,除了方差迅速缩小到零的小问题,收敛于数据的平均值附近。(如果我不更新方差,它将完全收敛到平均值!)

据我所知,这是由于过于“加权”靠近中心的点 - 因此使算法降低了方差并缩小到零。当我将公式从更改第一的第二算法时,效果会更好(除了稍微高估方差,这是意料之中的)。这是我的代码有问题吗?

编辑:完整的,最小的工作示例。方差仍然收敛到 0,所以这表明我的算法可能有问题?

编辑2:我需要像贝塞尔的更正吗?(将结果乘以 n/(n-1))。如果是这样,当概率本身的总和可能小于一时,我将如何做呢?

0 投票
0 回答
221 浏览

python - 期望最大化实施

我不确定我对这段代码做错了什么。我正在尝试实现期望最大化算法(下面的伪代码截图),我认为我没有正确地最小化 Beta。关于如何解决这个问题的任何想法?

这是此处伪代码的链接 > EM Algo

下面是我为复制伪代码而编写的代码

具体的问题是如何最小化 beta 以使它们与我最初在这 500 次迭代中设置的真实 beta 收敛。

我在上面的行中收到此错误

最终,我希望能够找到围绕真实 Beta 的半径,即 Beta 的初始猜测与真实 Beta 之间的距离,在 500 次迭代中它仍会收敛到真实 Beta

0 投票
1 回答
185 浏览

python - 消除 OpenCV EM 检测到的误报

我正在用 Python 开发一种算法,该算法应该识别叶子上包含斑点的区域,以报告疾病的严重程度。在我的研究过程中,我发现了 LeafSnap 并受到了启发。因此,我尝试按照论文使用 OpenCV 期望最大化来分割图像上的叶子,该方法使用 S 和 V 形式的 HSV 颜色空间进行训练;但是,由于反射或阴影,它仍然会返回一些误报。

第一个样本

第二个样本

有人可以尝试给我任何提示以获得更好的结果吗?我没有应用任何预处理技术!


0 投票
1 回答
1825 浏览

python - 高斯混合模型 - 奇异矩阵

在计算高斯混合模型期间,我必须计算多元高斯分布的 pdf()。我使用scipy multivariate_normal()方法来做到这一点。现在在计算过程中,我遇到了一个错误,上面写着

LinAlgError:奇异矩阵

设置scipy multivariate_normal() = True 的 allow_singular 参数可以绕过这个错误,我得到了一个非常有意义的结果: 在此处输入图像描述

那么 scipy 如何“允许”奇点以及计算的后果是什么?--> 如果没有后果,严格来说,这个参数可以默认设置为TRUE(但不是)。

0 投票
1 回答
62 浏览

r - Extract parameters from EMCluster package

is there a way to extract parameters of the Gaussian distributions (mean and variance) using R's EMCluster package?

0 投票
0 回答
454 浏览

c++ - c++ OpenCV 如何在超像素上使用 EM 算法?

我需要使用 EM 算法superpixel使用 OpenCV 的期望最大化算法将我的每个图像分成两组。

我已经初始化了第 i 个超像素的图像和掩码,我将我的超像素的像素复制到了一个新的 Mat 中,这是 EM 算法的输入,但我不明白我怎么能不考虑黑色像素的背景。

我不需要丢失每个像素/超像素的空间信息。

超像素示例

那是我现在的代码

我尝试使用带有 Alpha 通道的广告图片,但仍考虑背景像素。

谢谢。

0 投票
1 回答
876 浏览

python - 是否可以在 hmmlearn 中拟合多元 GMHMM?

我知道可以将多个序列拟合到 hmmlearn 中,但在我看来,这些序列需要从相同的分布中提取。

是否可以使用从 hmmlearn 中的不同分布中提取的多个观察序列来拟合 GMHMM?

我的用例:我想用来自不同股票的 K 个金融时间序列拟合 GMHMM,并预测在指定时间产生 K 个股票价格的市场机制。所以矩阵输入的维度是 N(日期数)× K(股票数)。如果 hmmlearn 不能这样做,请告诉我是否可以使用 python 或 R 中的另一个包?谢谢你的帮助!