【问题标题】:Using OpenNLP in Groovy在 Groovy 中使用 OpenNLP
【发布时间】:2013-03-28 22:39:37
【问题描述】:

我正在尝试编写一个(希望如此)简单的脚本来解析一个简短的段落。我需要它在两个单独的步骤中进行句子检测和标记化,以便用户可以在继续下一步之前编辑句子检测的输出。这是为了手动捕捉任何可以分解成更小的完整句子的句子。我将使用的散文将非常短,因此句子检测和编辑应该是微不足道的。一旦用户对句子输出文件感到满意,分词器应该进一步分解每一行。然后,结果将进入一个 XML 文件。最终结果应该是这样的:

原始输入:“约翰喜欢玛丽,玛丽喜欢约翰。”

编辑后的句子输出:

John likes Mary and Mary likes John.
John likes Mary
and
Mary likes John.

最终输出:

<fullText>
<snippet value="John likes Mary and Mary likes John.">
<snippet value="John likes Mary">
<snippet value="John"/>
<snippet value="likes"/>
<snippet value="Mary"/>
</snippet>
<snippet value="and"/>
<snippet value="Mary likes John.">
<snippet value="Mary"/>
<snippet value="likes"/>
<snippet value="John"/>
<snippet value="."/>
</snippet>
</snippet>
</fullText>

我遇到过OpenNLP,它似乎同时具有我需要的句子检测器和标记器,但我是 Groovy 的新手,无法弄清楚如何在我的脚本中使用这些工具.我尝试使用找到的代码here,但无法让它工作。我的脚本中有以下代码,但我收到一个错误,即找不到 TokenizerModel。

@Grapes(
  @Grab(
    group='org.apache.opennlp', 
    module='opennlp', 
    version='1.5.1-incubating'
  )
)
import opennlp.tools.tokenize.*

static TokenizerModel tokenizerModel

有什么建议吗?谢谢!

【问题讨论】:

    标签: xml groovy opennlp


    【解决方案1】:

    您可以将其包含在您的 BuildConfig.groovy 中。
    确保您的存储库块中有 mavenCentral(),并在依赖项中添加 OpenNLP 的依赖项,您可以找到 here

    应该是这样的:

    repositories {
        grailsPlugins()
        grailsHome()
        mavenCentral()
    } 
    dependencies {
        compile 'org.apache.opennlp:opennlp-tools:1.5.2-incubating'
    } 
    

    【讨论】:

      猜你喜欢
      • 2015-01-13
      • 2011-08-15
      • 1970-01-01
      • 2014-07-16
      • 2011-10-18
      • 2015-03-29
      • 1970-01-01
      • 2014-08-12
      • 2016-07-11
      相关资源
      最近更新 更多