KDE工具箱中的KL Divergence给Inf

时间:2013-04-28 07:59:55

标签: matlab infinite

我正在使用KDE工具箱进行工作..在这里,我计算第1类中的点集和第2类中的点集的kde。然后我在它们之间采用KLD -

        Bandwidth = 'Hall';
        p = kde(X(:,find(Y(:,1)>=0.5)),Bandwidth);
        q = kde(X(:,find(Y(:,2)>=0.5)),Bandwidth);
        divergence = kld(p,q);

这里X get可以是nx9向量。 (n - 九维点)

对于某些情况,我将分歧值称为“Inf”。我试图找出原因。如果您有任何建议,请让我知道。任何帮助表示赞赏。

链接到UCI KDE工具箱 - http://www.ics.uci.edu/~ihler/code/kde.html

谢谢

1 个答案:

答案 0 :(得分:1)

如果你看一下KL Divergence的公式。

enter image description here

一个原因可能是分母中的一个或多个值必须为零!

log(0) = Inf/undefined