【问题标题】:Error in Stanford Pos Tagger斯坦福邮政标签错误
【发布时间】:2016-02-27 22:11:59
【问题描述】:

您好,我正在尝试使用 Stanford Pos Tagger 为某个句子做 POS 标签。我在 windows7 上使用 Python 3.4 nltk 3.1 以下是我使用的代码:

import nltk
from nltk.tag.stanford import POSTagger
import os
java_path = r"C:\Program Files\Java\jre1.8.0_66\bin\java.exe"
os.environ['JAVAHOME'] = java_path

St=POSTagger(r"C:\Python34\Scripts\stanford-postagger-2015-12-09\models\english-bidirectional-distsim.tagger",r"C:\Python34\Scripts\stanford-postagger-2015-12-09\stanford-postagger.jar")

tokens = nltk.tokenize.word_tokenize("Sample for tagging a sentence.")
print(St.tag(tokens))

但是,我收到以下错误:

Traceback (most recent call last):
Loading default properties from tagger C:\Python34\Scripts\stanford-postagger-2015-12-09\models\english-bidirectional-distsim.tagger

Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory

at edu.stanford.nlp.io.IOUtils.<clinit>(IOUtils.java:42)

at edu.stanford.nlp.tagger.maxent.TaggerConfig.<init>(TaggerConfig.java:146)

at edu.stanford.nlp.tagger.maxent.TaggerConfig.<init>(TaggerConfig.java:128)

at edu.stanford.nlp.tagger.maxent.MaxentTagger.main(MaxentTagger.java:1836)

原因:java.lang.ClassNotFoundException: org.slf4j.LoggerFactory

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

... 4 more

File "C:\Users\workspace\src\chunking.py", line 15, in <module>
print(St.tag(tokens))
File "C:\Python34\lib\site-packages\nltk\tag\stanford.py", line 59, in tag
return self.tag_sents([tokens])[0]
File "C:\Python34\lib\site-packages\nltk\tag\stanford.py", line 81, in tag_sents stdout=PIPE, stderr=PIPE)
File "C:\Python34\lib\site-packages\nltk\internals.py", line 160, in java     raise OSError('Java command failed!')
OSError: Java command failed!

谁能帮我解决这个错误?

【问题讨论】:

标签: eclipse python-3.x nltk stanford-nlp pos-tagger


【解决方案1】:

尝试在您的构建路径中再添加两个 jar 文件。您将在下载包slf4j-api.jarslf4j-simple.jar 的lib 文件夹中找到这些文件。 看看this tutorial

【讨论】:

  • 我无法解决问题,所以我下载了另一个版本的 POS 标记器 stanford-postagger-full-2014-08-27。它现在正在工作。
猜你喜欢
  • 1970-01-01
  • 2016-10-12
  • 1970-01-01
  • 1970-01-01
  • 2012-02-03
  • 2015-03-10
  • 1970-01-01
  • 1970-01-01
  • 2019-03-17
相关资源
最近更新 更多