【问题标题】:Topic Detection by Clustering Keywords通过聚类关键字进行主题检测
【发布时间】:2012-10-01 23:09:30
【问题描述】:

我想根据文本中出现的关键字进行文本分类,因为我没有样本数据可以使用朴素贝叶斯进行文本分类。

例子:

我的文档有一些单词,例如“family,mother,father,children ...”,文档的类别是family。或者“football,网球, score ...”,类别是sport

在这种情况下,最好的算法是什么?。有没有针对这个问题的 api java?

【问题讨论】:

    标签: machine-learning data-mining


    【解决方案1】:

    您拥有的是特征标签,即特征上的标签而不是实例。有几种方法可以利用这些方法,但通常假设除了特征标签之外还有实例标签(即文档上的标签)。这种范式被称为双重监督

    无论如何,我知道至少有两种方法可以单独从标记的特征中学习。第一个是Generalized Expectation Criteria,它惩罚模型参数偏离先验信念(例如,“moether”通常应该与“family”相关联)。这种方法的缺点是有点复杂,但优点是在Mallet 工具包中有一个封装良好的开源Java 实现(具体参见here)。

    第二种选择基本上是使用朴素贝叶斯并为已知的单词/类关联提供大量先验——例如,P("family"|"mother") = .8,或其他。所有未标记的单词都将被分配一些先验,可能反映了类分布。然后,您将有效地仅根据类的普遍性和标记的术语信息做出决策。解决proposed a model like this recently,并且有一个可用的网络工具。

    【讨论】:

      【解决方案2】:

      为此,您可能需要一个辅助数据集。您不能依靠您的数据集来传达“爸爸”、“父亲”和“丈夫”具有相似含义的信息。

      你可以尝试做我的同现来检测近义词,但这不是很可靠。

      可能 wordnet 等是消除这些词歧义的好地方。

      【讨论】:

        【解决方案3】:

        您可以下载freebase主题合集:http://wiki.freebase.com/wiki/Topic_API

        【讨论】:

          猜你喜欢
          • 2014-11-29
          • 2012-12-01
          • 2012-07-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-07-01
          • 2023-04-07
          • 2012-06-13
          相关资源
          最近更新 更多