3

我已将自己的 Jupyter 笔记本上传到 Sagemaker,并尝试为 S3 中的训练/验证数据创建迭代器,如下所示:

train = mx.io.ImageRecordIter(
        path_imgrec         = ‘s3://bucket-name/train.rec’ …… )

我收到以下异常:

MXNetError: [04:33:32] src/io/s3_filesys.cc:899: Need to set enviroment variable AWS_SECRET_ACCESS_KEY to use S3

我检查了与此笔记本实例附加的 IAM 角色是否具有 S3 访问权限。关于解决此问题可能需要什么的任何线索?

4

1 回答 1

4

如果您的 IAM 角色设置正确,那么您需要先将文件下载到 Sagemaker 实例,然后再进行处理。就是这样:

# Import roles
import sagemaker
role = sagemaker.get_execution_role()

# Download file locally
s3 = boto3.resource('s3')
s3.Bucket(bucket).download_file('your_training_s3_file.rec', 'training.rec')

#Access locally
train = mx.io.ImageRecordIter(path_imgrec=‘training.rec’ …… )
于 2018-03-29T06:37:55.727 回答