WEKA - Android上的ClassNotFoundException

时间:2016-06-25 08:39:20

标签: java android machine-learning svm weka

我在Weka GUI中使用选项SMO构建了MultiClassClassifier,并使用MultilayerPerceptron作为校准方法。我已经在Eclipse(Java)上测试了多个样本的模型,它在我的PC上运行得非常好。当我尝试在Android上使用相同的分类器时,我得到的错误是由:

引起的
  

没找到   类: “weka.classifiers.functions.MultilayerPerceptron $ ControlPanel控制”   在路径上:DexPathList [[zip文件   “/data/app/mypackage.myapp/base.apk,nativeLibraryDirectories=[/vendor/lib,system/lib]   在   Dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)

我在Eclipse Android项目和Java Eclipse项目中使用了相同的Weka(v3.8)Java库。如果我不使用MultilayerPerceptron进行校准,它在Android上运行良好,但结果不如校准分类器的结果好。我也在Weka GUI中将GUI选项关闭,但没有用。

以下是Weka GUI中我的分类器的基本配置设置: weka.classifiers.meta.MultiClassClassifier -M 0 -R 2.0 -S 1 -W weka.classifiers.functions.SMO -- -C 1.0 -L 0.001 -P 1.0E-12 -N 0 -M -V -1 -W 1 -K "weka.classifiers.functions.supportVector.PolyKernel -E 1.0 -C 250007" -calibrator "weka.classifiers.functions.MultilayerPerceptron -L 0.3 -M 0.2 -N 500 -V 0 -S 0 -E 20 -H a"

MultiClassClassifier设置:

enter image description here

SMO设置:

enter image description here

MultilayerPerceptron设置:

enter image description here

  1. [已解决] 这是否意味着我无法在Android上使用MultilayerPerceptron作为校准方法?

  2. [已解决] 我可以使用不带ControlPanel部件的MultilayerPerceptron构建分类器吗?

  3. [已解决] Weka设置或其他一些方法是否有解决方法可以避免这种情况?

  4. 我已经设法从Weka邮件列表中获取了有关情况的一些信息,似乎在使用MultiClassClassifier中使用MultiLayerPerceptron并不是一个简单的解决方案。由于MultilayerPerceptron类使用Android不完全支持的Java .awt包,因此还有另一种可能的解决方案。

    Weka有另一个名为MLPClassifier(MultiLayerPerceptronClassifier)的分类器,它没有GUI。这似乎 到目前为止,这是最简单的解决方法。

0 个答案:

没有答案