全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
9939 6
2015-02-08
悬赏 200 个论坛币 已解决
复制代码


MATLAB代码如上,第96行在执行时会出现
警告: 矩阵接近奇异值,或者缩放错误。结果可能不准确。RCOND =  1.718855e-21。
> In gmm>calc_prob at 96
  In gmm at 40
  In gmm_accuracy at 4


代码是从这个网页获取的:http://blog.pluskid.org/?p=39&cpage=1#comments
关于这个问题也有相关的分析和解释:http://freemind.pluskid.org/mach ... ariance-estimation/

我不要求搞懂原理,只需要代码能够运行就好!
200个论坛币悬赏

最佳答案

Yafey 查看完整内容

楼主你好~我目前也遇到了这个问题。经过改错后已经可以运行: 问题原因:代码中没有处理singular问题 改正: 加几句代码,处理singular问题 把你第96行的function换成这个就好 function Px = calc_prob() Px = zeros(N, K); for k = 1:K Xshift = X-repmat(pMiu(k, : ), N, 1);%x-u lemda=1e-5; conv=pSigma(:, :, k)+lemda*diag(diag(ones(D)));%这里处理singular问 ...
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-2-8 13:43:03
楼主你好~我目前也遇到了这个问题。经过改错后已经可以运行:
问题原因:代码中没有处理singular问题
改正: 加几句代码,处理singular问题
把你第96行的function换成这个就好
function Px = calc_prob()
        Px = zeros(N, K);
        for k = 1:K
            Xshift = X-repmat(pMiu(k, : ), N, 1);%x-u
            lemda=1e-5;
            conv=pSigma(:, :, k)+lemda*diag(diag(ones(D)));%这里处理singular问题,为协方差矩阵加上一个很小lemda*I
            inv_pSigma = inv(conv);%协方差的逆
            tmp = sum((Xshift*inv_pSigma) .* Xshift, 2);%(X-U_k)sigma.*(X-U_k),tmp是个N*1的向量
            coef = (2*pi)^(-D/2) * sqrt(det(inv_pSigma));%前面的参数
            Px(:, k) = coef * exp(-0.5*tmp);%把数据点 x 带入到 Gaussian model 里得到的值
        end
    end
end

200。。请拿来啊~~
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-2-8 13:52:50
改成pinv
就行了
给我两百吧!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-2-8 14:19:29
magicsun 发表于 2015-2-8 13:52
改成pinv
就行了
给我两百吧!
试过,
错误使用 svd
SVD 的输入不能包含 NaN 或 Inf。

出错 pinv (line 18)
[U,S,V] = svd(A,'econ');

出错 gmm/calc_prob (line 96)
            inv_pSigma = pinv(pSigma(:, :, k)+eye(D));

出错 gmm (line 40)
        Px = calc_prob();
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-2-8 14:30:56
悬赏还可以再增加,只要能解决问题!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-2-23 21:32:59
我跑DSGE的过程中遇到了同样的问题,不知道是MATLAB版本的问题还是咋滴啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群