主要内容

将深度学习数据上传到云端

本示例展示如何将数据上载到Amazon S3桶。

在您可以在云中执行深度学习训练之前,您需要将数据上传到云端。该示例演示如何将CIFAR-10数据集下载到计算机,然后将数据上传到Amazon S3存储桶中,以供以后在MATLAB中使用。CIFAR-10数据集是一个标记图像数据集,通常用于对图像分类算法进行基准测试。在运行这个示例之前,您需要访问一个Amazon Web Services (AWS)帐户。在将数据集上传到Amazon S3之后,您可以在中尝试任何示例并行和云中的深度学习

下载CIFAR-10到本地机器

指定要在其中下载数据集的本地目录。下面的代码在当前目录中创建一个文件夹,其中包含数据集中的所有图像。

目录= pwd;[trainDirectory,testDirectory] = downloadCIFARToFolders(目录);
下载CIFAR-10数据集…完成。复制CIFAR-10到文件夹…完成。

上传本地数据集到Amazon S3桶

要使用云中的数据,可以将数据上传到Amazon S3,然后使用数据存储从集群中的worker访问S3中的数据。以下步骤描述如何将CIFAR-10数据集从本地机器上传到Amazon S3桶。

1.为了有效地在Amazon S3之间传输文件,请从。下载并安装AWS命令行接口工具https://aws.amazon.com/cli/

2.将桶的AWS Access Key ID、Secret Access Key和Region指定为系统环境变量。请与AWS帐户管理员联系以获取密钥。

例如,在Linux、macOS或Unix上,指定这些变量:

export AWS_ACCESS_KEY_ID="YOUR_AWS_ACCESS_KEY_ID" export AWS_SECRET_ACCESS_KEY="YOUR_AWS_SECRET_ACCESS_KEY" export AWS_DEFAULT_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 web页面或如下命令为您的数据创建一个桶:

Aws s3 MB s3://mynewbucket

4.使用如下命令上传数据:

Aws s3 cp mylocaldatapath s3://mynewbucket——递归

例如:

aws s3 cp path/to/CIFAR10/in/the/local/machine s3://MyExampleCloudData/ CIFAR10/——recursive

5.通过在MATLAB中完成以下步骤,将您的AWS凭据复制到您的集群worker:

a.在环境章节首页选项卡上,选择平行>创建和管理集群

b.在集群配置文件窗格的集群配置文件管理器,选择您的云集群配置文件。

c.在属性选项卡,选择EnvironmentVariables属性,根据需要滚动以查找属性。

d.在窗口右下方,单击编辑

e.单击右侧框中的EnvironmentVariables,然后输入这三个变量,每个变量都在自己的行上:AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY,AWS_DEFAULT_REGION

f.在窗口右下方,单击完成

有关如何创建云集群的信息,请参见创建云集群(并行计算工具箱)

使用MATLAB中的数据集

在Amazon S3中存储数据后,可以使用数据存储从集群工作者访问数据。只需创建一个指向S3桶URL的数据存储。下面的示例代码展示了如何使用imageDatastore访问S3桶。取代s3: / / MyExampleCloudData / cifar10 /火车'S3存储桶的URL。

imds = imageDatastore(s3: / / MyExampleCloudData / cifar10 /火车'...“IncludeSubfolders”,真的,...“LabelSource”“foldernames”);

现在CIFAR-10数据集存储在Amazon S3中,您可以尝试其中的任何示例并行和云中的深度学习展示了如何在不同的用例中使用CIFAR-10。

另请参阅

相关的话题