我正在开发一个不是依赖解析器的解析器,但它仍然是一个基于转换的系统。我没有使用3个动作SHIFT,REDUCE-LEFT和REDUCE-RIGHT,就像arc-transition一样,我为我的解析器提出了自己的动作。正如我通过Andor等人的论文所理解的那样。 (2016),只要系统遵循本文定义的一些规则,我就可以在任何基于转换的系统上训练SyntaxNet。但我不知道应该从哪里开始。我查看了代码,但似乎它们主要用于训练依赖解析器(具有3个动作SHIFT,REDUCE-LEFT和REDUCE-RIGHT)。如果您能突出显示代码中可以帮助我实现目标的部分,我真的很感激。
另外,我不太明白SyntaxNet如何将ConNLL数据格式转换为黄金训练数据,你能告诉我哪个源文件负责这项任务吗?
非常感谢您提前
答案 0 :(得分:0)
如果您想使用自己的系统更改转场系统,则需要对代码进行一些更改。最值得注意的是,您需要实现一个oracle,用于将黄金解析树映射到一系列转换。 Nivre(2008)是对该主题的一个很好的介绍: http://www.mitpressjournals.org/doi/pdf/10.1162/coli.07-056-R1-07-027