Как правильно импортировать WEKA Evaluation API? - PullRequest
0 голосов
/ 24 января 2020

Я хотел поиграть с Evaluation API, например, чтобы выполнить десятикратную оценку и посмотреть статистику точности. Тем не менее, очень простой код ниже (и все подобные) не компилируется. Есть сообщение об ошибке, в котором говорится

Конструктор Evaluation (Instances) не определен

Еще один говорит:

Метод crossValidateModel (. ..) не определено для типа Evaluation.

Я предполагаю, что используется неверная версия classifiers.evaluation.

Любая помощь?

См. Ниже код, спасибо

import weka.core.Instances;
import java.util.Random;
import weka.core.converters.ConverterUtils.DataSource;
import weka.classifiers.trees.J48;
import weka.classifiers.Classifier;
import weka.classifiers.evaluation.*;

public class Evaluation{
    public static void main(String args[]) throws Exception{



                DataSource source = new DataSource("C:/Program Files/Weka-3-8/data/breast-cancerKnown.arff");
                Instances data = source.getDataSet();   
                Classifier cls = new J48();
                Evaluation eval = new Evaluation(data);
                Random rand = new Random(1);  // using seed = 1
                int folds = 10;
                eval.crossValidateModel(cls, data, folds, rand);
                System.out.println(eval.toSummaryString());
    }
}

Исключение в потоке "main" java .lang.Error: Неразрешенные проблемы компиляции: Конструктор Evaluation (Instances) не определен Метод crossValidateModel (Classifier, Instances, int, Random) не определен для типа Evaluation. Метод toSummaryString () не определен для типа Evaluation

в Evaluation.main (Evaluation. java: 32) * 1023. *

...