在 Stanford CoreNlp 中,为什么不是所有的专有名词 (NNP) 也被命名为实体

In Stanford CoreNlp, why are not all proper nouns (NNP) also named entities

我使用 Stanford CoreNlp 进行名称实体识别 (NER)。我注意到在某些情况下它不是 100% 这很好而且不足为奇。但是,即使无法识别单个单词命名实体(即标签为 O),它也具有标签 NNP(专有名词)。

例如,给定例句“The RestautantName in New York is the best outlet.”,nerTags() 产生 [O, O, O, LOCATION, LOCATION, O, O, O, O, O] 只能正确识别“New York”。这句话的解析树看起来像

(ROOT
  (S
    (NP
      (NP (DT The) (NNP RestautantName))
      (PP (IN in)
        (NP (NNP New) (NNP York))))
    (VP (VBZ is)
      (NP (DT the) (JJS best) (NN outlet)))
    (. .)))

所以“RestaurantName”是专有名词(NNP)

当我查找专有名词的定义时,它听起来非常接近命名实体。有什么区别?

解析器在解析树库数据上进行训练,命名实体识别器在个人、地点、组织、杂项的单独命名实体数据上进行训练。

我原以为 RestaurantName 可能会被标记为 MISC,但如果它没有被标记,则意味着在命名实体的训练数据中并没有真正的例子。这里的关键点是解析决策和命名实体决策是由在不同数据上训练的不同模型完全独立地做出的。

命名实体是 90 年代为了信息检索/提取目的而发明的概念。更准确地说,它在应用程序的文本中考虑“感兴趣的名称”,例如搜索引擎。

您可以阅读the corresponding Wikipedia page

简而言之,许多命名实体不是专有名词:日期、金额、集体实体等。相反,您可能会发现专有名词不是命名实体,但这种情况很少见,并且取决于应用程序。例如,语言名称(英语、法语、西班牙语)被视为专有名词,但可能不是命名实体。历史、人类、宇宙也是如此。

所以 NLP 软件必须决定每个专有名词是否是一个实体以及它的类型是什么,这不是微不足道的。

理论上,命名实体的定义依赖于将名称绑定到对象(无论是具体的还是抽象的)的确定引用。这导致了符号学和哲学的考虑,所以我不会详细说明,但你可能会发现很多文章和书籍讨论这个概念以及它如何在软件中实现。