此示例演示如何将数据上载到AmazonS3存储桶。
在云中执行深度学习培训之前,您需要将数据上传到云中。该示例显示了如何将CIFAR-10数据集下载到您的计算机上,然后将数据上载到Amazon S3存储桶中,以供以后在MATLAB中使用。CIFAR-10数据集是一个标签图像数据集,通常用于基准图像分类算法。在运行此示例之前,您需要访问AmazonWebServices(AWS)帐户。将数据集上载到AmazonS3后,可以尝试中的任何示例并行和云端的深度学习.
指定要在其中下载数据集的本地目录。以下代码在当前目录中创建一个文件夹,其中包含数据集中的所有图像。
目录=pwd;[trainDirectory,testDirectory]=下载CIFartofolders(目录);
正在下载CIFAR-10数据集…完成。正在将CIFAR-10复制到文件夹…完成。
要处理云中的数据,您可以上载到Amazon S3,然后使用数据存储从集群中的工作者访问S3中的数据。以下步骤描述如何将CIFAR-10数据集从本地计算机上载到Amazon S3存储桶。
1.为了在AmazonS3之间高效地传输文件,请从下载并安装AWS命令行界面工具https://aws.amazon.com/cli/
.
2.将AWS访问密钥ID、机密访问密钥和存储桶区域指定为系统环境变量。请与AWS帐户管理员联系以获取密钥。
例如,在Linux、macOS或Unix上,指定以下变量:
export AWS\u ACCESS\u KEY\u ID=“您的\u AWS\u ACCESS\u KEY\u ID”export AWS\u SECRET\u ACCESS\u KEY=“您的\u AWS\u SECRET\u ACCESS\u KEY”export AWS\u DEFAULT\u REGION=“us-east-1”
在Windows上,指定以下变量:
set AWS_ACCESS_KEY_ID="YOUR_AWS_ACCESS_KEY_ID" set AWS_SECRET_ACCESS_KEY="YOUR_AWS_SECRET_ACCESS_KEY" set AWS_DEFAULT_REGION="us-east-1"
要永久地指定这些环境变量,请在您的用户或系统环境中设置它们。
3.使用AWS S3网页或以下命令为数据创建存储桶:
aws s3 mb s3://mynewbucket
4.使用以下命令上载数据:
Aws s3 cp mylocaldatapath s3://mynewbucket——recursive
例如:
aws s3 cp path/to/CIFAR10/in/the/local/machine s3://MyExampleCloudData/CIFAR10/--recursive
5.通过在MATLAB中完成以下步骤,将您的AWS凭据复制到集群工作人员:
的。环境关于家选项卡,选择平行>创建和管理集群.
b。集群配置文件窗格中,选择您的云集群配置文件。
c、 在性质选项卡上,选择环境变量属性,根据需要滚动以查找该属性。
d.单击窗口右下方的编辑.
e、 在对话框右侧的框中单击环境变量,然后键入这三个变量,每一个变量都有自己的行:AWS\u访问\u密钥\u ID
,AWS_SECRET_ACCESS_KEY
,AWS_默认_区域
.
f.在窗口右下方,单击完成.
有关如何创建云群集的信息,请参阅创建云集群(并行计算工具箱).
在AmazonS3中存储数据后,您可以使用数据存储访问集群工作程序中的数据。只需创建一个指向S3 bucket URL的数据存储。下面的示例代码显示了如何使用imageDatastore
访问S3存储桶。代替“s3://MyExampleCloudData/cifar10/train”
S3桶的URL。
imds=图像数据存储(“s3://MyExampleCloudData/cifar10/train”,...“IncludeSubfolders”符合事实的...“LabelSource”,“foldernames”);
使用现在存储在AmazonS3中的CIFAR-10数据集,您可以在中尝试任何示例并行和云端的深度学习展示了如何在不同的用例中使用CIFAR-10。