【问题标题】:Named Entity Recognition using NLTK. Relevance of extracted keywords使用 NLTK 的命名实体识别。提取关键字的相关性
【发布时间】:2011-08-06 19:23:32
【问题描述】:

我正在检查 NLTK 的命名实体识别功能。是否可以找出提取的关键字与原文最相关?另外,是否可以知道提取的关键字的类型(个人/组织)?

【问题讨论】:

    标签: nltk relevance named-entity-recognition


    【解决方案1】:

    如果您有训练有素的标注器,您可以先标注您的文本,然后使用 NLTK 附带的 NE 分类器。

    标记的文本应该以列表的形式呈现

    sentence = 'The U.N.'
    tagged_sentence = [('The','DT'), ('U.N.', 'NNP')]
    

    那么,ne 分类器会被这样调用

    nltk.ne_chunk(tagged_sentence)
    

    它返回一棵树。分类后的词将在主结构内显示为树节点。 结果将包括它是 PERSON、ORGANIZATION 还是 GPE。

    要找出最相关的术语,您必须定义“相关性”的衡量标准。通常使用tf/idf,但如果您只考虑一个文档,频率可能就足够了。

    使用 NLTK 可以轻松计算文档中每个单词的频率。首先你必须加载你的语料库,一旦你加载它并拥有一个 Text 对象,只需调用:

    relevant_terms_sorted_by_freq = nltk.probability.FreqDist(corpus).keys()
    

    最后,您可以过滤掉related_terms_sorted_by_freq 中所有不属于NE 单词列表的单词。

    NLTK offers an online version of a complete book 我觉得开始很有趣

    【讨论】:

      猜你喜欢
      • 2013-10-19
      • 2020-02-01
      • 2011-08-08
      • 2012-07-02
      • 2015-07-19
      • 1970-01-01
      • 2015-10-28
      • 2014-08-15
      • 2010-09-16
      相关资源
      最近更新 更多