Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Stanford CoreNLP:从解析树获取CharacterOffset注释_Java_Stanford Nlp - Fatal编程技术网

Java Stanford CoreNLP:从解析树获取CharacterOffset注释

Java Stanford CoreNLP:从解析树获取CharacterOffset注释,java,stanford-nlp,Java,Stanford Nlp,使用来自另一个解析器的解析器输出,我为一个句子创建了解析树。现在,我需要找到解析中出现的每个名词短语的字符偏移量 我该怎么做呢 首先,我将研究解析器使用的标记器/分块器。我更容易找到块和原始文本之间的字符偏移量映射(如果字符偏移量还不存在)。然后你可以遍历你的解析树寻找名词短语,然后从那里遍历左边的分支,直到你到达一个左边,这将是你的解析树中的第一个标记;从NP节点开始,遍历右侧分支,直到到达另一个左侧,这将是您的结束标记。您可以通过从树的根数树叶来获得第一个标记的偏移量。我将首先查看解析器使用

使用来自另一个解析器的解析器输出,我为一个句子创建了解析树。现在,我需要找到解析中出现的每个名词短语的字符偏移量


我该怎么做呢

首先,我将研究解析器使用的标记器/分块器。我更容易找到块和原始文本之间的字符偏移量映射(如果字符偏移量还不存在)。然后你可以遍历你的解析树寻找名词短语,然后从那里遍历左边的分支,直到你到达一个左边,这将是你的解析树中的第一个标记;从NP节点开始,遍历右侧分支,直到到达另一个左侧,这将是您的结束标记。您可以通过从树的根数树叶来获得第一个标记的偏移量。

我将首先查看解析器使用的标记器/分块器。我更容易找到块和原始文本之间的字符偏移量映射(如果字符偏移量还不存在)。然后你可以遍历你的解析树寻找名词短语,然后从那里遍历左边的分支,直到你到达一个左边,这将是你的解析树中的第一个标记;从NP节点开始,遍历右侧分支,直到到达另一个左侧,这将是您的结束标记。通过从树的根数树叶,可以得到第一个标记的偏移量。

取一个对应于名词短语的子树。获取此树的叶子:

List<Tree> leaves = tree.getLeaves();

这适用于Stanford CoreNLP 3.2.0。

取对应于名词短语的子树。获取此树的叶子:

List<Tree> leaves = tree.getLeaves();
这适用于Stanford CoreNLP 3.2.0。

如果您使用的是“另一个解析器”,为什么您的问题会被标记为Stanford nlp?如果您使用的是“另一个解析器”,为什么您的问题会被标记为Stanford nlp?