Amazon SageMaker

機械学習モデルを大規模に構築、トレーニング、デプロイ

Amazon SageMaker は、開発者やデータサイエンティストが、機械学習モデルをあらゆる規模で、迅速かつ簡単に構築、トレーニング、デプロイできるようにする完全マネージド型プラットフォームです。Amazon SageMaker を使用すると、通常、開発者による機械学習の足手まといになるような障壁をすべて取り除きます。

モデルを構築してトレーニングし、本番環境にデプロイするというプロセスは非常に複雑で多くの時間を必要とするため、ほとんどの開発者は機械学習は思っていたよりもずっと困難であると感じています。まず、トレーニングデータを収集して用意し、重要なデータセットの要素を検出する必要があります。次に、使用するアルゴリズムとフレームワークを選択する必要があります。アプローチを決定したら、予測方法をトレーニングによってモデルにティーチングしますが、これには多くのコンピューティングが必要です。その後、最適な予測を実現するようモデルを調整する必要がありますが、ほとんどの場合、これには手間と手動による労力がかかります。完全にトレーニングされたモデルを開発したら、そのモデルをアプリケーションに統合し、次いでこのアプリケーションをインフラストラクチャにデプロイしてスケールします。このような作業すべてにおいて、多くの専門知識、大量のコンピューティングやストレージ、プロセスの各部分をテストして最適化するための多くの時間が必要とされます。結局、すべてを実行するのは不可能であるとほとんどの開発者が感じるのも不思議ではありません。

Amazon SageMaker では、開発者がこれらの各ステップを実行するのを阻む複雑性を取り除きます。Amazon SageMaker には、機械学習モデルを構築、トレーニング、デプロイするために、組み合わせても単体でも使用できるモジュールが用意されています。

Amazon SageMaker の紹介 (日本語字幕) (7:46)

仕組み

構築

Amazon SageMaker では、機械学習モデルの構築とトレーニングの準備がより簡単になるように、トレーニングデータにすばやく接続し、アプリケーションに最適なアルゴリズムとフレームワークを選択して、最適化するために必要なツールがすべて揃っています。Amazon SageMaker には、Amazon S3 に保存されているトレーニングデータを簡単に分析し可視化できる、ホスト型の Jupyter ノートブックが含まれます。S3 のデータに直接接続するか、AWS Glue を使用して Amazon RDS、Amazon DynamoDB、Amazon Redshift からデータを S3 に移動して、それらのデータをノートブックで分析できます。

Amazon SageMaker では、アルゴリズムの選択に役立つよう、最も一般的な機械学習アルゴリズムが事前にインストールされ最適化されており、他の機械学習サービスと比べて最大 10 倍のパフォーマンスでこれらのアルゴリズムを実行できます。また、Amazon SageMaker は、TensorFlow、Apache MXNet、Chainer を Docker コンテナで実行するよう事前構成されています。これらのオープンソースコンテナをローカル環境にダウンロードし、Amazon SageMaker をトレーニングで使用したり、本番環境でモデルをホストする前に、Amazon SageMaker Python SDK を使用してローカルモードでスクリプトをテストすることもできます。独自のフレームワークを使用することも可能です。

トレーニング

Amazon SageMaker コンソールを使用してワンクリックでモデルをトレーニングできます。Amazon SageMaker は、基盤となるすべてのインフラストラクチャを自動的に管理するほか、ペタバイト規模のモデルのトレーニング用に簡単にスケーリングできます。トレーニングプロセスをより高速かつ簡単にするために、Amazon SageMaker ではモデルを自動的に調整してその精度を最大限に高めます。

デプロイ

モデルのトレーニングと調整が完了したら、Amazon SageMaker を本番稼働用環境に簡単にデプロイして、リアルタイムデータやバッチデータに対する予測 (推論と呼ばれるプロセス) の生成を開始できます。Amazon SageMaker は、高パフォーマンスと高可用性の両方を実現するために、複数のアベイラビリティーゾーンに分散されている Amazon SageMaker ML インスタンスの Auto Scaling クラスターにモデルをデプロイします。また、Amazon SageMaker には、A/B テスト機能も組み込まれており、モデルをさまざまなバージョンでテストし、試して、最良の結果を得るのに役立ちます。

Amazon SageMaker により、機械学習の難しくて手間のかかる作業が不要になり、機械学習モデルをすばやく簡単に構築、トレーニング、デプロイできます。

利点

機械学習を本番環境にすばやく移行

Amazon SageMaker により、機械学習モデルのトレーニング、調整、デプロイに必要な時間は大幅に短縮されます。また、Amazon SageMaker では高度なトレーニングやチューニングの技術すべてが管理および自動化されるため、モデルを本番環境にすばやく移行できます。

あらゆるフレームワークやアルゴリズムを選択可能

Amazon SageMaker では機械学習のすべてのアルゴリズムとフレームワークをサポートしているため、既に使い慣れているテクノロジーを使用できます。Amazon SageMaker には Apache MXNet、TensorFlow、Chainer が事前にインストールされており、さまざまな組み込みのハイパフォーマンス機械学習アルゴリズムを利用できます。別のフレームワークまたはアルゴリズムを使ってトレーニングする場合は、独自の Docker コンテナを使用できます。

