首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法加载word2vec模型

无法加载word2vec模型
EN

Stack Overflow用户
提问于 2022-03-03 15:20:58
回答 1查看 612关注 0票数 0

我在本地机器上使用gensim训练了一个word2vec模型,并将所有文件上传到AWS。我能够在本地机器上加载模型,但是在AWS上加载

's3://saltsagemaker/models/bilstm_models/word2vec/word2vec_model.wv.vectors.npy‘

FileNotFoundError: Errno 2没有这样的文件或目录:

这行得通

代码语言:javascript
复制
# LOCAL MACHINE
from gensim.models import Phrases, Word2Vec
WV_MODEL = 'model_train_script/models/bilstm_models/word2vec/word2vec_model'
wv_model = Word2Vec.load(WV_MODEL)

这不管用

代码语言:javascript
复制
# AWS CODE
from gensim.models import Phrases, Word2Vec
WV_MODEL = 's3://saltsagemaker/models/bilstm_models/word2vec/word2vec_model'
wv_model = Word2Vec.load(WV_MODEL)

上面的代码提供了以下内容

's3://saltsagemaker/models/bilstm_models/word2vec/word2vec_model.wv.vectors.npy‘

FileNotFoundError: Errno 2没有这样的文件或目录:

上传到本地机器上的文件

上载在AWS上的文件

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-03 16:49:16

Gensim依赖于加载辅助文件的numpy代码(如word2vec_model.wv.vectors.npy)不支持远程S3路径(如's3://saltsagemaker/models/bilstm_models/word2vec/word2vec_model.wv.vectors.npy' )。所以,它把它解释成一条局部路径&什么也找不到。

你可以:

  • 在使用前将文件手动下载到本地临时空间;或者
  • 完全避免使用Gensim对象的自定义.save() & .load()方法,而是使用.save()pickle功能将模型对象写入单个文件,然后在单个文件上使用unpickle将其从单个S3路径

F 212中读取回来。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71339571

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档