Вопрос об использовании Weka, инструмента машинного обучения

StackOverflow https://stackoverflow.com/questions/1806827

Вопрос

Я использую функцию проводника Weka для классификации.

Итак, у меня есть мой файл .arff с двумя функциями ЧИСЛОВОГО значения, а мой класс - двоичный 0 или 1 (например, {0,1}).

Образец:

@RELATION summary
@ATTRIBUTE feature1 NUMERIC
@ATTRIBUTE feature2 NUMERIC
@ATTRIBUTE class {1,0}

@DATA
23,11,0
20,100,1
2,36,0
98,8,1
.....

Я загружаю этот файл .arff, использую 10-кратную перекрестную проверку (без тестового файла) и выбираю NaiveBayes, затем классифицирую данные, и это дает мне:5 неправильно маркированных, 100 правильно маркированных.Пока все идет хорошо.

Теперь я существенно изменяю свой файл .arff (даю совершенно случайные значения для атрибутов моих функций).И повторите вышесказанное, и я получу ТОЧНО такую же статистику при классификации.

Я попробовал это с большим количеством изменений в моем файле .arff, с различными алгоритмами классификации.Тем не менее, ТОЧНО такая же статистика (в рамках одного и того же алгоритма) независимо от того, какие значения я даю своему файлу .arff.

Я делаю здесь что-то не так?

Это было полезно?

Решение

Трудно сказать без дополнительной информации, но у меня есть два предложения:

  1. Каковы относительные пропорции этих двух классов?Это от 5 до 100?Многие алгоритмы плохо работают с сильно искаженными распределениями меток классов.

  2. Просто догадка, но попробуйте изменить метки вашего класса с чисел на строки (например"класс 1" и "класс 2").Weka называет эти атрибуты "номинальными", поэтому, возможно, использование чисел запрещено.

Другие советы

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

Вы пытались измениться

@ATTRIBUTE class {1,0} 

с

@ATTRIBUTE class {yes,no} 
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top