【问题标题】:Part of speech tagging in OpenNLP vs. StanfordNLPOpenNLP 与 StanfordNLP 中的词性标注
【发布时间】:2015-10-17 22:02:50
【问题描述】:

我是词性 (pos) 标记的新手,我正在对文本文档进行 pos 标记。我正在考虑为此使用 OpenNLP 或 StanfordNLP。对于 StanfordNLP,我使用 MaxentTagger 并使用 english-left3words-distsim.tagger 来训练它。在 OpenNLP 中,我使用 POSModel 并使用 en-pos-maxent.bin 对其进行训练。这两个标注器(MaxentTaggerPOSTagger)和训练集(english-left3words-distsim.taggeren-pos-maxent.bin)有何不同,哪一个通常会给出更好的结果。

【问题讨论】:

    标签: nlp stanford-nlp opennlp part-of-speech


    【解决方案1】:

    两个词性标注器均基于最大熵机器学习。它们在用于确定 POS 标签的参数/特征上有所不同。例如,StanfordNLP pos tagger 使用:“(i) 对未知词的大写进行更广泛的处理;(ii) 用于消除动词时态歧义的特征;(iii) 用于消除介词和副词中的助词歧义的特征”(阅读更多in the paper)。 OpenNLP 的特性记录在我目前不知道的其他地方。

    这些模型可能是在不同的语料库上训练的。

    一般来说,很难说哪个 NLP 工具在质量方面表现更好。这实际上取决于您的域,您需要测试您的工具。有关详细信息,请参阅以下论文:

    为了切实解决这个问题,我正在开发一个Maven plugin and an annotation tool 来更有效地创建特定领域的 NLP 模型。

    【讨论】:

    • @H.Z.我的回答是否回答了你的问题?感谢您提供任何反馈。
    猜你喜欢
    • 1970-01-01
    • 2019-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多