stanford-nlp - 如何在斯坦福 NLP 中强制 NER 类
问题描述
从历史上看,我曾使用 OpenNLP 进行自然语言处理。我决定在我的最新项目上尝试一下斯坦福 NLP,但遇到了 NER 的问题。具体来说,当处理特定令牌时(TOKENP
在我的示例中),我希望它将其归类为TOKENP
.
我已经多次通读文档,通读对此相关 SO 帖子的响应,但我无法可靠地分配它TOKENP
。
这是规则文件(labels.txt
):
TOKENP TOKENP PERSON 5
这是输入文件(tmp.txt
):
Michael Scott Dunder Mifflin TOKENP
这是我正在使用的命令:
java -mx4g edu.stanford.nlp.pipeline.StanfordCoreNLP -annotators 'tokenize,ssplit,pos,lemma,ner' -ner.fine.regexner.mapping labels.txt -outputFormat text -file tmp.txt
这是输出:
Tokens:
[Text=Michael CharacterOffsetBegin=0 CharacterOffsetEnd=7 PartOfSpeech=NNP Lemma=Michael NamedEntityTag=PERSON]
[Text=Scott CharacterOffsetBegin=8 CharacterOffsetEnd=13 PartOfSpeech=NNP Lemma=Scott NamedEntityTag=PERSON]
[Text=Dunder CharacterOffsetBegin=14 CharacterOffsetEnd=20 PartOfSpeech=NNP Lemma=Dunder NamedEntityTag=PERSON]
[Text=Mifflin CharacterOffsetBegin=21 CharacterOffsetEnd=28 PartOfSpeech=NNP Lemma=Mifflin NamedEntityTag=PERSON]
[Text=TOKENP CharacterOffsetBegin=29 CharacterOffsetEnd=35 PartOfSpeech=NNP Lemma=TOKENP NamedEntityTag=PERSON]
Extracted the following NER entity mentions:
Michael Scott Dunder Mifflin TOKENP PERSON
我希望TOKENP
作为输入中的最后一个标记来接收TOKENP
基于规则的类。
解决方案
问题是规则系统不会分解“Michael Scott Dunder Mifflin TOKENP”的实体。
我可以尝试添加一个选项,在所有情况下都可以在任何内容上写入基于规则的标签(或者看看是否已经有这样的选项!)
推荐阅读
- javascript - React-Router-Dom:页面内容不显示
- javascript - Webpack - Typescript - Babel Loader 不转译 JSON 导入
- javascript - 动态应用 Mixin 的问题 - A-FRAME
- django - Django formtools 用户注册密码
- javascript - 找到总和最大的递增子序列
- c# - 我们可以在 Angular 中调用 C# resx 进行本地化吗?
- python - 如何解决大量的 MAE & MSE?
- azure-application-insights - 使用 Python SDK 和 CLI 客户端凭据查询 Azure Application Insights API 时的 MissingApiVersionParameter
- powershell - 如何在类似于 test-netconnection 的终端内固定“移动”数据?
- vaadin-flow - 是否可以在 Vaadin 14 流标签中绘制 HTML 内容?