2

expを実装しました。最大化アルゴリズムとそれが収束して と の値を正しく返すことをmusigmaさまざまな例で確認しました。

対数尤度をプロットしようとしましたが、正しい形式でどのように表示されるかわかりません。方程式は次のとおりです。 ここに画像の説明を入力 私のプロットでは、y は対数尤度値、x は反復回数です。 ここに画像の説明を入力

負の値は非常に奇妙です。可能性を正規化する必要がありますか? Exp.で対数尤度が意味するもの。最大化?

logLikelihood = 0;
for i = 1 : n
    logTemp = 0;
    for j = 1 : k
        logTemp =  logTemp + p(j) * mvnpdf(x(i,:), mu(j,:), sigma(:,:,j));
    end
    logLikelihood = logLikelihood + log(logTemp);
end
plot(iteration, logLikelihood,'r*');
hold on;
4

1 に答える 1

2

対数確率は、確率の対数 (p<1) であるため、常に負になります。あなたの確率(logpropではありません)は、通常のp = 10 ^ -1000の順序です。たとえば、10000 個の偏ったサイコロを振る最も可能性の高いシーケンスの確率は非常に低くなります (ただし、他のシーケンスはさらに可能性が低くなります)。

logpropability は、確率の消失を回避するための構成要素です。つまり、プログラムはそれらをゼロに丸めるだけであり、その場合、プログラムは、たとえば正規化がゼロになる除算などで破綻する可能性が高くなります。

于 2013-03-17T15:29:21.083 に答える