栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

nltk StanfordNERTagger:如何不使用大写字母获取专有名词

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

nltk StanfordNERTagger:如何不使用大写字母获取专有名词

首先,请参见另一个问题,以设置要从命令行或python调用的Stanford
CoreNLP:nltk:如何防止专有名词的词干。

对于适当的大小写句子,我们看到NER可以正常工作:

>>> from corenlp import StanfordCoreNLP>>> nlp = StanfordCoreNLP('http://localhost:9000')>>> text = ('John Donk works POI Jones wants meet Xyz Corp measuring POI short term performance metrics. '... 'john donk works poi jones wants meet xyz corp measuring poi short term performance metrics')>>> output = nlp.annotate(text, properties={'annotators': 'tokenize,ssplit,pos,ner',  'outputFormat': 'json'})>>> annotated_sent0 = output['sentences'][0]>>> annotated_sent1 = output['sentences'][1]>>> for token in annotated_sent0['tokens']:...     print token['word'], token['lemma'], token['pos'], token['ner']... John John NNP PERSonDonk Donk NNP PERSonworks work VBZ OPOI POI NNP ORGANIZATIonJones Jones NNP ORGANIZATIonwants want VBZ Omeet meet VB OXyz Xyz NNP ORGANIZATIonCorp Corp NNP ORGANIZATIonmeasuring measure VBG OPOI poi NN Oshort short JJ Oterm term NN Operformance performance NN Ometrics metric NNS O. . . O

对于小写的句子,您将不会获得

NNP
POS标签或任何NER标签:

>>> for token in annotated_sent1['tokens']:...     print token['word'], token['lemma'], token['pos'], token['ner']... john john NN Odonk donk JJ Oworks work NNS Opoi poi VBP Ojones jone NNS Owants want VBZ Omeet meet VB Oxyz xyz NN Ocorp corp NN Omeasuring measure VBG Opoi poi NN Oshort short JJ Oterm term NN Operformance performance NN Ometrics metric NNS O

因此,您的问题应该是:

  • 您的NLP应用程序的最终目标是什么?
  • 为什么您的输入小写? 是您做的还是提供数据的方式?

回答完这些问题后,您可以继续确定您真正想要使用NER标签做什么,即

  • 如果输入是小写字母,并且是由于构造NLP工具链的原因 ,那么

    • 不要那样做!!! 对普通文本执行NER,不会造成您创建的变形。这是因为NER受过普通文本训练,因此在普通文本的上下文中不会真正起作用。
    • 还要尝试不要混用来自不同套件的NLP工具,它们通常不能很好地发挥作用,尤其是在NLP工具链的末尾
    • 如果输入是小写字母,因为这就是原始数据的格式 ,则:

    • 注释一小部分数据,或查找小写的注释数据,然后重新训练模型。

    • 解决该问题,并使用常规文本训练TrueCaser,然后将TrueCasing模型应用于小写文本。参见https://www.cs.cmu.edu/~llita/papers/lita.truecasing-acl2003.pdf
    • 如果输入有错误的大小写,例如`Some big Some Small但不是全部都是Proper Noun ,则

    • 也尝试使用truecasing解决方案。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/668168.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号