除了将预训练的单词嵌入完全加载到内存中,还有其他选择吗?

时间:2019-03-18 21:53:17

标签: python machine-learning memory-management nlp word-embedding

我想在我的机器学习模型中使用预训练的词嵌入。我所拥有的单词嵌入文件约为4GB。我目前将整个文件读入词典的内存中,每当我想将单词映射到其矢量表示形式时,我都会在该词典中进行查找。

内存使用率很高,我想知道是否存在另一种使用单词嵌入而不将整个数据加载到内存中的方法。

我最近遇到过Python生成器。他们可以帮助我减少内存使用吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您打算执行什么任务?如果这是基于相似性的任务,则可以只使用gensim中的load_word2vec_format方法,这允许您传递对加载的向量数的限制。 Googlenews集合中的向量按频率排序,这将为您提供关键向量。 从理论上讲,这也很有意义,因为低频单词通常具有相对较差的表示。