我在本地机器上使用gensim训练了一个word2vec模型,并将所有文件上传到AWS。我能够在本地机器上加载模型,但是在AWS上加载
's3://saltsagemaker/models/bilstm_models/word2vec/word2vec_model.wv.vectors.npy‘
FileNotFoundError: Errno 2没有这样的文件或目录:
这行得通
# 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)这不管用
# 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上的文件

发布于 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' )。所以,它把它解释成一条局部路径&什么也找不到。
你可以:
.save() & .load()方法,而是使用.save()的pickle功能将模型对象写入单个文件,然后在单个文件上使用unpickle将其从单个S3路径F 212中读取回来。
https://stackoverflow.com/questions/71339571
复制相似问题