Я новичок в weka. Я использую weka в java для обучения моего результата на телефоне Android. Я загрузил файл arff при запуске программы.weka результат обучения возвращение 0 в java
В тренировочном наборе я установил только номинальный результат @attribute Результат {1,2,3,4}. Поэтому, я думал, я должен получить только 1,2,3,4. Но, когда я тренирую данные в режиме реального времени по телефону, в результате появилось много 0 или -1.
Мой вопрос: возможно ли вернуть Weka результат классификации за пределы установленного номинального значения? Как и в моем случае, я установил результат в наборе УЧЕБНОГО, как 1,2,3,4, но он вернулся много 0.
Большого спасибо
Ниже мой код.
int result = 0;
try {
Instance inst = new DenseInstance(1.0,vals);
data.setClassIndex(data.numAttributes() - 1);
data.add(inst);
inst.setDataset(data);
result = (int) m_classifier.classifyInstance(inst);
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
Спасибо. Но возможно ли в weka вернуть значение за пределами установленного номинального значения? – Foreverniu
Я думаю, что все значения в номинальных наборах имеют свои собственные индексы. Например, для 'type = {yes, no}', индекс 'yes' равен' 0', а 'no' -' 1'. 'Attribute.value (index)' возвращает имя значения в соответствии с 'index'. Правильно ли я получил ваш вопрос? –
Большое спасибо. Ваш ответ напомнил мне, чтобы проверить эту проблему. Теперь он решил. – Foreverniu