命名实体识别在实践中的应用

2024-05-15 15:00:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我是一个尝试学习NLP的新手,我想更好地理解命名实体识别(NER)在实践中是如何实现的,例如在流行的python库中,比如spaCy。在

我理解它背后的基本概念,但我怀疑我遗漏了一些细节。 从文档中,我不清楚例如对文本和注释数据进行了多少预处理;使用了什么统计模型。在

你知道如果:

  • 为了工作,文本必须在训练模型之前经过分块,对吗?否则它就不能执行任何有用的操作了?在
  • 在培训模型之前,文本和注释是否通常是标准化的?所以如果一个命名实体位于句子的开头或中间,它仍然可以工作吗?在
  • 特别是在spaCy中,如何具体实现事物?是HMM、CRF还是其他用于构建模型的东西?在

很抱歉,如果这些都是琐碎的,我有一些困难,找到容易阅读的文件内尔实现。在


Tags: 数据文档模型文本实体nlpspacy命名
1条回答
网友
1楼 · 发布于 2024-05-15 15:00:35

https://spacy.io/models/en#en_core_web_md中,他们说English multi-task CNN trained on OntoNotes。所以我想他们就是这样得到NEs的。你可以看到管道是

标签,解析器,内尔

阅读更多信息:https://spacy.io/usage/processing-pipelines。我会尝试移除不同的组件,看看会发生什么。这样你就能知道什么取决于什么。我很确定NER依赖于tager,但不确定是否需要解析器。当然,所有这些都需要标记器

我不明白你的第二点。如果一个实体在句子的开头或中间就可以了,NER系统应该能够捕捉到它。我看不出你是如何在文本上下文中使用normalize这个词的。在

关于模式,他们提到多任务CNN,所以我想CNN是NER的模型。有时人们会在上面加一个CRF,但他们并没有提到,所以很可能只是这样。从他们的表现来看,已经足够好了

相关问题 更多 >