1-Click トレーニングおよびデプロイ

Amazon SageMaker コンソールでワンクリックするか、簡単な API コールを行ってモデルのトレーニングを開始できます。トレーニングが完了し、モデルをデプロイする用意ができたら、Amazon SageMaker コンソールでワンクリックするだけでモデルを起動できます。

既存のワークフローを簡単に統合

Amazon SageMaker は、既存の機械学習ワークフローの一部として、組み合わせても単体でも使用できる 3 つのモジュールで設計されています。

トレーニング済みのモデルに簡単にアクセス

Amazon SageMaker では、アプリケーションから呼び出すことができる HTTPS エンドポイントを提供することで、機械学習モデルをアプリケーションに簡単に統合できます。

スピードのために最適化

Amazon SageMaker は TensorFlow、Apache MXNet、Chainer の最新バージョンに合わせてあらかじめ設定され、NVIDIA GPU で最高のパフォーマンスを得るため CUDA9 ライブラリを備えています。NVIDIA Volta V100 GPU で実行する Amazon SageMaker P3 インスタンスでは、Amazon SageMaker は比類のないスピードで深層学習モデルをトレーニングできます。

SageMaker のお客様

どのような深層学習フレームワークでもトレーニング

Amazon SageMaker では、モデルトレーニングにどのような深層学習フレームワークでもお使いになれます。お客様の Docker コンテナを、Caffe2、PyTorch、Microsoft Cognitive Toolkit (CNTK)、Chainer、または Torch などのお好きなフレームワークと共にお使いになりますと、Amazon SageMaker がその下のインフラストラクチャを管理してお客様のモデルをトレーニングします。

TensorFlow
Caffe2
Apache MXNet
Chainer
Keras
Torch
Gluon
Microsoft Cognitive Toolkit
PyTorch

ユースケース

広告のターゲティング

Amazon SageMaker と AWS の他のサービスを併用することで、広告収益を最適化できます。Amazon SageMaker では機械学習モデルのトレーニングとデプロイを簡単に行えるため、オンライン広告のターゲティング効率は高まり、顧客エンゲージメントとコンバージョンが向上します。レコメンドシステム、クリックスルーの予測、顧客セグメンテーション、ライフタイムバリュー引き上げモデルといったものすべては Amazon SageMaker のサーバーレスの分散環境でトレーニングできます。構築後のモデルは、低レイテンシーの Auto Scaling エンドポイントで簡単にホストすることも、他のリアルタイム入札システムに送信することもできます。

クレジットデフォルトの予測

Amazon SageMaker により、機械学習の一般的な問題であるクレジットデフォルトの可能性を予測することが簡単になります。Amazon SageMaker は、Amazon Redshift、Amazon EMR、AWS Glue などの既存の分析フレームワークと緊密に統合されているため、Amazon S3 のデータレイクに大規模かつ多様なデータセットを公開し、すばやく変換して機械学習モデルを構築し、すぐにホストしてオンライン予測を実行することができます。

産業用 IoT および機械学習

産業用 IoT および機械学習によるリアルタイム予測では、機械の故障またはメンテナンスのスケジュールを予測できるため、さらに高度なレベルの効率性を実現します。  物理アセット、プロセス、またはシステムのデジタルツイン (複製) をモデルとして生成して予防的メンテナンスを予測し、または複雑な機械や産業プロセスの最適化が行えます。このモデルはほとんどリアルタイムで継続的にアップデートして、起こりうる変化を「学習」できます。

サプライチェーンと需要の予測

Amazon SageMaker はどのように大きな e-コマースの場でも各製品に対して個々のセールス予測の作成に要するインフラとアルゴリズムを与えてくれます。Amazon SageMaker は時系列と製品カテゴリーのデータのみからでも季節変動、トレンド、製品類似性を検知して、新規アイテムに対しても正確な予測をお届けします。

クリックスルー予測

Amazon SageMaker は XGboost アルゴリズムの単一コンピューター、分散型 CPU 両方での実装が可能で、広告のクリックスルーレートの予測など、複数の分類、回帰、ユースケースのランキングに有用です。クリック予測は、できるだけ正確にクリックスルーレート (CTR) を予測して消費者の使い心地を確保するために重要ですので、オンライン広告システムでは中心的な位置を占めています。、XGBoost アルゴリズムを用いると、リアルタイムで予測ができ、スコア付けされた予測結果を得られます。それによって特定の広告業者からの広告を行うかどうかを決定したり、表示する広告の CTR 予測を改善したりできます。

コンテンツの質の予測

Amazon SageMaker は予めプロセスを適用してテキスト中の構造を見つけ出し、その情報をコンテンツの質に関する予測を行うツールを数多く備えています。大規模なテキストボリューム中で単語埋め込みを生成して意味的、構文的な類似を見つけ、類似の言葉をグループにまとめて希薄性を回避できます。そこからAmazon SageMaker の高度なトピックモデルを用いて類似文書を個々にクラスター分けできます。最後に、次元を減らしたグループ別言葉データ上で、クラスターごとに独立したクラス分けモデルを構築して、文書をモデレートする必要があるかどうかを決定します。

Amazon SageMaker の詳細

特徴ページをご覧ください