文档聚类的对数似然相似度

我使用以下对数似然公式来比较文档与聚类之间的相似性: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)),那么它将是包含文档中许多词的聚类,但这些词在聚类中的概率很低。如果我将文档分配到log p(d|c)最低的聚类中,那么它将是与文档仅在一个词上有交集的聚类。能有人解释一下如何正确使用对数似然吗?我尝试在Java中实现这个函数。我已经在谷歌学术上查找过,但没有找到关于文本挖掘中对数似然的合适解释。提前感谢


回答:

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

为了获得最大似然的聚类分配,您应该选择使log p(d|c)最大化的聚类分配c。log p(d|c)应该是一个负数——最大值是最接近零的数。

如果您得到的聚类分配不合理,很可能是由于多项式模型不能很好地描述您的数据。因此,您问题的答案很可能是您应该选择不同的统计模型或使用不同的聚类方法。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注