java - 改进 CoreNLP 词性标注器和 NER 标注器?

标签 java nlp

CoreNLP 词性标注器和名称实体识别标注器开箱即用,非常好,但我想进一步提高准确性,以便整个程序运行得更好。为了更多地解释准确性——在某些情况下 POS/NER 被错误标记。例如:

  • “监督汽车制造”被标记为 NNP-NN-NN

而不是 VB* 或类似的东西,因为它是一个类似动词的短语(我不是语言学家,所以对此持保留态度)。

那么提高准确度的最佳方法是什么?

  • 是否有更好的 POS/NER 模型可以整合到 CoreNLP 中?
  • 我应该改用其他 NLP 工具吗?
  • 或者创建带有异常(exception)规则的训练模型?

最佳答案

首先,“Oversaw car manufacturing”甚至不是一个句子,它本身也没有多大意义 :-) 这些模型通常是在整个句子上训练的。如果您在此处输入“He oversaw car manufacturing”[1],它使用的是 CoreNLP,那么您会得到更理智的结果。

让我们假设您的结果仍然不准确。除非您使用一些小示例模型,否则没有“更好”的模型本身。它总是取决于领域,甚至“默认”模型也是在某些领域训练的,例如报纸。

很可能您必须自己训练模型,不是使用异常(exception)规则,而是针对特定的文本域,例如谈论汽车或制造,或具有特定文体等的文本。

[1] http://nlp.stanford.edu:8080/corenlp/process

关于java - 改进 CoreNLP 词性标注器和 NER 标注器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25796914/

相关文章:

java - GWT 项目中的 tomcat-maven-plugin。 : org. codehaus.mojo 和 org.apache.tomcat.maven 插件有什么区别

python - 对于列表中的每个二元组,打印它在其他列表中出现的次数 - python NLTK

python - 单词A和B的语义相似度 : Dependency on frequency of A and B in corpus?

c# - asp.net 中的内容而不是 java 中的 httpsessionlistener

java - 在android中使用dom解析器获取值列表

tensorflow - 如何在 NER 上使波斯语的 spacy 训练更快

nlp - 文本摘要: how to choose the right n-gram size

nlp - 如何将单词嵌入向量组合为一个向量?

java - GWT 代码服务器使用 Maven 原型(prototype)在新生成的项目中找不到模块

java - 将 Jackson 与 Jersey 一起使用时,JsonTypeInfo 不会序列化