【发布时间】:2018-11-30 21:54:07
【问题描述】:
谁能告诉我依赖解析器何时失败以及失败的原因以及解决方法是什么?
【问题讨论】:
标签: nlp dependency-parsing natural-language-processing
谁能告诉我依赖解析器何时失败以及失败的原因以及解决方法是什么?
【问题讨论】:
标签: nlp dependency-parsing natural-language-processing
考虑下面的句子:
沙子已经开始滴入海底了。
树:(根(S (NP (NNP 金沙)) (副总裁(VBD 有) (ADVP(已经RB)) (VP(VBN开始) (S (副总裁(到) (VP (VB 涓流) (PP(进) (NP(DT)(NN底部))))))) (. .)))
依赖解析器:[nsubj(begun-4, Sands-1), nsubj:xsubj(trickle-6, Sands-1), aux(begun-4, had-2), advmod(begun-4, already-3), 根(ROOT-0,begin-4),标记(trickle-6,to-5),xcomp(begun-4, 涓流 6), case(bottom-9, into-7), det(bottom-9, the-8), nmod:into(trikle-6, bottom-9), punct(begun-4, .-10)]
依赖解析器失败的原因可能有两个。
1)这里的“Sands”这个词是专有名词复数(NNPS),但是 POS 标注器输出给出的 NNP 是专有名词,所以标注器中存在错误,该错误又会在使用时传播到依赖解析器POS 生成依赖项”。 要处理这种情况,您可以使用它失败的句子来训练 POS 标注器。
2) 句子的上下文对于依赖解析器来说可能是全新的,因为像 spacy 、 stanford 、 nltk 等大多数解析器都是经过训练的 ML 模型,因此为了处理这种情况,您可以使用 new 单独训练依赖解析器句子。
你可以参考这个链接来了解如何训练词性标注器和依赖解析器: https://spacy.io/usage/training#section-tagger-parser
希望它能回答你的问题。
【讨论】: