ArrayIndexOutOfBoundsException в классификации экземпляров в Java с использованием weka
Я пишу программу для классификации данного экземпляра теста на "положительный" или "отрицательный"; используя алгоритм J48. Я создал модель с помощью инструмента Weka и использовал ее в своей Java-программе.
Моя программа на Java
public static void main(String[] args) {
double result = -1;
try {
ArrayList<Attribute> attributeList = new ArrayList<>(2);
Attribute tweet = new Attribute("tweet", true);
ArrayList<String> classVal = new ArrayList<>();
classVal.add("positive");
classVal.add("negative");
attributeList.add(tweet);
attributeList.add(new Attribute("class", classVal));
Instances data = new Instances("TestInstances", attributeList, 1);
Instance inst_co = new DenseInstance(data.numAttributes());
data.add(inst_co);
data.setClassIndex(data.numAttributes() - 1);
inst_co.setValue(tweet, "I love my grandmom");
StringToWordVector filter = new StringToWordVector();
Classifier cls_co = (Classifier) weka.core.SerializationHelper
.read("G:/love.model");
result = cls_co.classifyInstance(data.firstInstance());
System.out.println(result);
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
Файл моих тренировочных данных
@RELATION love
@ATTRIBUTE tweet string
@ATTRIBUTE class {positive,negative}
@DATA
"I love my sister", positive
"I love my brother", positive
"I love my father", positive
"I love my mother", positive
"I love my uncle", positive
"I love my grandmom", positive
"I hate my cats", negative
"I hate my car", negative
"I hate my van", negative
"I hate my rice", negative
"I hate my bun", negative
Я получаю ArrayIndexOutOfBoundsException от result = cls_co.classifyInstance(data.firstInstance());
Я перепробовал много примеров, найденных в интернете. Но все же я получаю ту же ошибку.
Заранее спасибо.