投稿日: Dec 24, 2020

Amazon SageMaker Data Wrangler:最も迅速かつ容易に機械学習のデータを準備可能に

Amazon SageMaker Feature Store:機械学習の特徴量の保存、更新、検索、共有用の専用データストア

Amazon SageMaker Pipelines:業界初、機械学習専用の使い勝手に優れた継続的インテグレーション/継続的デリバリー(CI/CD)サービス

Amazon SageMaker Clarify:トレーニングデータに対する可視性を向上し、機械学習モデルのバイアスを制限して予測を説明可能に

Amazon SageMaker Debugger のディーププロファイリング機能:機械学習のトレーニングパフォーマンスを監視し、モデルトレーニングを高速化

Amazon SageMaker の分散型トレーニング機能:現行の機械学習プロセッサに比べて、大規模モデルのトレーニングを最大2倍高速に

Amazon SageMaker Edge Manager:本番環境へのデプロイ時に正確にモデル運用するため、エッジデバイスの機械学習モデルを監視・管理

Amazon SageMaker JumpStart:トレーニング済みモデルとビルド済みワークフロー用の開発者ポータル

(シアトル発、2020 年 12 月 8 日発表)Amazon.com, Inc.(NASDAQ:AMZN)の関連会社である Amazon Web Services, Inc.は、「AWS re:Invent」にて、業界をリードする機械学習サービスの Amazon SageMaker において、エンドツーエンドの機械学習ワークフローの全ステップを容易に自動化し、スケーリングする 9 つの新機能を発表しました。この発表により、データ準備の高速化、準備されたデータ専用のリポジトリ、ワークフローの自動化、バイアスを軽減して予測を説明するためのトレーニングデータの透明性の向上、最大 2 倍速く大規模モデルを分散処理してトレーニングする機能、エッジデバイス上におけるモデルの監視など、画期的な新機能をご利用いただけます。Amazon SageMaker の詳細については、https://aws.amazon.com/sagemaker をご覧ください。

機械学習は主流になりつつある技術ですが、現在もなお急速に進化し続けています。機械学習に注目が集まる一方、簡単に機械学習モデルの作成を行えるかというと、そうではありません。開発者は、機械学習モデルを作成する際、手作業の多いプロセスでデータ準備を始めなければなりません。そして、ノートブックでこれを可視化し、適切なアルゴリズムを選択、フレームワークを設定し、モデルのトレーニングを行い、数百万もの想定されるパラメーターを調整、モデルをデプロイし、パフォーマンスを監視する必要があります。時間が経っても想定通りのモデルの動作するよう、開発者はこうしたプロセスを継続的に繰り返す必要があります。そのため機械学習はこれまで熟練した開発者にしか取り扱えませんでした。しかし、Amazon SageMaker の登場によって状況は一変しました。Amazon SageMaker は、機械学習のあらゆるプロセスの負荷を取り除き、すべての開発者やデータサイエンティストが機械学習モデルのビルド、トレーニング、デプロイの作業を、従来よりも大幅に容易にかつ迅速に行える完全マネージド型サービスです。Amazon SageMaker は、3M、ADP、AstraZeneca、Avis、Bayer、Bundesliga、Capital One、Cerner、Chick-fil-A、Convoy、Domino's Pizza、Fidelity Investments、GE Healthcare、Georgia-Pacific、Hearst、iFood、iHeartMedia、JPMorgan Chase、Intuit、Lenovo、Lyft、ナショナル・フットボール・リーグ(NFL)、Nerdwallet、T-Mobile、Thomson Reuters、Vanguard などの数万社のお客様に活用されており、各社における機械学習の導入を加速させています。

この度の発表は、AWS が過去1年間で提供してきた 50 以上の Amazon SageMaker の新機能に基づいており、開発者やデータサイエンティストによる機械学習モデルの準備、ビルド、トレーニング、管理の作業をより容易にします。

