我有一套句子。对于他们中的每一个,我想获得一个“通用”类型依赖关系图,其中每个单词都被相应的POS标记替换(除了动词和一些关键字,如 LOCATION 和 TARGET )。
例如,从句子
take a left turn till you come to a LOCATION
我想获得
amod(take,JJ)dobj(take,NN)mark(come,IN)nsubj(come,PP)prep_to(come,LOCATION)
这样做的简单方法是什么?
答案 0 :(得分:0)
确定。我通过一些树操作解决了这个问题。
public static void exploreTree(Tree t) {
List<Tree> child = t.getChildrenAsList();
Tree terminal;
for (Tree c : child) {
if (c.isPreTerminal()) {
terminal = c.getChild(0);
String t_value = terminal.value();
String c_value = c.value();
if (!c_value.startsWith("VB")) {
if (!t_value.equals("LOCATION") && !t_value.equals("TARGET")) {
terminal.setValue(c.value());
}
}
// test[1].setValue(test[0].value());
} else
exploreTree(c);
}
}
根据我的要求,它改变了斯坦福分析树的内部数据。也许不是最优雅和最强大的解决方案,但有效。