3

WEKA API でデータセットを分類しようとしています。最初にWEKA Explorerを試し、その分類器で Scheme: weka.classifiers.bayes.BayesNet -D -Q weka.classifiers.bayes.net.search.local.K2 -- -P 1 -S BAYES -E weka.classifiers.bayes.net.estimate.SimpleEstimator -- -A 0.5良い結果を得ました.

ここに私のコードがあります:

public static void main(String Args[]) throws Exception {
    // read in file and create train dataset
    DataSource source = new DataSource("featurexfilename.arff");
    Instances train = source.getDataSet();
    // set class index
    train.setClassIndex(0);

    // create test data set
    Instances test = source.getDataSet();
    // set class index
    test.setClassIndex(0);

    // create new instance of scheme
    weka.classifiers.bayes.net.search.local.K2 scheme = new weka.classifiers.bayes.net.search.local.K2();

    // set options
    scheme.setOptions(weka.core.Utils.splitOptions("-P 1 -S BAYES"));

    // set options for bayes classifier
    BayesNet bnet = new BayesNet();
    scheme.buildStructure(bnet, train);

    // eval it with test data based on the train data
    Evaluation eval = new Evaluation(test);
    eval.evaluateModel(bnet, test);
    System.out.println(eval.toSummaryString("\nResults\n\n", false));
}

しかし、次のエラーが表示されます。

Exception in thread "main" java.lang.NullPointerException
    at weka.classifiers.bayes.BayesNet.getParentSet(BayesNet.java:1002)
    at weka.classifiers.bayes.net.search.SearchAlgorithm.buildStructure(SearchAlgorithm.java:285)
    at weka.classifiers.bayes.net.search.local.LocalScoreSearchAlgorithm.buildStructure(LocalScoreSearchAlgorithm.java:163)
    at patternrecog.Bayes.main(Bayes.java:48)

誰か助けてくれますか? ありがとうございました。

4

0 に答える 0