• Amazon SageMaker Data Wrangler による自動的なデータ準備:Amazon SageMaker Data Wrangler は、機械学習用データの準備を最も迅速かつ容易に実現します。機械学習のデータ準備は難しいプロセスを要します。機械学習モデルのトレーニングに使用されるデータ属性がさまざまなソースから取得することが多く、そのフォーマットも多岐にわたるためです。従って、開発者は機械学習の一貫した使い勝手を維持するため、こうしたデータの抽出と標準化に相当な時間を費やします。さらに、機械学習モデルにより有益な情報を与えるため、複合的な特徴量の作成を希望するお客様もいます。例えば、ロイヤルティプログラム特典の対象者を特定するため、過去の購入商品、支払額、購入頻度の特徴量を結合し、支払いの多い消費者層を記述する特徴量の作成する場合です。データを特徴量に変換する作業は、特徴量エンジニアリングと呼ばれており、機械学習モデルの構築に膨大な時間を費やします。Amazon SageMaker Data Wrangler は、データ準備と特徴量エンジニアリングのプロセスを大幅に簡略化します。お客様は Amazon SageMaker Data Wrangler を使用し、様々なデータストアから必要なデータを選択し、ワンクリックでインポートできます。Amazon SageMaker Data Wrangler には、300 以上のデータ変換機能が組み込まれており、コードを一切記述することなく、特徴量の標準化、変換、結合を行いつつ、すべてのインフラストラクチャの処理を管理できます。また、Amazon SageMaker Studio(機械学習のための初の統合開発環境)により、お客様は変換が意図した通りであるかを迅速にプレビューで処理確認することができます。特徴量のエンジニアリングが完了すると、Amazon SageMaker Data WranglerはAmazon SageMaker Feature Store で再利用できるように保存します。
Amazon SageMaker Feature Store による特徴量の保存と管理:Amazon SageMaker Feature Store は、トレーニングや推論のための機械学習の特徴量の保存、更新、検索、共有を容易にする最新のリポジトリです。現在、お客様は特徴量を Amazon Simple Storage Service(S3)に保存できます。この機能は、単一のモデルにマッピングされたシンプルな特徴量セットには有効に機能しますが、ほとんどの特徴量は1つのモデルのみにマッピングされる訳ではありません。ほとんどの特徴量は、複数のモデルと複数の開発者やデータサイエンティストによって繰り返し使用されるものであり、開発者は新たな特徴量が作成されると繰り返しの再利用を希望します。そのため、管理すべき S3 オブジェクトが複数になり、管理作業が難しくなります。開発者やデータサイエンティストは、スプレッドシート、紙のノート、電子メールでこの問題を解決しようとします。時には特徴量を追跡するためにカスタムアプリケーションを構築しようとしますが、これは多くの作業を必要とし、エラーの元因となります。さらに、開発者やデータサイエンティストは、数時間の作業を要する利用可能なすべてのデータを使用した複数のモデルトレーニングのためだけでなく、予測をミリ秒単位で返す必要があり、関連する特徴量のデータのサブセットだけを使用することが多い場合での推論中に使用するために、同一の特徴量が必要です。例えば、プレイリストの次のベストソングを予測するモデルを作成したい場合、開発者は、何千曲もの楽曲でモデルをトレーニングし、推論中に再生された最新3曲をモデルに提供して次の楽曲を予測します。トレーニングと推論では、例は全く異なります。トレーニング中は、モデルは特徴量にオフラインかつバッチでアクセスできますが、推論の場合、モデルはほぼリアルタイムで特徴量のサブセットのみを必要とします。機械学習モデルに採用される単一ソースの特徴量には一貫性が求められるため、このような異なるアクセスパターンの中で、特徴量の一貫性と最新状態を維持することは困難です。Amazon SageMaker Feature Store は、開発者やデータサイエンティストのチーム間で、特徴量のセットの命名、整理、発見、共有を従来に比べて非常に簡単になるため、専用の特徴量ストアを確保することで、この問題を解決します。Amazon SageMaker Feature Store は、機械学習モデルの実行場所の近くにある Amazon SageMaker Studio の中にあるため、推論時のレイテンシーは1桁ミリ秒です。Amazon SageMaker Feature Store を使用すれば、トレーニング用の大規模な特徴量のバッチと推論用の比較的小規模なインスタンス化を整理して更新する作業をシンプルかつ容易に行えます。これにより、機械学習モデル用の特徴量を使う場合一貫したビューを得られ、高精度の予測を行うモデルの生成作業は従来に比べて非常に簡単になります。
• Amazon SageMaker Pipelines のワークフロー管理と自動化:Amazon SageMaker Pipelines は、業界初、機械学習専用の使い勝手に優れた継続的インテグレーション/継続的デリバリー(CI/CD)サービスです。特徴量エンジニアリングの作業で分かる通り、機械学習はオーケストレーションや自動化などを含む複数のステップで構成されています。これは、アプリケーション開発やデプロイをより高速に行う CI/CD などのツールがある従来型のプログラミングとは異なります。機械学習の場合、そもそもCI/CDツールが存在しておらず、その設定や構成、管理が困難なため、CI/CD ツールが使われることはほとんどありません。Amazon SageMaker Pipelines は、エンドツーエンドの機械学習ワークフローの各ステップを定義することができます。これらのワークフローには、データロードのステップ、Amazon SageMaker Data Wrangler からの変換、Amazon SageMaker Feature Store に保存された特徴量、トレーニングの構成とアルゴリズムの設定、デバッグのステップ、最適化のステップが含まれます。Amazon SageMaker Pipelines を使用すれば、Amazon SageMaker Studio からエンドツーエンドのワークフローを容易に再実行でき、同じ設定を使用して毎回全く同じモデルを取得することや、モデルを更新するために新規データを使用して定期的なスケジュールでワークフローを再実行することも可能です。Amazon SageMaker Pipelines は、ワークフローが実行される度に、Amazon SageMaker Experiments(機械学習実験とモデルバージョンの整理、追跡、比較、評価を可能にする Amazon SageMaker の機能)の各ステップをログとして記録します。これにより、開発者は機械学習モデルの反復、トレーニングパラメーター、結果を視覚化して比較できます。Amazon SageMaker Pipelinesを活用することで、ワークフローをチーム間で共有・再利用しながら、モデルの再作成や新たな特徴量、アルゴリズム、最適化を通じて改善へと役立てることが可能です。
• Amazon SageMaker Clarify のバイアス検出と説明可能性の明確化:Amazon SageMaker Clarify は、機械学習ワークフローを通じてバイアス検出を行い、これによって機械学習モデルの公平性と透明性を高めることができます。開発者はトレーニングや推論のためにデータを準備すると、データに統計的なバイアスがないこと、そして、モデル予測の透明性に努め、モデルの特徴量が予測にどのように寄与しているかを説明できるようにする必要があります。開発者は現在、オープンソースのツールを用いてデータ内の統計的バイアスを検出しようとすることがありますが、こうしたツールは多くの手作業とコーディングを必要とし、一般的にエラーが発生しやすくなります。Amazon SageMaker Clarify により、機械学習ワークフロー全体において統計的なバイアスを容易に検出し、機械学習モデルが行う予測に関して説明ができるようになります。Amazon SageMaker Clarify は、Amazon SageMaker Data Wranglerと統合しており、特徴量に関して一連のアルゴリズムを実行することで、データ準備中のバイアスを特定し、想定されるバイアスのソースや深刻度の説明などを含め、可視化を行うことができます。そのため、開発者はバイアスの軽減策を講じることも可能です。Amazon SageMaker Clarify は、Amazon SageMaker Experiments とも統合しており、統計的なバイアスの有無において、トレーニングされたモデルの確認をより簡単に行えます。その際、モデルに入力されたそれぞれの特徴が、予測値にいかなる影響を及ぼすかも詳細に表示されます。さらに、Amazon SageMaker Clarifyは、Amazon SageMaker Model Monitor(本番環境で機械学習モデルの品質を継続的にモニタリングするAmazon SageMaker の機能)と統合しており、モデルの特徴量の重要度が変化してモデル動作に変更が生じた場合、開発者にアラートを発します。
• モデルトレーニングプロファイラである Amazon SageMaker Debugger のディーププロファイリング機能:Amazon SageMaker Debugger のディーププロファイリング機能により、システムリソースの利用率の監視やトレーニングのボトルネックにおけるアラートを自動的に行い、開発者はモデルをより早くトレーニングできます。現在、システム利用率(例:GPU、CPU、ネットワークスループット、メモリ I/O)を監視して、トレーニングジョブのボトルネックの特定とトラブルシューティングを行う標準的な方法がありません。そのため、開発者はモデルのトレーニングを迅速かつコスト効率よく行うことができません。Amazon SageMaker Debugger の新たに発表されたディーププロファイリング機能はこうした問題を解決し、開発者は、Amazon SageMaker Studio でシステムリソースの利用状況の視覚的なプロファイリングすることで監視が可能になり、より簡単に問題の根本原因を特定し、機械学習モデルのトレーニングに要する時間とコストを削減できます。新機能が加わることで、Amazon SageMaker Debugger は、システムリソースの利用状況を監視し、Amazon SageMaker Studio または AWS CloudWatch を通じて、トレーニング中の問題に関してアラートを発信し、トレーニングジョブの異なるフェーズやトレーニング中の特定の時点(例:トレーニングジョブの開始から 28 分後)に対して利用状況との相関化を行うなど、より幅広い用途に対応できます。また、Amazon SageMaker Debugger は、アラートに基づくアクションのトリガーにも対応します(例:GPU 使用率の異常検出時にはトレーニングジョブを中止する)。Amazon SageMaker Debugger のディーププロファイリング機能は、各種フレームワーク(PyTorch、Apache MXNet、TensorFlow)と連携し、トレーニングスクリプトのコードの変更を必要とせずに、システムとトレーニングに関して必要な指標を自動的に収集します。これにより、開発者はAmazon SageMaker Studioでのトレーニング中のシステムリソースの利用状況を可視化できます。
• Amazon SageMaker の分散型トレーニング機能がトレーニング時間を短縮:Amazon SageMaker の最新の分散型トレーニング機能は、大規模かつ複雑なディープラーニングモデルのトレーニング作業を従来のアプローチに比べて最大2倍高速化できます。インテリジェントアシスタント用の自然言語処理、自動運転のための物体検出と分類、大規模コンテンツモデレーションのための画像分類など、高度な機械学習のユースケースでは、トレーニング用にこれまで以上に大規模なデータセットと大容量のグラフィックスプロセッシングユニット(GPU)メモリが必要です。しかし、こうしたモデルの中には、あまりにも大規模で単一 GPU のメモリでは対応不可能なものもあります。お客様は複数の GPU を対象にモデルの分割することもできますが、モデルを分割したトレーニングコードを調整する最善の方法を見つけるには、大抵面倒な実験作業に何週間も要します。こうした課題を克服するため、Amazon SageMaker の分散型トレーニングは 2 つの分散型トレーニング機能を提供しており、開発者は追加コストなしで大規模モデルのトレーニングを最大2倍高速化します。Amazon SageMaker の Data Parallelismエンジンを使用した分散型トレーニング機能は、データを複数のGPUに自動分割することで、トレーニングジョブを単一 GPU から数百あるいは数千もの GPU へとスケーリングし、トレーニング時間を最大 40% 短縮します。トレーニング時間の短縮は、GPUを管理するAmazon SageMakerのData ParallelismエンジンがAWSインフラストラクチャをフル活用できるよう独自にビルドされたアルゴリズムを活用することで GPU を管理し、直線的なスケーリングにより、効率が良い最適な同期を実現しています。Amazon SageMaker の Model Parallelism エンジンを使用した分散型トレーニング機能は、モデルを分割する最善の方法を自動的にプロファイリングして特定することで、数十億のパラメーターを持つ大規模かつ複雑なモデルを複数の GPU に効率的に分割します。その際、グラフ分割のアルゴリズムを用いて、GPU 間で最適な演算のバランスを取り、通信を最小限に抑えることで、GPU メモリの制約に起因するコードの変更を最小限に抑えられ、エラーも少なくできます。
• Amazon SageMaker Edge Manager のエッジデバイス向けモデル管理機能:Amazon SageMaker Edge Manager は、企業のエッジデバイス群のフリートにデプロイした機械学習モデルの最適化、セキュリティ管理、監視、保守が可能です。現在、お客様は、Amazon SageMaker Neo を使用することで、10分の1未満のメモリフットプリントで精度を損なうことなく、最大2倍の速度で動作するエッジデバイス用に最適化されたモデルを作成できます。しかし、エッジデバイスへデプロイ後も、高精度でのパフォーマンスを継続させるには、モデルの管理と監視が必要です。Amazon SageMaker Edge Manager は、ターゲットデバイス上でより高速に動作するようにモデルを最適化し、エッジデバイス用のモデル管理をするため、お客様はエッジデバイス群のフリートにデプロイする機械学習モデルの準備、実行、監視、更新が可能です。Amazon SageMaker Edge Manager を使用することで、モデルに暗号署名を行い、デバイスから Amazon SageMaker に予測データをアップロードして監視や分析を行ったり、Amazon SageMakerコンソール内にデプロイされたモデルの動作を追跡して視覚的に報告するダッシュボードを閲覧したりできます。Amazon SageMaker Edge Manager は、エッジデバイスのデータをサンプリングし、Amazon SageMaker Model Monitor に送信して分析することで、これまではクラウド上でしかできなかった機能を拡大し、開発者は時間の経過とともに精度が低下する場合にモデルを再トレーニングすることで、モデル品質を継続的に向上することが可能です。
• Amazon SageMaker JumpStart が機械学習へのジャーニーを実現:Amazon SageMaker JumpStart は、最高クラスのソリューション、アルゴリズム、サンプルノートブックを見つけるための使い勝手に優れた検索対応インターフェイスを提供します。現在、機械学習の経験が少ないお客様が機械学習の導入を始めるのが難しいと感じている一方で、より熟練した開発者も、すべてのユースケースに機械学習を導入するのは難しいと感じています。Amazon SageMaker JumpStart の提供開始により、お客様の機械学習のユースケースに特化した関連性の高い情報をいち早く発見できるようになります。機械学習に馴染みのない開発者は、いくつかのエンドツーエンドの機械学習ソリューション(例:不正検知、顧客離反予測、予測)から選択し、Amazon SageMaker Studio 環境に直接デプロイできます。また、経験豊富なユーザーは、100 種類以上の機械学習モデルから選択して、モデルの構築とトレーニングの作業をいち早く開始できます。

