Загрузите данные о глубоком обучении на облако

В этом примере показано, как загрузить данные на блок Amazon S3.

Прежде чем можно будет выполнить обучение глубокому обучению в облаке, необходимо загрузить данные на облако. Пример показывает, как загрузить набор данных CIFAR-10 на ваш компьютер, и затем загрузить данные на блок Amazon S3 для дальнейшего использования в MATLAB. Набор данных CIFAR-10 является помеченным набором данных изображения, обычно используемым в сравнительном тестировании алгоритмов классификации изображений. Прежде, чем запустить этот пример, вам нужен доступ к учетной записи Amazon Web Services (AWS). После того, как вы загрузите набор данных на Amazon S3, можно попробовать любой из примеров в Глубоком обучении в параллели и в облаке (Deep Learning Toolbox).

Загрузите CIFAR-10 на локальную машину

Задайте локальную директорию, в которой можно загрузить набор данных. Следующий код создает папку в вашем текущем каталоге, содержащем все изображения в наборе данных.

directory = pwd; 
[trainDirectory,testDirectory] = downloadCIFARToFolders(directory);
Downloading CIFAR-10 data set...done.
Copying CIFAR-10 to folders...done.

Загрузите локальный набор данных на блок Amazon S3

Чтобы работать с данными в облаке, можно загрузить на Amazon S3 и затем использовать хранилища данных, чтобы получить доступ к данным в S3 от рабочих в кластере. Следующие шаги описывают, как загрузить набор данных CIFAR-10 от вашей локальной машины до блока Amazon S3.

1. Для эффективных передач файлов к и от Amazon S3, загрузите и установите инструмент AWS Command Line Interface от https://aws.amazon.com/cli/.

2. Задайте свой ID Ключа доступа AWS, Секретный Ключ доступа и область блока как системные переменные. Свяжитесь ваши 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 или при помощи команды, такой как следующее:

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. Скопируйте свои учетные данные AWS в ваших кластерных рабочих путем завершения этих шагов в MATLAB:

a. В разделе Environment на вкладке Home выберите Parallel> Create и Manage Clusters.

b. В Кластерной панели Профиля Кластерного менеджера по Профилю выберите свой профиль кластера облака.

c. Во вкладке Properties выберите свойство EnvironmentVariables, прокрутив по мере необходимости, чтобы найти свойство.

d. В правом нижнем углу окна нажмите Edit.

e. Щелкните в поле справа от EnvironmentVariables, и затем введите эти три переменные, каждого на его собственной линии: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, и AWS_DEFAULT_REGION.

f. В правом нижнем углу окна нажмите Done.

Для получения информации о том, как создать кластер облака, смотрите, Создают Кластер Облака.

Используйте набор данных в MATLAB

После того, как вы будете хранить свои данные в Amazon S3, можно использовать хранилища данных, чтобы получить доступ к данным от кластерных рабочих. Просто создайте datastore, указывающий на URL блока S3. Следующий пример кода показывает, как использовать imageDatastore получить доступ к блоку S3. Замените 's3://MyExampleCloudData/cifar10/train' с URL вашего блока S3.

imds = imageDatastore('s3://MyExampleCloudData/cifar10/train', ...
 'IncludeSubfolders',true, ...
 'LabelSource','foldernames');

С набором данных CIFAR-10, теперь сохраненным в Amazon S3, можно попробовать любой из примеров в Глубоком обучении в параллели и в облаке (Deep Learning Toolbox), которые показывают, как использовать CIFAR-10 в различных вариантах использования.

Смотрите также

Похожие темы