命名实体识别 (NER) 功能
Posted
技术标签:
【中文标题】命名实体识别 (NER) 功能【英文标题】:Named entity recognition (NER) features 【发布时间】:2017-06-19 12:06:10 【问题描述】:我是命名实体识别的新手,在理解此任务中使用什么/如何使用功能时遇到了一些麻烦。
到目前为止,我读过的一些论文提到了使用的功能,但并没有真正解释它们,例如 Introduction to the CoNLL-2003 Shared Task:Language-Independent Named Entity Recognition,提到以下功能:
参与的 16 个系统使用的主要功能 CoNLL-2003 共享任务按英语测试数据的表现排序。 Aff:词缀信息(n-grams); bag:词袋; cas:全球案例 信息; chu:块标签; doc:全局文档信息;天然气: 地名录; lex:词汇特征; ort:正字法信息;拍: 正交模式(如 Aa0); pos:词性标签;前: 先前预测的 NE 标签;现状:标志该词是 引号之间; tri:触发词。
不过,我对其中一些有些困惑。例如:
词袋不应该是一种生成特征的方法(每个词一个)吗? BOW 本身怎么可能是一个特性?或者这是否仅仅意味着除了提到的所有其他特征之外,我们还有 BOW 中的每个单词的特征? 地名录怎么能成为特征? POS 标签如何准确地用作特征?我们不是每个单词都有一个 POS 标签吗?不是每个对象/实例都是“文本”吗? 什么是全局文档信息? 什么是特征触发词?我认为我在这里所需要的只是查看一个示例表,其中每个功能作为列并查看它们的值以了解它们的实际工作方式,但到目前为止我还没有找到一个易于阅读的数据集.
有人可以澄清或指出一些正在使用的这些功能的解释或示例吗?
【问题讨论】:
【参考方案1】:这里是一些答案的一个镜头(顺便说一下,所有这些东西的术语都超负荷了)。
isn't bag of words supposed to be a method to generate features (one for each word)? How can BOW itself be a feature? Or does this simply mean we have a feature for each word as in BOW, besides all the other features mentioned?
how can a gazetteer be a feature?
根据我的经验,BOW 特征提取用于从句子中生成单词特征。所以 IMO BOW 不是一个特征,它是一种从句子(或您正在使用的文本块)中生成特征的方法。 Uning NGrams 可以帮助解释序列,但 BOW 特征相当于无序的字符串包。
how can POS tags exactly be used as features ? Don't we have a POS tag for each word?
POS 标签被用作特征,因为它们可以帮助“词义消歧”(至少在理论上)。例如,“May”这个词可以是一个人的名字或一年中的一个月,或者是大写不佳的共轭动词,但词性标签可以是区分这一事实的特征。是的,您可以为每个单词获取一个词性标签,但除非您在“特征空间”中明确使用这些标签,否则这些词本身不知道它们的词性是什么。
Isn't each object/instance a "text"?
如果你的意思是我认为你的意思,那么这是真的只有如果你已经提取了对象实例“对”并将它们存储为特征(它们的数组源自一串令牌)。
what is global document information?
我认为这个意思是这样的:大多数 NLP 任务都在一个句子上运行。全局文档信息是来自整个文档中所有周围文本的数据。例如,如果您尝试提取地理地名但消除它们的歧义,并且您找到了 Paris 一词,它是哪一个?好吧,如果上面 5 句话提到了法国,那可能会增加它是法国巴黎而不是德克萨斯州巴黎或最坏情况下的巴黎希尔顿的可能性。这在所谓的“共指解析”中也非常重要,即当您将名称与代词引用相关联时(将名称提及映射到“他”或“她”等)。
what is the feature trigger words?
触发词是具有高可靠性的特定标记或序列,作为具有特定含义的独立事物。例如,在情感分析中,带有感叹号的脏话通常表示消极。这可以有很多排列。
无论如何,我在这里的答案并不完美,并且容易出现人类认识论和主体间性方面的各种问题,但这些是我多年来一直在思考的方式用 NLP 解决问题。
希望其他人能加入进来,尤其是在我不在的时候。
【讨论】:
完美答案与否,感谢您花时间回答我的问题:)【参考方案2】:您可能应该记住,NER 将每个单词/标记与内部或外部线索的特征分开分类。内部线索考虑到单词本身(形态为大写字母,是出现在专用词典中的标记,POS),外部线索依赖于上下文信息(上一个和下一个单词,文档特征)。
词袋不应该是一种生成特征的方法(一个 每个单词)? BOW 本身怎么可能是一个特征?或者只是这样做 意味着我们对每个单词都有一个特征,就像在 BOW 中一样,除了所有其他的 提到的功能?
是的,BOW 为每个单词生成一个特征,有时特征选择方法会减少考虑的特征数量(例如单词的最小频率)
地名词典如何成为特色?
地名词典也可以为每个词生成一个特征,但在大多数情况下,它确实通过标记词或多词表达(作为完整的专有名称)来丰富数据。这是一个模棱两可的步骤:“乔治华盛顿”将导致两个特征:作为名人的整个“乔治华盛顿”和作为一个城市的“华盛顿”。
POS 标签如何准确地用作特征?我们不是有 POS 标签吗 每个单词?每个对象/实例不是一个“文本”吗?
对于分类器,每个实例都是一个词。这就是使用序列标记(例如 CRF)方法的原因:它们允许利用前一个词和下一个词作为附加的上下文特征来对当前词进行分类。标记文本是一个依赖于序列中每个单词最可能的 NE 类型的过程。
什么是全局文档信息?
这可能是元数据(例如日期、作者)、主题(全文分类)、共同引用等。
什么是特征触发词?
触发器是外部线索,有助于消除歧义的上下文模式。例如,“先生”将用作强烈暗示以下标记将是人的特征。
【讨论】:
感谢您的回答。我认为我的大部分疑问都与我不熟悉顺序标签这一事实有关【参考方案3】:我最近在 python 中实现了一个 NER 系统,我发现以下功能很有帮助:
字符级 ngram(使用 CountVectorizer) 以前的单词特征和标签(即上下文) 标签序列概率的维特比或波束搜索 词性 (pos)、字长、字数、is_capitalized、is_stopword【讨论】:
以上是关于命名实体识别 (NER) 功能的主要内容,如果未能解决你的问题,请参考以下文章