4

J48 分類子のオプションを変更しようとしていますが、結果のツリーに違いはありません。

私のコード:

J48 cls = new J48();
Instances data = new Instances(new BufferedReader(new FileReader("someArffFile")));
data.setClassIndex(data.numAttributes() - 1);

//was trying to use -M 1 and -M 5, but no difference    
String[] options = new String[1];
options[0] = "-C 1.0 –M 1";     
cls.setOptions(options);

cls.buildClassifier(data);

//displaying J48 tree
TreeVisualizer tv = new TreeVisualizer(null,cls.graph(),new PlaceNode2());

このメソッドで値を設定すると、すべてが正常に機能します。

cls.setMinNumObj(5);

setMinNumObj の代わりに setOptions メソッドを使用する方法はありますか?

4

3 に答える 3

0

問題は、オプションを設定しようとする方法です。配列は、要素ごとに 1 つの文字列で、メソッド内の配列のoptionsようにする必要があります。argsmain

String[] options = {"-C", "1.0", "–M", "1"};
cls.setOptions(options);

それ以外の場合は機能しません。

于 2013-03-10T19:00:10.053 に答える