我正在尝试使用亚马逊网络服务SageMaker训练一个自定义的tensorflow模型。因此,在我应该提供的model_fn方法中,我希望能够读取外部文件。我已经将文件上传到S3,并尝试像下面这样阅读:
BUCKET_PATH = 's3://<bucket_name>/data/<prefix>/'
def model_fn(features, labels, mode, params):
# Load vocabulary
vocab_path = os.path.join(BUCKET_PATH, 'vocab.pkl')
with open(vocab_path, 'rb') as f:
vocab = pickle.load(f)
n_vocab = len(vocab)
...我得到了一个IOError: [Errno 2] No such file or directory
如何在培训期间读取此文件?
发布于 2018-04-12 02:24:03
我不认为pickle.load能ping通S3桶。您可以将数据保存在python笔记本路径中,也可以使用boto3客户端下载。
此外,您可能不想在model_fn中下载它。这将在每个时期调用。通常,数据是在train_input_fn中加载和准备的。
https://stackoverflow.com/questions/49772344
复制相似问题