Category: AWS Deep Learning AMIs*


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 LinuxUbuntu を対象とした CUDA 9 とソースコードを使用した更新済みの AMI で使用可能です。これは TensorFlow のマスターブランチをベースにしています (コミット: d73e8b3、抽出日: 2017 年 12 月 5)。TensorFlow 1.4 を使用したい場合は Amazon LinuxUbuntu を対象とした 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 人工知能ソリューションのプリンシパルマーケティングマネージャーです。ユーザーがビジネス価値の提供を実現できるように、ディープラーニングの使用をサポートしています。余暇にはジョギングをしたり音楽鑑賞を楽しんでいます。

AWS ディープラーニング AMI を使用してディープラーニングを開始

ディープラーニングの初心者、また高度なディープラーニングプロジェクトをクラウドで構築したい方でも、AWS を使えば簡単に始められます。

AWS ディープラーニング AMIs は Ubuntu と Amazon Linux バージョンでの利用が可能になっており、いかなるスケールでもクラウドでディープラーニングアプリケーションを実行できるようにします。Amazon マシンイメージ (AMIs) には、Apache MXNet、TensorFlow、Microsoft Cognitive Toolkit (CNTK)、Caffe、Caffe2、Theano、Torch、Keras を含むオープンソースのディープラーニングフレームワークがプリインストールされています。

AMIs では、カスタムの AI モデルをトレーニングしたり、新しいアルゴリズムを試したり、新たなディープラーニングのスキルやテクニックを学ぶことができます。AMIs に追加料金はかかりません。アプリケーションを保存し実行するために必要な AWS のリソースに対してのみお支払いいただきます。

また、AMIs は事前設定されている CUDA や cuDNN ドライバー、Intel Math カーネルライブラリ (MKL) を介して GPU に加速度を提供しています。AMIs には人気の Python パッケージや Anaconda プラットフォームも含まれています。

そのシンプルさ、使いやすさ、コスト節約など、開発者へのメリットは明らかです。そしてコンピューティングインスタンスの起動も簡単です。次の手順に従うと、数分でディープラーニングを開始することができます。 

AMI の起動

AWS マネジメントコンソールにアクセスし、アカウントにサインインするか新しいアカウントを作成します。

(more…)

AWS Deep Learning Conda と Base AMI の利用開始について

AWS は AWS Deep Learning AMI に Conda ベースの AMI と Base AMI という 2 つの新しいバージョンを利用可能にしたことを発表しました。このブログでは、新しい AMI を最大限に活用するための手順と追加リソースについてご説明します。

Conda マネージド型環境を取り入れた新しい Deep Learning AMI

Amazon LinuxUbuntu を対象にした新しい Deep Learning AMI には、人気のオープンソースパッケージと環境管理ツールである Conda を使用して作成したディープラーニング用の Python 環境がプリインストールされています。Conda マネージド型 Python 環境は、Apache MXNet、TensorFlow、Caffe2、PyTorch、Keras、CNTK、Theano を含む、人気のディープラーニングフレームワーク用に事前設定されています。また、Python 環境にはそれぞれ Python 2 と Python 3 が含まれています。AWS マネジメントコンソールを使用して AWS EC2 インスタンスにログインすると、Conda 環境すべてを含むリストがコンソールメッセージとして表示されます。

次のコマンドを実行すると、このリストを取得できます。

conda env list

次に、任意のディープラーニングフレームワーク、たとえば MXNet 用の Python 環境をアクティブ化するには、次を実行します。

For Python 2

source activate mxnet_p27

For Python 3

source activate mxnet_p36

Python 環境に入ったら、次のコマンドを実行してインストール済みのパッケージリストを表示することができます。

conda list

(more…)

Machine Learning ユーザー向けの新しい AWS Deep Learning AMI

この度、AWS Deep Learning AMI の新しい 2 つのバージョンの提供を開始しました。人気のオープンソースパッケージと環境ツールの Conda を使用して作成したディープラーニングフレームワーク用に別の Python 環境を使用する Conda ベースの AMI、そして独自のカスタマイズしたディープラーニングモデルをデプロイするための GPU ドライバとライブラリを使用する Base AMI です。

学会と業界の両方に渡り、ディープラーニングテクノロジーはフレームワーク、アルゴリズム、そして新しい方法や理論に渡り、急速に進化しています。そのため、素早く安全にアルゴリズムをテストしたり、フレームワークの特定のバージョンの最適化、テストやベンチマークの実行、新しく始めるプロジェクト開始の共同作業などにおいてツールを必要とする開発者達にとって複雑の原因になっています。そこで、AWS Deep Learning AMI においても、そうした自由と柔軟性を提供するために仮想環境を追加することにしました。また、新たに開発者用リソースもセットアップすることで、これまで以上に AMI の理解を深めたり、プロジェクトに適切な AMI を選択したり、ハンズオンチュートリアルを利用できるようにしています。

