Nlp 使用Stanford解析器提取子句
我有一个复杂的句子,我需要把它分成主句和从句。 例如句子Nlp 使用Stanford解析器提取子句,nlp,stanford-nlp,Nlp,Stanford Nlp,我有一个复杂的句子,我需要把它分成主句和从句。 例如句子 ABC引用了许多国家禁止使用化学添加剂的事实,并认为在这个州也可能禁止使用化学添加剂。 所需的拆分 1)ABC cites the fact 2)chemical additives are banned in many countries 3)ABC feels they may be banned in this state too. 我想我可以使用斯坦福解析器树或依赖项,但我不确定如何从这里开始 树 (ROOT
ABC引用了许多国家禁止使用化学添加剂的事实,并认为在这个州也可能禁止使用化学添加剂。
所需的拆分
1)ABC cites the fact
2)chemical additives are banned in many countries
3)ABC feels they may be banned in this state too.
我想我可以使用斯坦福解析器树或依赖项,但我不确定如何从这里开始
树
(ROOT
(S
(NP (NNP ABC))
(VP (VBZ cites)
(NP (DT the) (NN fact))
(SBAR (IN that)
(S
(NP (NN chemical) (NNS additives))
(VP
(VP (VBP are)
(VP (VBN banned)
(PP (IN in)
(NP (JJ many) (NNS countries)))))
(CC and)
(VP (VBZ feels)
(SBAR
(S
(NP (PRP they))
(VP (MD may)
(VP (VB be)
(VP (VBN banned)
(PP (IN in)
(NP (DT this) (NN state)))
(ADVP (RB too))))))))))))
(. .)))
(根
(S)
(NP(NNP ABC))
(VBZ cites副总裁)
(NP(DT)(NN事实))
(SBAR)(在该项中)
(S)
(NP(NN化学品)(NNS添加剂))
(副总裁)
(副总裁(VBP为)
(副总裁(禁止VBN)
(PP(IN)
(NP(JJ多)(NNS国家(())))
(抄送及)
(副总裁(VBZ)
(SBAR)
(S)
(NP(PRP)
(副总裁(MD may)
(副总裁(VB be)
(副总裁(禁止VBN)
(PP(IN)
(NP(DT本)(NN状态)))
(ADVP(RB-too(()(()))(())))(
(. .)))
以及折叠的依赖项解析
nsubj(cites-2, ABC-1)
root(ROOT-0, cites-2)
det(fact-4, the-3)
dobj(cites-2, fact-4)
mark(banned-9, that-5)
nn(additives-7, chemical-6)
nsubjpass(banned-9, additives-7)
nsubj(feels-14, additives-7)
auxpass(banned-9, are-8)
ccomp(cites-2, banned-9)
amod(countries-12, many-11)
prep_in(banned-9, countries-12)
ccomp(cites-2, feels-14)
conj_and(banned-9, feels-14)
nsubjpass(banned-18, they-15)
aux(banned-18, may-16)
auxpass(banned-18, be-17)
ccomp(feels-14, banned-18)
det(state-21, this-20)
prep_in(banned-18, state-21)
advmod(banned-18, too-22)
nsubj(cites-2,ABC-1)
根(根-0,根-2)
det(事实4,事实3)
dobj(cites-2,fact-4)
马克(禁赛-9,禁赛-5)
nn(添加剂-7,化学品-6)
nsubjpass(禁用-9,添加剂-7)
nsubj(FEEL-14,添加剂-7)
auxpass(禁止使用-9、are-8)
ccomp(cites-2,cites-9)
amod(12个国家,11个国家)
准备(禁止-9,国家-12)
ccomp(cites-2、cites-14)
联合与(禁止-9,禁止-14)
nsubjpass(禁止-18,禁止-15)
辅警(5月18日、5月16日)
auxpass(禁止-18、be-17)
ccomp(第14页,第18页)
det(州-21,州-20)
预备队(18号禁赛,21号州)
advmod(禁止使用-18,也禁止使用-22)
如果主要使用基于构成的解析树,而不是依赖项,则可能会更好。依赖项将是有帮助的,但只有在主要工作完成之后!我将在回答的最后解释这一点 这是因为选区分析是基于短语结构语法的,如果你想从一个句子中提取子句,这是最相关的。也可以使用依赖项来完成,但在这种情况下,您基本上是在重构短语结构——从词根开始,查看依赖节点(例如,
ABC
和facts
是动词cites
的名词主语和直接宾语,等等……)
然而,可视化解析树是有帮助的。在您的示例中,子句由SBAR标记表示,该标记是由从属连词(可能为空)引入的子句。您只需执行以下操作:
- 许多国家禁止使用化学添加剂(步骤2中SBAR的去除)
- 在这种状态下,它们也可能被禁止(步骤2中的SBAR移除)
- ABC引用事实(第3步)
除了这三个陷阱之外,上述算法应该能够非常准确地工作。感谢您的详细解释和PenTreebank链接。当我提取SBAR时,我如何获得“感觉”,因为在SBAR上扎根的子树不包含感觉。@ChthonicProject,您所说的非根子句节点是什么意思?,它指的是SBAR标记的子树?@xzegga是SBAR下的S。您是如何获得树结果的?斯坦福德·帕瑟?