1

我正在使用以下对数似然公式来比较文档和集群之间的相似性: log p(d|c) = sum (c(w,d) * log p(w|c)); c(w,d) 是一个词在文档中出现的频率,p(w|c) 是词 w 由集群 c 生成的可能性。

问题是基于这种相似性,文档经常被分配到错误的集群中。如果我将文档分配给具有最高 log p(d|c) 的集群(因为它通常是负值,我取 –log p(d|c)),那么它将是包含来自 a 的大量单词的集群文档,但这些单词在集群中的概率很低。如果我将文档分配给具有最低日志 p(d|c) 的集群,那么它将是仅在一个单词中与文档有交集的集群。有人可以解释一下如何正确使用对数似然吗?我尝试在java中实现这个功能。我已经看过谷歌学者,但没有找到文本挖掘中对数似然的合适解释。提前致谢

4

1 回答 1

1

您的对数似然公式对于使用多项模型描述文档是正确的(每个文档中的单词都是独立于多项分布生成的)。

要获得最大似然聚类分配,您应该采用使 log p(d|c) 最大化的聚类分配 c。log p(d|c) 应该是一个负数 - 最大值是最接近零的数字。

如果您得到没有意义的集群分配,这可能是因为多项式模型不能很好地描述您的数据。因此,您的问题的答案很可能是您应该选择不同的统计模型或使用不同的聚类方法。

于 2012-07-21T17:10:56.470 回答