我试图使用stanford-ner.jar在一个相对较大的语料库(504MB)上进行训练,即使我使用了-Xms1g和-Xms1g选项,仍有内存问题。什么是可怕的(我假设)是输出,当我试图训练一个小模型时,输出就像:
[1000][2000]numFeatures = 215032
然而,我目前所得到的员工甚至达到了" 534700"和numberFeatures仍在计算中。我认为必定有一些错误会导致内存问题导致软件无法处理如此大的功能?而且我不太了解[1000] [2000] ..这些是什么意思?是否有斯坦福大学的教程解释软件的输出?
我的火车语料库'格式如下:
Google COMP
And O
Steve PER
. O
Microsoft COMP
Facebook COMP
Total MET
profix MET
. MET
这样的事情,小条目都使这个504MB语料库。
有人能指出我的问题吗?
谢谢!
答案 0 :(得分:0)
您应该增加分配给程序的内存。您传递给Java的-mx
值是多少? -Xms
设置初始内存,而-mx
(或-Xmx
)设置最大内存。我的猜测是,对于500MB的语料库,这必须是一个非常大的值 - 至少10GB,甚至更多。最重要的是,我有一种不好的感觉,这需要很长时间才能训练。
你从哪里收集这么大的训练语料库?是否有可能对语料库进行二次采样,至少在初期,并查看是否进行了训练?