Это работает для меня. Я пробовал со следующим набором данных:
@relation test
@attribute x {0,1}
@attribute y {0,1,2}
@attribute z {0,1}
@data
0,1,0
1,0,1
1,1,1
1,2,1
0,0,0
Позвольте мне упомянуть, что исключения ожидаются, когда целевой атрибут не является номинальным (например, числовым). Байесовские сети работают лучше, когда все ваши атрибуты являются номинальными. Если вы измените целевой атрибут на числовой, вы получите NullPointerException
или ArrayIndexOutOfBoundsException
. В частности, это исключение выдается в строке:
EditableBayesNet bn = new EditableBayesNet(ins);
Вы должны сначала дискретизировать свой целевой класс.