sách gpt4 ai đã đi

Giá trị log-likelihood [tích cực] không hợp lý từ hàm matlab "fitgmdist" matlab fitgmdist

In lại 作者:行者123 更新时间:2023-12-02 04:44:15 28 4
mua khóa gpt4 Nike

我想用高斯混合模型拟合数据集,数据集包含大约 120k 个样本,每个样本有大约 130 个维度。当我使用 matlab 执行此操作时,我运行脚本(簇号为 1000):

gm = fitgmdist(data, 1000, 'Options', statset('Display', 'iter'), 'RegularizationValue', 0.01);

我得到以下输出:

  iter log-likelihood
1 -6.66298e+07
2 -1.87763e+07
3 -5.00384e+06
4 -1.11863e+06
5 299767
6 985834
7 1.39525e+06
8 1.70956e+06
9 1.94637e+06

对数似然大于 0!我认为这是不合理的,也不知道为什么。

有人能帮帮我吗?

1 Câu trả lời

首先,这不是你的数据集有多大的问题。下面是一些使用非常小的数据集产生类似结果的代码:

options = statset('Display', 'iter');
x = ones(5,2) + (rand(5,2)-0.5)/1000;
fitgmdist(x,1,'Options',options);

这产生

iter log-likelihood
1 64.4731
2 73.4987
3 73.4987

您当然知道对数函数(自然对数)的范围从 -inf 到 +inf。我猜你的问题是你认为日志的输入(即后验函数)应该以 [0,1] 为界。好吧,后验函数是一个 pdf 函数,这意味着对于非常密集的数据集,它的值可能会非常大。

PDF 必须是正数(这就是我们可以对它们使用对数的原因)并且必须积分为 1。但它们不受 [0,1] 的限制。

你可以通过降低上面代码中的密度来验证这一点

x = ones(5,2) + (rand(5,2)-0.5)/1;
fitgmdist(x,1,'Options',options);

这产生

iter log-likelihood
1 -8.99083
2 -3.06465
3 -3.06465

因此,我宁愿假设您的数据集包含多个重复(或非常接近)的值。

关于matlab - 来自 matlab "fitgmdist"函数的不合理 [正] 对数似然值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34705665/

28 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com