python - Weka:LibSVM 在 GUI 中工作,但不能在带有 WEKA Wrapper 的 Python 代码中工作

标签 python classification wrapper weka libsvm

我正在尝试使用 [python-weka-wrapper-3][1] 在我的 Python 程序中使用多个分类器。这是我的代码:

def main():
     classifierNB = Classifier(classname="weka.classifiers.bayes.NaiveBayes") #works
     classifierNBMult = Classifier(classname="weka.classifiers.bayes.NaiveBayesMultinomial") #works
     classifierLibSVM = Classifier(classname="weka.classifiers.functions.LibSVM") #won't work

try:
    jvm.start()
    main()
except Exception as e:
    print("Error:", e)
finally:
    jvm.stop()

但是,当我运行它(在 Windows 上)时,出现以下错误:

java.lang.NoClassDefFoundError: weka/classifiers/functions/LibSVM
Caused by: java.lang.ClassNotFoundException:
weka.classifiers.functions.LibSVM
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
Exception in thread "Thread-0" 

Failed to get class weka/classifiers/functions/LibSVM
Failed to instantiate
weka.classifiers.functions.LibSVM/weka/classifiers/functions/LibSVM:
weka/classifiers/functions/LibSVM
Error: Object does not implement or subclass weka.classifiers.Classifier:
builtins.NoneType

我已经使用 Weka Package Manager GUI 安装了 LibSVM。它在 Weka GUI 中运行良好。我还包含了以下类路径,但这似乎也不起作用:

C:\Path\To\wekafiles\packages\LibSVM\lib\libsvm.jar
C:\Path\To\wekafiles\packages\LibSVM\LibSVM.jar
C:\Path\To\wekafiles\packages\LibSVM\lib\*
C:\Path\To\wekafiles\packages\LibSVM\*

我做错了什么?提前致谢!

最佳答案

我能够用 jvm.start(packages=True) 修复它,哎呀! :)

关于python - Weka:LibSVM 在 GUI 中工作,但不能在带有 WEKA Wrapper 的 Python 代码中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43543294/

相关文章:

python - 估计卡尔曼滤波器周围的置信区间

Java 流的误解......一些澄清?

java - Java 中的包装器和扫描器类

Python 列表列表无循环

python - 如何使用 ImageGrab.grab().load() 函数或任何其他函数来获取像素更新?

python - 在类级别属性中存储(自身的)实例列表?

python - Sklearn - 绘制分类报告给出与基本平均值不同的输出?

python - 朴素贝叶斯多项式模型

python - 提高 Tensorflow 图像分类的速度

qt - 如何使用 Qt 编写一个包装另一个库的共享库?