【问题标题】:What is a good Java library for Parts-Of-Speech tagging? [closed]什么是用于词性标记的好的 Java 库? [关闭]
【发布时间】:2011-01-18 14:45:51
【问题描述】:

我正在寻找一个很好的 Java 开源 POS Tagger。这是我到目前为止的想法。

有人推荐吗?

【问题讨论】:

    标签: java nlp


    【解决方案1】:

    您是否希望在特定域中标记 POS?大多数通用标记器都接受过新闻专线文本的培训。通常,当您在特定领域(如生物医学文本)中使用它们时,它们的表现不佳。还有其他专门针对此类领域训练的标注器,例如用于生物医学文本的 dTagger (java)。

    对于新闻专线,Adwait Ratnaparkhi 的 MXPOST 非常好,是我推荐的。

    其他 Java 实现包括:

    1. MontyLingua
    2. Berkeley Parser(不是真正的 POS 标记器,但所有成熟的解析器通常都会包含 POS 标记器。Google for Java 句法解析器,你会发现很多。)
    3. QTag
    4. LBJ

    其他发帖人发的OpenNLPLingpipe也不错。

    可以在here 找到关于 POS 标记的最新信息。如您所见,LTAG-Spinal(另一张海报也提到过)目前排名最高,但各种标注器之间的差异并不大。我自己没有使用过 LTAG。

    另请注意,POS 标记的基准性能约为 90%。基线意味着 - (a) 用词典中最常见的 POS 标签标记每个单词,以及 (b) 将每个未知单词标记为名词。

    【讨论】:

    • 您的 MXPOST 链接指向带有压缩存档的 FTP 站点。我四处搜寻,除了它是一个人的 CS 论文外,找不到太多关于 MXPOST 的信息。我是否正确地假设 MXPOST 没有太多社区支持?
    • @Glenn 是的。尽管 OPENNLP 似乎是 MXPOST 的等效实现。我引用 OPENNLP 网站: 1. 如果您熟悉 Adwait Ratnaparkhi 的 maxent 实现的特征选择,那么您应该没有问题,因为我们的实现 [POS 标记器] 以与他相同的方式使用特征。 i> 和 2. 他 [Adwait's] 对 maxent 用于 NLP 和论文的介绍是真正使 opennlp.maxent 和我们的 Grok maxent 组件(POS 标记器、句尾检测器、标记器、名称查找器)成为可能的原因! OpenNLP 似乎有一个活跃的 sourceforge 社区。​​span>
    • 最后,LingPipe 对我来说效果最好。就能够轻松嵌入另一个系统而言,这是最好的。它在 POS 标记方面也做得很好。
    【解决方案2】:

    我使用OpenNLP 效果很好。您也可以查看MorphAdorner

    【讨论】:

      【解决方案3】:

      我使用过 LingPipe 和斯坦福的 POS Tagger。后者是state-of-the-art POS Tagger,但根据我的经验,它太慢了(尽管它们确实提供了不太准确的模型,但速度相当快)。当然,这始终取决于您要达到的目标,并且始终需要在速度和准确性之间进行权衡。

      我也曾经使用过基于 LBJ 的 NER 软件,虽然它非常准确,但源代码却一团糟。 LingPipe 和 Stanford 的源代码都非常干净且有据可查。

      你也可以看看LTAG-spinal。我还没有使用它,但从算法描述和列出的准确性来看,它肯定比你目前的替代品更好。

      希望对你有帮助。

      【讨论】:

      • Stanford 的最佳模型速度适中。但是,实际上,LTAG-spinal 又慢了 3 倍,而且好得微乎其微。对于一般用途,我们推荐 left3words 模型:使用它进行标记的速度与 Ratnaparkhi 或 OpenNLP 标记器相似或更好,但比两者都更准确。在 Stanford POS tagger FAQ 中找到more info
      • 我在那里找不到与 OpenNlp 的任何比较(仅与其他标记器)-我忽略了什么吗?
      • @ChristopherManning 我刚刚使用 Penn Treebank 进行了 10 折交叉验证。看来left3words比opennlp稍差。但是双向确实更好。您能否详细介绍一下您进行比较的数据?谢谢!
      • @benroth:很公平,OpenNLP 没有出现在那个常见问题的评论中。
      • @Wei Qiu:这条评论是基于我在 2010 年进行的比较各种标注器的实验。我只是查看了结果。我使用的是 opennlp-1.4.3(当时是当前的 Apache 之前的版本)。当时,opennlp 在 Penn Treebank WSJ 第 22-24 节上的准确率(最大模型)比斯坦福 POS 标注器(96.80% 对 96.87%)稍差,但速度要慢得多(10.71 秒对 6.92 秒)。我最近没有重复这个练习。
      猜你喜欢
      • 1970-01-01
      • 2010-11-06
      • 2011-06-25
      • 2011-03-08
      • 1970-01-01
      • 2010-09-06
      • 1970-01-01
      • 1970-01-01
      • 2010-12-31
      相关资源
      最近更新 更多