Amazon Web Services ブログ
AWS Deep Learning AMI の更新: TensorFlow、Apache MXNet、Keras、PyTorch の新バージョン
TensorFlow、PyTorch、Keras、最新バージョンの Apache MXNet 1.0 などを含む様々なフレームワークにわたり、NVIDIA Tesla V100 “Volta” GPUs でのトレーニング速度を大幅に改善するため、AWS Deep Learning AMI を更新しました。
現在使用可能な AMI には主に 2 つのタイプがあります。Conda ベースの AWS Deep Learning AMI は、一般的に使用されているフレームワークの最新のポイントリリース (事前設定済みの CUDA、ノートブック、サポートしているライブラリを含む) を Conda ベースの仮想環境内にまとめています。これはすべての開発者に対して推奨されています。ソースコードを使用する Deep Learning AMI は、基盤となるフレームワークに変更を施したい場合や、最先端の技術を取り入れたい場合に適しています。AWS はこの AMI で使用可能なカスタムそして最適化したビルドを構築しています。これにはいくつもの高度な機能やパフォーマンスの改善が含まれています。本稼働環境で導入する前にコードをテストしてください。
TensorFlow の様々な精度を使用してトレーニング速度を改善
ソースコードを使用した新しい AMI には TensorFlow のカスタマイズされた更新済みビルドが含まれています。これは EC2 の P3 インスタンスで使用可能な V100 GPU で様々な精度を使用するトレーニングと推論を活用します。これによりトレーニング時間を大幅に短縮することができます。たとえば、このビルドを使用して ResNet-50 をトレーニングした場合、ストックの TensorFlow 1.4 に比べて 1.6 倍も優れた結果を得ることができます。
このビルドは Amazon Linux や Ubuntu を対象とした CUDA 9 とソースコードを使用した更新済みの AMI で使用可能です。これは TensorFlow のマスターブランチをベースにしています (コミット: d73e8b3、抽出日: 2017 年 12 月 5日)。TensorFlow 1.4 を使用したい場合は Amazon Linux と Ubuntu を対象とした AWS Deep Learning AMI の Conda 仮想環境で利用することができます。
Keras 2.0 のパフォーマンス改善
TensorFlow 1.4 バックエンドで実行している AMI の Conda 仮想環境で Keras 2.0 を使用できるようになりました。また、Volta に最適化した TensorFlow ビルドに対しても Keras コードを実行することができます。詳しくは先述の CUDA 9 を使用するソースコード AMI の項目をご覧ください。
Volta サポートを備えた PyTorch の最新バージョン
Conda とソースコード AMI に最新バージョンの PyTorch v0.3.0 が含まれるようになりました。これには CUDA 9、cuDNN 7 のサポートが追加されているほか、V100 “Volta” GPU で行うトレーニングモデルに関連するパフォーマンスの改善も含まれています。また、MXNet、Caffe2、Microsoft Cognitive Toolkit がサポートしている一般的なモデル交換形式の ONNX モデルエクスポーターを含むなど、新たなパフォーマンスとユーザビリティの改善も追加しています。
パフォーマンス、ユーザビリティ、相互運用性を含む Apache MXNet 1.0 の最新バージョン
AMI には Apache MXNet 1.0 リリースも含まれています。MXNet パッケージの新たなモデル提供機能は、数行のコードでディープラーニングモデルを実行し提供することができます。これには新しいグラデーション圧縮機能、Caffe フレームワークで記述されたニューラルネットワークコードを MXNet コードに変換する新しいモデルコンバーターも用意されており、開発者は MXNet のスケーラビリティとパフォーマンスをより簡単に活用できます。
ディープラーニングと ONNX
Open Neural Network Exchange (ONXX) は Facebook、Microsoft、AWS がサポートするイニシアチブで、フレームワーク間のトレーニング済みモデルの可搬性を改善します。Deep Learning AMI に含まれているフレームワークの多くが何らかの ONNX サポートを含むようになったため、AMI はインスタンスを終了せずに複数のエンジンでモデルの推論パフォーマンスをテストするのに優れた場所になりました。たとえば PyTorch をトレーニングし Caffe2 で推論を行うことができます。この移動を簡単に行い評価するのに必要な最新のフレームワークとツールをすべて備えているため、Deep Learning AMI が素早くスムーズに移動することができます。
AWS Deep Learning AMI の使用開始
AWS Deep Learning AMI の使用開始は簡単です。Machine Learning ユーザーの様々なニーズに応えるため、AMI の最新リリースは AWS Marketplace で使用可能になっています。AWS の「AMI セレクションガイド (AMI selection guide)」では、1 回のクリックでディープラーニングプロジェクトに適した AMI を選択、取得できます。また、AWS ではモデルトレーニングを迅速に進められるよう、クイックチュートリアルや開発者用リソースを多数ご用意しています。
Conda ベースの AMI:
Deep Learning AMI (Ubuntu)
Deep Learning AMI (Amazon Linux)
AMI とソースコード:
P3 インスタンス
Deep Learning AMI とソースコード (CUDA 9、Ubuntu)
Deep Learning AMI とソースコード (CUDA 9、Amazon Linux)
P2 インスタンス
Deep Learning AMI とソースコード (CUDA 8、Ubuntu)
Deep Learning AMI とソース (CUDA 8、Amazon Linux)
今回のブログの投稿者について
Cynthya Peranandam 氏は、AWS 人工知能ソリューションのプリンシパルマーケティングマネージャーです。ユーザーがビジネス価値の提供を実現できるように、ディープラーニングの使用をサポートしています。余暇にはジョギングをしたり音楽鑑賞を楽しんでいます。