【问题标题】:Shallow Parsing vs Deep Parsing in Stanford CoreNLP (Java)斯坦福 CoreNLP (Java) 中的浅解析与深解析
【发布时间】:2016-05-04 06:58:21
【问题描述】:

我需要浅解析深解析使用Stanford CoreNLP。我用谷歌搜索了很多,但没有成功。最后发现有2 parserConstituency parserDependency parser

我的问题是:

选区解析器是浅解析,依赖解析器是深解析吗?

谁能把上述解析器的代码和任何有用的链接放在一起?

【问题讨论】:

  • “浅”和“深”解析是什么意思?您希望从这些解析器中得到什么?
  • @GaborAngeli:只是一个示例和解释。如果您对此有任何想法。

标签: java parsing stanford-nlp dependency-parsing


【解决方案1】:

选区解析与依赖解析的区别与深解析与浅解析的区别无关。它们是完全正交的

选区解析是经典的解析,其中单词是树中的叶子,非叶子节点是成分(例如名词短语、动词短语、预备短语等),而不是单词。

依赖解析不会在树中构建组成节点。树中的所有节点都是一个句子词。树建立了单词之间的层次结构(实际上是相互依赖的)。

如果每个规则的头节点都是已知的,则可以确定地将选区树转换为依赖树。向后转换是不可能的,因为依赖树没有关于应该创建哪些成分的信息。

另一方面,“深度解析”是指为一个句子构建完整的树(因此,您通常期望从解析器中得到什么),而“浅层解析”是一个更简单的任务,包括构建一组部分树对于一个句子(例如,仅对名词短语进行分组)

通常,依赖解析会生成完整的树(即深度解析),并且有用于深度和浅层分析的选区解析器。 但是,应该可以构建一个产生部分(或浅层)分析的依赖解析器。

【讨论】:

    【解决方案2】:

    我假设“浅解析器”是指短语分块器,如下所述:https://en.wikipedia.org/wiki/Shallow_parsing

    Stanford CoreNLP 不提供浅解析器,依赖解析器也不是。

    我用过OpenNLP的分块器和Freeling提供的分块器。
    两者都适合我的目的。我发现使用 OpenNLP 更容易起步,尤其是像我一样使用 Clojure 工作,但最终还是使用了 Freeling,因为它有更多工具,当然还可以访问更多语言。

    【讨论】:

    • 据我所知,Stanford 提供了浅解析和深解析。除了斯坦福 CoreNLP 之外,它拥有最好的解析器,将此类解析器命名为别的。他们提供了哪些实际名称,不知道。
    • 那么你将不得不告诉我们你所说的浅解析是什么意思。你的意思是语义角色标签吗?这完全是一项不同的任务......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多