не может запустить программу Java, которая выполняет команды Weka - PullRequest
0 голосов
/ 18 ноября 2010

Я пытаюсь запустить программу на Java, которая выполняет команды Weka. Программа, которую я запускаю, имеет значение http://weka.wikispaces.com/Use+WEKA+in+your+Java+code, в разделе «Инкрементные классификаторы:« Рабочий пример - IncrementalClassifier.java. »

Это мой код, и я изменил адрес arff:

import weka.core.Instance;
import weka.core.Instances;
import weka.core.converters.ArffLoader;
import weka.classifiers.bayes.NaiveBayesUpdateable;

import java.io.File;

/**
 * This example trains NaiveBayes incrementally on data obtained
 * from the ArffLoader.
 *
 * @author FracPete (fracpete at waikato dot ac dot nz)
 */
public class IncrementalClassifier {

  /**
   * Expects an ARFF file as first argument (class attribute is assumed
   * to be the last attribute).
   *
   * @param args        the commandline arguments
   * @throws Exception  if something goes wrong
   */
  public static void main(String[] args) throws Exception {
    // load data
    ArffLoader loader = new ArffLoader();
    loader.setFile(new File("C:\\Program Files\\Weka-3-6\\10random+5.arff"));
    Instances structure = loader.getStructure();
    structure.setClassIndex(structure.numAttributes() - 1);

    // train NaiveBayes
    NaiveBayesUpdateable nb = new NaiveBayesUpdateable();
    nb.buildClassifier(structure);
    Instance current;
    while ((current = loader.getNextInstance(structure)) != null)
      nb.updateClassifier(current);

    // output generated model
    System.out.println(nb);
  }
}

Я получаю ошибку:

java.io.FileNotFoundException: \iris.2.arff (The system cannot find the file specified)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(Unknown Source)
    at java.io.FileInputStream.<init>(Unknown Source)
    at java.io.FileReader.<init>(Unknown Source)
    at weka.classifiers.bayes.net.ADNode.main(ADNode.java:270)

Как поступить?

Спасибо

Ответы [ 2 ]

1 голос
/ 18 ноября 2010

Этот файл (iris.2.arff), по-видимому, жестко запрограммирован в источнике, как показано здесь .Я предполагаю, что этот файл поставляется с дистрибутивом, но не в правильном месте.Или, возможно, вы используете неправильный метод.

0 голосов
/ 05 мая 2014

это потому, что вы используете неправильный класс в конфигурации вашего java-приложения, вам нужно сделать следующее:

щелкнуть правой кнопкой мыши по проекту: Run As: Run configuration: в поле «Main Class»выберите свой класс "IncrementalClassifier"

вот и все, удачи!

...