利用java編寫程式,訪問kddcup99資料集,採用如下代碼獲得Instances,
public static Instances getArffFile(String FileName)throws Exception
{
DataSource source= new DataSource(FileName);
Instances ins = source.getDataSet();
if(ins.classIndex()==-1)
ins.setClassIndex(ins.numAttributes()-1);//這一句一定不要少
//System.out.println("\n"+FileName+"資料集讀取完畢,總共樣本個數是:"+ins.numInstances()+"個!\n");
return ins;
}
結果提示如下:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Double.valueOf(Unknown Source)
at weka.core.converters.ArffLoader$ArffReader.getInstanceFull(Unknown Source)
at weka.core.converters.ArffLoader$ArffReader.getInstance(Unknown Source)
at weka.core.converters.ArffLoader$ArffReader.readInstance(Unknown Source)
at weka.core.converters.ArffLoader$ArffReader.readInstance(Unknown Source)
at weka.core.converters.ArffLoader.getDataSet(Unknown Source)
at weka.core.converters.ConverterUtils$DataSource.getDataSet(Unknown Source)
at conceptDrift.detection.method.read_copy_arff.getArffFile(read_copy_arff.java:24)
at conceptDrift.detection.method.read_copy_arff.main(read_copy_arff.java:35)
於是去修改 eclipse.ini的-Xmx 256m 為 -Xmx1024m ,雙擊eclipse.exe 提示
但改為-Xmx512,則能順利開啟eclipse.exe.不知道是怎麼回事?