我在配备 8GB RAM 的最新一代 Macbook Pro 中运行 WEKA 分类器(J48,其输入 .arff 文件由 3 个字段组成,字段 1 有约 27k 个不同属性,字段 2 有约 500k 个值)。
我使用以下命令将 java 堆空间增加到最大可能-Xmx参数 http://rimuhosting.com/knowledgebase/linux/java/-Xmx-settings:
java -Xmx7G -cp weka-3-6-10/weka.jar weka.classifiers.trees.J48 -t
myfiles/loc_线性.arff -i
然而,当我运行分类器时(大约 10 分钟后),我收到错误“线程“main”中的异常 java.lang.OutOfMemoryError:Java 堆空间".
显然 8GB RAM 不足以容纳我的输入文件。这是否意味着唯一的解决方案是拥有更强大的硬件(例如 16GB RAM 或非常强大的服务器/集群)?
这个问题有解决办法吗? (例如,减少输入文件?如果是这样,您认为减少的标准是什么?)。还有其他想法或建议吗?
如果您在 Mac OS X 计算机上运行 Weka GUI,则可以编辑 plist 配置文件。我跟着指示 http://weka.8497.n7.nabble.com/increasing-heap-size-in-mac-osx-td14906.html来自 Weka 邮件列表。
cd 到 /Applications/weka-XXX.app/Contents ,或者安装 weka 可执行文件的任何位置。
那里会有一个名为 Info.plist 的文件。我建议您将该文件的副本保存到其他位置,因为您需要在下一步中更改它。
在您喜欢的文本编辑器中打开 weka-XXX.app/Contents/Info.plist (XML) 文件,然后查找显示“VMOptions”的块。应该有一个值“-Xmx256M”,它指定内存。将该值更改为更大的值,例如“-Xmx1024M”。
启动威卡。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)