我从包管理器在weka中安装了LibSVM,并且已成功安装。但是当我运行以下命令时 -
java -cp ./weka.jar weka.classifiers.meta.FilteredClassifier -F weka.filters.unsupervised.attribute.RemoveType -W weka.classifiers.functions.LibSVM -t training.arff -no-cv -T testing.arff -v -o
它显示
Can't find class called: weka.classifiers.functions.LibSVM
但像Naive Bayes
这样的其他分类器正在发挥作用。为什么没找到班级。我正在使用mac。
答案 0 :(得分:2)
Weka.jar不包含LibSVM类。因此,要使用LibSVM,您必须在classpath中提供LibSVM.jar以及weka.jar。您可以从
下载LibSVM.jarwww.csie.ntu.edu.tw/~cjlin/cgi-bin/libsvm.cgi?+ http://www.csie.ntu.edu.tw/~cjlin/libsvm+zip(Zip文件)
您可以在类路径中提供LibSVM.jar,如下所示:
java -classpath $ pathtoweka.jar / weka.jar:$ pathtoLibSVM.jar / libsvm.jar weka.classifiers.meta.FilteredClassifier -t $ pathtotrainfile -x 10 -c last -i -d $ pathtomodel -F'weka .filters.unsupervised.attribute.StringToWordVector -R 1 -W 3000 -N 0 -stemmer weka.core.stemmers.NullStemmer -T -I -M 1 -tokenizer weka.core.tokenizers.WordTokenizer -C'-W weka.classifiers .functions.LibSVM - -B
希望这有帮助。