我想在我的机器学习模型中使用预训练的词嵌入。我拥有的词嵌入文件大约有4GB。我目前将整个文件读取到内存中的一个字典里,每当我想将一个词映射到其向量表示时,我就在那个字典中进行查找。
内存使用量非常高,我想知道是否有其他方法可以在不将所有数据加载到内存中的情况下使用词嵌入。
我最近了解了Python中的生成器。它们能帮我减少内存使用吗?
谢谢!
回答:
你有什么任务在考虑吗?如果这是一个基于相似度的任务,你可以简单地使用gensim中的load_word2vec_format
方法,这允许你限制加载的向量数量。像Googlenews集合中的向量是按频率排序的,这将为你提供关键的向量。从理论上讲,这也是合理的,因为低频词通常会有相对较差的表示。