AWS の Amazon Machine Learning 担当バイス・プレジデントのスワミ・シバスブラマニアン(Swami Sivasubramanian)は、次のように述べています。「業界をリードする当社の機械学習サービスの Amazon SageMaker は数十万人もの一般の開発者やデータサイエンティストに採用されており、カスタムの機械学習モデルのビルド、トレーニング、デプロイの障壁を排除してきました。Amazon SageMaker のような広く採用されているサービスの大きなメリットの一つは、活用いただいている多くのお客様からのご意見をいただき、それを次の製品や機能につなげられていることです。今回発表した Amazon SageMaker 向けのツールセットにより、開発者は、エンドツーエンドの機械学習パイプラインを構築して、カスタムの機械学習モデルの準備、ビルド、トレーニング、説明、調査、監視、デバッグ、および実行をより優れた可視性、説明可能性、大規模での自動化を従来よりはるかに簡単に実現できます。」

株式会社ディー・エヌ・エー(DeNA)は、モバイルおよびオンラインサービスの業界をリードするプロバイダーとして、ゲーム、e コマース、エンターテイメントのコンテンツ配信などのビジネスを日本国内で展開しています。株式会社ディー・エヌ・エーのシステム本部 AIシステム部 部長である山田 憲晋氏は、次のように述べています。「私たち DeNA のミッションは、人工知能と機械学習を活用し、お客様に驚きと喜びを提供することです。価値あるサービスの提供は、当社の第一の目標であり、こうした目標の達成に寄与するビジネスとサービスの実現を目指しています。また、人工知能と機械学習の機能を拡大することは、当社の重要な取り組みの 1 つです。Amazon SageMaker は、正確なモデルのトレーニングとデプロイにおいて幅広い機能を提供しており、当社の多くのビジネスにおける機械学習の実装プロセスで役立っています。また、私たちが注力したい分野の1つにデータ準備があり、DeNAのエンジニアリングチームがより簡単に作業できるようにしたいと考えています。Amazon SageMaker Data Wranglerを使用することで、追加のコードを記述する必要なく、豊富なコレクションから変換ツールを使用して本格的な運用をすぐに実行できると確信しています。データ準備の効率化を進める中、さまざまなビジネスを展開する複数のチームがアプリケーションのために同様の特徴量を作成する際には、作業の繰り返しや重複を排除したいとも考えています。当社は全社的に特徴量を発見して再利用したいと考えていますが、Amazon SageMaker Feature Store があれば、簡単かつ効率的な方法で、特徴量をさまざまな用途に再利用できます。Amazon SageMaker Feature Store によって、標準的な特徴量の定義を維持することが可能となり、モデルをトレーニングし、本番環境にデプロイする際には、一貫した方法が提供されます。Amazon SageMaker のこうした新機能により、当社は機械学習モデルのトレーニングとデプロイをより迅速に行い、最高のサービスで継続的にお客様を喜ばせることができます。」