我正在使用weka界面使用MultilayerPerceptron进行分类。
我的班级是数字,我现在正尝试从命令行进行分类......所以我可以让计算机使用大量文件进行模拟。
我试图使用
java -classpath weka.jar weka.classifiers.meta.FilteredClassifier -t ~/Desktop/arff/3x3-noextra.arff -W weka.classifiers.functions.MultilayerPerceptron -- -L 0.4 -M 0.5 -N 500 -V 0 -S 0 -E 20 -H a
命令作为测试,但由于我的类是数字,我得到:
weka.core.UnsupportedAttributeTypeException: weka.filters.supervised.attribute.Discretize: Cannot handle numeric class!
at weka.core.Capabilities.test(Capabilities.java:954)
at weka.core.Capabilities.test(Capabilities.java:1110)
at weka.core.Capabilities.test(Capabilities.java:1023)
at weka.core.Capabilities.testWithFail(Capabilities.java:1302)
at weka.filters.Filter.testInputFormat(Filter.java:434)
at weka.filters.Filter.setInputFormat(Filter.java:452)
at weka.filters.supervised.attribute.Discretize.setInputFormat(Discretize.java:286)
at weka.classifiers.meta.FilteredClassifier.buildClassifier(FilteredClassifier.java:389)
at weka.classifiers.Evaluation.evaluateModel(Evaluation.java:1149)
at weka.classifiers.Classifier.runClassifier(Classifier.java:315)
at weka.classifiers.meta.FilteredClassifier.main(FilteredClassifier.java:478)
错误,
在界面上它是自动的,我不需要什么都不处理,我怎么能用命令行呢?
答案 0 :(得分:1)
我只是在猜测:
默认情况下,FilteredClassifier具有-F参数,该参数未在命令行中定义。也许根据模型的要求添加此参数和过滤器参数将克服Weka中出现的Discretize错误。
希望这有帮助!
答案 1 :(得分:0)
我做了一些愚蠢的事情,我只需要多层感知器。
我用:
解决了这个问题java -classpath weka.jar weka.classifiers.functions.MultilayerPerceptron -L 0.3 -M 0.5 -N 500 -V 0 -S 0 -E 20 -H a
只需调用多层。