Conda ベースの Deep Learning AMI

Conda ベースの AMI は Conda を使用して作成したディープラーニングの Python 環境にプリインストールされています。各 Conda ベースの Python 環境は、人気のディープラーニングフレームワークの公式 pip パッケージと、その依存関係を含むように設定されています。たとえば、ニューラルネットワークモデルをトレーニングするためのディープラーニングコードを実行する準備が整い、完全に仕上がった仮想環境とお考えください。ステップバイステップガイドでは、任意のディープラーニングフレームワークを使用した環境をアクティブ化する方法や、シンプルな 1 行のコマンドを使用して環境を切り替える方法について説明しています。

AMI のメリットは他にもあります。AMI の環境は相互に孤立した自己完結型のサンドボックスとして稼働します。つまり、サンドボックス内でディープラーニングのコードを実行すると、実行時の環境を完全に見通し全体的に管理することができます。AMI の他のディープラーニング環境を中断してしまう心配なく、新しいソフトウェアパッケージをインストールしたり、既存のパッケージのアップグレードや環境変数を変更することができます。実行環境でこのレベルの柔軟性と詳細管理を行えるということは、一貫性のある再生可能な方法でディープラーニングモデルのテスト実行やパフォーマンスのベンチマークが行えることを意味しています。

最後に、AMI は Jupyter ノートブックに直接プラグできるビジュアルインターフェイスを提供するので、Jupyter ノートブックのブラウザからクリック 1 回で環境を切り替えたり、任意の環境でノートブックを起動したり、環境を再設定することができます。ステップバイステップガイドでは、こうした統合と Jupyter ノートブックやチュートリアルについて説明しています。

(more…)

利用可能になりました – Amazon Linux AMI 2017.09

Amazon Linux AMI の最新バージョン (2017.09) が、すべての AWS リージョンの現行世代の EC2 インスタンスで利用可能になったことをお知らせします。AMI には、EC2 上で実行するアプリケーションのために安定した安全で高性能な環境を提供するように設計された Linux イメージのサポートと保持が含まれています。

簡単なアップグレード
次の 2 つのコマンドを実行して既存のインスタンスをアップグレードし、再起動します。

$ sudo yum clean all
$ sudo yum update

盛りだくさん
AMI には多くの新機能が含まれており、そのうち多くはお客様のリクエストに応えて追加されたものです。概要は次をご覧ください。

Kernel 4.9.51 – Based on the 4.9 の安定したカーネルシリーズをベースにしたこのカーネルには、ENA 1.3.0 ドライバーと TCP Bottleneck Bandwidth and RTT (BBR) のサポートが含まれています。私の投稿 Elastic Network Adapter – High-Performance Network Interface for Amazon EC2 to learn more about ENA をお読みください。BBR を有効にする方法については、リリースノートをお読みください。

Amazon SSM Agent – Amazon SSM Agent がデフォルトでインストールされるようになりました。これにより、EC2 Run Command を使用して、追加セットアップを必要とせずにインスタンスでスクリプトを設定して実行できるようになりました。詳細については、Systems Manager Run Command を使用したコマンドの実行または Manage Instances at Scale Without SSH Access Using EC2 Run Command をお読みください。

Python 3.6 – 最新バージョンの Python が含まれ、virtualenv および alternatives で管理できるようになりました。Python 3.6 は次のようにインストールできます。

$ sudo yum install python36 python36-virtualenv python36-pip

Ruby 2.4 – 2.4 シリーズの最新バージョン Ruby が利用可能になりました。次のようにインストールします。

$ sudo yum install ruby24

OpenSSL – AMI は、OpenSSL 1.0.2k を使用するようになりました。

HTTP/2 – HTTP/2 プロトコルが AMI の httpd24nginx、および curl パッケージでサポートされるようになりました。

リレーショナルデータベースPostgres 9.6 および MySQL 5.7 が利用可能になりました。次のようにインストールできます。

$ sudo yum install postgresql96
$ sudo yum install mysql57

OpenMPIOpenMPI パッケージが 1.6.4 から 2.1.1 に更新されました。OpenMPI 互換パッケージが利用可能になり、古い OpenMPI アプリケーションの構築と実行に使用できるようになりました。

その他 – その他の更新パッケージには、Squid 3.5Nginx 1.12Tomcat 8.5、および GCC 6.4 があります。

今すぐ起動できます
この AMI を使用して今すぐすべての AWS リージョンで EC2 インスタンスを起動できます。この機能は、EBS-backed インスタンスと Instance Store-backed インスタンスで使用でき、HVM および PV モードをサポートします。

Jeff;