ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

クラウドへの深層学習データのアップロード

この例では、Amazon S3 バケットにデータをアップロードする方法を説明します。

クラウドで深層学習を実行するには、データをクラウドにアップロードする必要があります。この例では、CIFAR-10 データセットをコンピューターにダウンロードしてから、後で MATLAB で使用できるように、データを Amazon S3 バケットにアップロードする方法を説明します。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 内のデータにアクセスします。ローカル マシンから Amazon S3 バケットに CIFAR-10 データセットをアップロードする手順は以下のとおりです。

1.Amazon S3 とのファイルの送受信を効率化するために、https://aws.amazon.com/cli/ から AWS コマンド ライン インターフェイス ツールをダウンロードしてインストールします。

2.AWS のアクセス キー ID、シークレット アクセス キー、およびバケットのリージョンをシステム環境変数として指定します。キーを取得するには、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_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_REGION="us-east-1"

これらの環境変数を恒久的に指定するには、お使いのユーザーまたはシステム環境に設定します。

3.AWS S3 の Web ページまたは次のようなコマンドのいずれかを使用して、データ用のバケットを作成します。

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 認証情報をクラスター ワーカーにコピーします。

a. [ホーム] タブの [環境] セクションで、[並列][クラスターの作成と管理] を選択します。

b. クラスター プロファイル マネージャーの [クラスター プロファイル] ペインで、クラウド クラスター プロファイルを選択します。

c. [プロパティ] タブで、EnvironmentVariables プロパティを選択します。このときに、このプロパティを見つけるために必要に応じてスクロールします。

d. ウィンドウの右下にある [編集] をクリックします。

e. EnvironmentVariables の右側にあるボックスをクリックし、各行に、以下の 3 つの変数をそれぞれ入力します。AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY および AWS_REGION。

f. ウィンドウの右下にある、[完了] をクリックします。

クラウド クラスターの作成方法の詳細については、クラウド クラスターの作成を参照してください。

MATLAB でのデータセットの使用

データを Amazon S3 に保存した後、データ ストアを使用してクラスター ワーカーからデータにアクセスできます。S3 バケットの URL をポイントするデータ ストアを作成します。次のサンプル コードは、imageDatastore を使用して S3 バケットにアクセスする方法を示しています。's3://MyExampleCloudData/cifar10/train' を S3 バケットの URL に置き換えます。

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

Amazon S3 に保存された CIFAR-10 データセットを使用して、CIFAR-10 のさまざまな使用方法を説明する並列およびクラウドでの深層学習 (Deep Learning Toolbox)のすべての例を試すことができます。

参考

関連するトピック