首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NLP命名实体识别

NLP命名实体识别
EN

Stack Overflow用户
提问于 2020-03-21 06:33:01
回答 2查看 630关注 0票数 0

我希望使用命名实体识别算法从文本中提取名称和位置,而不使用任何库。

示例:

美国航空公司表示将开通一架直飞孟加拉的航班。

答案:

代码语言:javascript
复制
Entity: American Airlines
Location: Bengaluru

命名实体的最佳实践是什么?这是否就像在CSV文件中存储所有的名称和位置,并与句子进行比较?

EN

回答 2

Stack Overflow用户

发布于 2020-11-18 09:55:27

正如曼珠尔所说,现在最好的选择是深入学习。最常见的是BERT,深双向变压器的预培训,用于语言理解和变体.这些是变形金刚编码器的变体,它比解码器更适合提取信息,比如GPT。

这些模型对像NER这样的任务使用微调。事实上,它们已经是本地化和人员的精简版。例如,您可以在Spacy中找到实现。但是,如果您希望获得更高的精度,并且您有使用py手电或tensorflow (预处理)的经验,并且您可以使用标记数据(它们也只存在于这些实体的数据集),那么您可以自己微调它。

锂离子线:https://medium.com/@b.terryjack/nlp-pretrained-named-entity-recognition-7caa5cd28d7b#:~:text=

不同的方法和SOTA:https://primer.ai/blog/a-new-state-of-the-art-for-named-entity-recognition/

使用CSV (它来自Kaggle,所以您也可以下载数据集)使用BERT的整个实现:https://www.kaggle.com/abhishek/entity-extraction-model-using-bert-pytorch

票数 2
EN

Stack Overflow用户

发布于 2020-03-21 08:02:50

您可以通过多种方式实现命名实体识别:

  1. One可以将这个问题作为多类分类问题来处理,其中命名实体是我们的标签,因此我们可以应用不同的分类算法。这种方法的问题在于我们忽略了句子中单词的上下文。识别和标注单词需要深入理解句子中的单词。
  2. 为了建立最先进的词汇,我们需要深入研究深入学习的方法。正如我们所知道的,上下文对单词起着重要的作用,考虑到文本是一个顺序数据格式,Long Short Term Memory (LSTM)起着重要的作用。任何类型的LSTM都不会产生最好的效果。我们需要使用Bi-Directional LSTM,因为标准LSTM使用文本序列中的过去信息进行预测。对于NER来说,由于上下文在一个序列中涵盖了过去和未来的标签,我们需要同时考虑过去和未来的信息。Bi-Directional LSTM是两个LSTM的组合,一个从向左运行,另一个从向左向后运行到right.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60785113

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档