我在具有 8GB RAM 的最新一代 Macbook Pro 中运行 WEKA 分类器(J48,其输入 .arff 文件由 3 个字段组成,字段 1 具有 ~27k 不同的属性,字段 2 ~ 500k 值)。我使用-Xmx 参数将 Java 堆空间增加到了最大可能:
java -Xmx7G -cp weka-3-6-10/weka.jar weka.classifiers.trees.J48 -t myfiles/loc_linear.arff -i
但是,当我运行分类器时(大约 10 分钟后),我收到错误“线程中的异常”main“java.lang.OutOfMemoryError: Java heap space ”。
显然 8GB RAM 对我的输入文件来说是不够的。这是否意味着唯一的解决方案是拥有更强大的硬件(例如 16GB RAM 或非常强大的服务器/集群)?这个问题有什么解决方法吗?(例如减少输入文件?如果是这样,您认为在减少中应用的标准是什么?)。还有其他想法或建议吗?