【问题标题】:Stanford POS tagger in JavaJava 中的斯坦福 POS 标记器
【发布时间】:2009-12-23 18:59:17
【问题描述】:

我正在尝试这个:

Sentence<TaggedWord> taggedString = MaxentTagger.tagStringTokenized("here is a string to tag");

这给了我:

错误: \u\nlp\data\pos-tagger\wsj3t0-18-left3words\left3words-wsj-0-18.tagger(系统找不到路径 指定)

我正在使用斯坦福的POS tagger

我能做些什么来克服这个问题?

【问题讨论】:

  • 下载斯坦福标记器的完整包,在那里你会找到模型,例如,left3words...tagger。

标签: java stanford-nlp pos-tagger


【解决方案1】:

看来您首先必须实例化一个传递包含文件的标记器:

new MaxentTagger("models/left3words-wsj-0-18.tagger");

这很讨厌,因为后面使用的标记方法是静态的:

MaxentTagger.tagStringTokenized("here is a string to tag");

我还必须通过 -Xmx256m 才能使其在该设置下运行。

【讨论】:

  • 是的,这很糟糕,但现在已经修复了 :-)。版本 3 有一个非常干净的 API!您现在应该熟悉 MaxentTagger tagger = new MaxentTagger(args[0]); String ans = tagger.tagString("这是要标记的字符串。");
【解决方案2】:

它是说它找不到那条路径。那么,它是否存在于您的机器上?

请注意,斜杠是反斜杠 - 您的操作系统是否支持反斜杠作为文件分隔符?

另请注意,这是一条绝对路径 - 这是有意的吗?

如果一切正常,文件是否存在?

编辑:如果没有,你应该在这里下载它(http://github.com/tiendung/ruby-nlp/blob/master/left3words-wsj-0-18.tagger),把它放在系统指定的路径中,看看会发生什么。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-17
相关资源
最近更新 更多