【发布时间】:2016-11-22 15:04:20
【问题描述】:
我正在尝试使用此代码加载 Google 新闻语料库:
File gModel = new File("/word2vec/GoogleNews-vectors-negative300.bin.gz");
Word2Vec vec = WordVectorSerializer.loadGoogleModel(gModel, true);
但它会导致此错误:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
我尝试像 deeplearning4j 官方文档中解释的那样更改 VM 选项参数:
-Xms1024m -Xmx10g -XX:MaxPermSize=2g
【问题讨论】:
-
我假设您使用的是 64 位 JDK 7,并且该机器具有 > 10G 的可用物理内存。您可能会考虑改用 JDK 8。Perm 空间已经消失 - 它使用元空间。
-
for %i in (javac.exe) do @echo. %~$PATH:i C:\Program Files\Java\jdk1.8.0_05\bin\javac.exe ..我正在使用的JDK..我应该改变它吗?
-
JDK 8 看起来不错。它是在 64 位 Windows 操作系统上运行的 64 位版本吗?您是否安装了超过 10GB 的可用物理内存?
-
它是 64 位 Windows.. 不,我没有 10 .. 没有其他解决方案?
-
请求比可用内存更多的内存似乎很愚蠢。您必须为操作系统等留出足够的空间。JDK 8 没有永久空间;这是元空间。您应该调查增加元空间的大小。一开始不要追求那么大的东西。做一些阅读。
标签: java netbeans out-of-memory deeplearning4j