在hadoop集群上训练word2vec

时间:2016-06-08 13:01:27

标签: python hadoop pyspark word2vec

尝试训练Word2vec模型时,出现以下错误:

~$ ls -l gg*     # gg is the name of shell script
-rwxr-xr-x. 1 yazdmet yazdmet 41    Jun 8 19:03 gg 
-rwx-wx--x. 1 yazdmet yazdmet 11248 Jun 8 19:08 gg.x 
-rw-rw-r--. 1 yazdmet yazdmet 9538  Jun 8 19:08 gg.x.c

我试图根据以下公式限制向量的增长,使其保持在整数最大值的范围内:

py4j.protocol.Py4JJavaError: An error occurred while calling o106.trainWord2VecModel.
: java.lang.OutOfMemoryError: Requested array size exceeds VM limit

其中:

featureSize = (maxIntSize / 8)/vocabulary size

就我而言。

maxIntsize/8 = 268435455 

因此特征向量大小设置为:

vocabulary size = 1811786

为我的任务留下足够的判别力,同时不会超出系统阵列大小的范围。

我的设置是:

148

增加执行程序内存似乎没有帮助...

谷歌搜索或询问集群顾问似乎都知道如何解决它。

0 个答案:

没有答案