首页 > 解决方案 > 是否有替代方法可以在内存中完全加载预训练的词嵌入?

问题描述

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

内存使用率非常高,我想知道是否有另一种使用词嵌入的方法,而无需将整个数据加载到内存中。

我最近遇到了 Python 中的生成器。他们能帮我减少内存使用吗?

谢谢!

标签: pythonmachine-learningmemory-managementnlpword-embedding

解决方案


你有什么任务?如果这是一个基于相似性的任务,您可以简单地使用load_word2vec_formatgensim 中的方法,这允许您传入对加载向量数量的限制。Googlenews 集合中的向量按频率排序,这将为您提供关键向量。这在理论上也是有道理的,因为频率较低的词通常具有相对较差的表示。


推荐阅读