Amazon SageMakerは、機械学習(ML)モデルの構築、トレーニング、デプロイのプロセスを簡素化するように設計された、完全マネージド型サービスです。
アマゾン・ウェブ・サービス社(AWS)が開発したSageMakerは、MLデプロイメントの各段階に関わる労働集約的なタスクの多くを自動化し、ワークフローの複雑性を軽減し、機械学習ライフサイクル全体を加速します。これにより、イテレーションの迅速化、精度の向上、そして最終的には機械学習の取り組みによるビジネス価値の向上につながる可能性があります。
SageMakerはMLツール・スイートを提供します。たとえば、Autopilotでは特定のデータ・セットで人工知能(AI)モデルをトレーニングし、各アルゴリズムを精度でランク付けできます。一方、Data Wranglerはデータ準備をスピードアップし、MLモデル開発の初期段階をより効率的にします。
SageMakerには、いくつかのアプリケーション・プログラミング・インターフェース(API)も含まれています。これらのAPIを使用すると、データサイエンティストや開発者は、インフラストラクチャー管理の複雑さを回避して、本番環境対応のMLソリューションを作成できます。
Amazon SageMakerの影響を理解するには、機械学習の仕組みを理解することが重要です。機械学習プロセスは、意思決定プロセス、誤差関数、モデル最適化の3つの部分に分けられます。
Amazon SageMakerはこれらのプロセスの合理化に役立ち、データサイエンティストは機械学習モデルを効率的にデプロイできるようになります。
AWS SageMakerは、サンプル・データの生成、トレーニング、デプロイメントという3つの重要なフェーズを網羅する構造化されたアプローチにより、MLライフサイクルを簡素化します。各フェーズでは、開発者はインスタンス(データベースとコンピューティング・リソースを管理し、構成パラメータを設定し、必要なITインフラストラクチャをプロビジョニングする隔離された環境またはサーバー)を使用できます。
開発者は、MLモデルのトレーニングに不可欠なサンプル・データを生成することから始めることができます。このプロセスには、実際のデータ・セットの取得、クリーニング、前処理のための準備が含まれます。場合によっては、開発者はAmazon Ground Truthを使用して、サンプルデータを拡張または置き換えるラベル付きの合成画像データを作成できます。準備が整うと、データはAmazon Simple Storage Service(S3)にアップロードされ、さまざまなAWSサービスで使用できるようになります。
Amazon SageMakerノートブック・インスタンスは、開発者がトレーニングのためにデータを準備し、処理するための堅牢な環境を提供します。SageMakerは、S3に保存されたデータにアクセスすることで、フルマネージド型のMLインスタンスを使用してモデルのトレーニング、推論の実行、Amazon Elastic Cloud Compute(EC2)内での大規模なデータ・セットの処理を行い、モデル開発プロセスを加速できます。
SageMakerは、オープンソースのJupyter Notebookアプリケーションを介して共同コーディング業務をサポートします。データ・サイエンティストは、独自のツールをインポートすることも、一般的なディープラーニング・フレームワーク用の必須ドライバーと事前記述されたコードのライブラリを備えた構築済みのノートブック・インスタンスを使用することもできます。これらのライブラリは、数学的演算、ニューラル・ネットワーク・レイヤー、最適化アルゴリズムなどで構成されています。
SageMakerは、Dockerコンテナ・イメージとしてパッケージ化されたカスタム・アルゴリズムをサポートすることで、開発者に柔軟性も提供します。これらをAmazon S3と統合することで、チームは機械学習プロジェクトを容易に立ち上げることができます。開発者は独自のトレーニング・アルゴリズムを提供することも、SageMakerコンソールを介して、事前に構築された一連のアルゴリズムから選択することもできます。これらのプロセスを通じて、ユーザーをガイドするチュートリアルとリソースを利用できます。
トレーニング・フェーズでは、開発者はアルゴリズムまたは事前トレーニングされた基本モデルを使用して、特定のデータ・セットに基づいてMLモデルをファイン・チューニングします。開発者は、Amazon S3バケット内のデータの場所を定義し、適切なインスタンス・タイプを選択してトレーニング・プロセスを最適化できます。
SageMaker Pipelinesなどのオーケストレーション・ツールは、機械学習モデルの構築、トレーニング、デプロイにおけるプロセスをエンドツーエンドで自動化し、ワークフローを合理化します。これにより、時間が節約され、ワークフロー全体の正確性が確保されます。また、Amazon SageMaker JumpStartを使用すると、開発者はノーコードのインターフェイスを通じて事前に構築されたモデルを使用できるため、深い技術的専門知識が無くても共同作業が可能になります。
モデルのトレーニング中に、開発者はSageMakerのハイパーパラメータ・チューニングを使用して大規模言語モデル(LLM)を最適化し、さまざまなアプリケーションの性能を全体的に向上させることができます。デバッガーはニューラル・ネットワークのメトリクスを監視し、モデルの性能とリソースの使用状況に関する洞察を開発者にリアルタイムで提供します。これにより、データ・サイエンティストが問題を迅速に特定し、傾向を分析し、プロアクティブな管理のために自動アラートを設定できるようになるため、デバッグプロセスを簡素化できます。SageMakerは、MLの監視と管理をエッジデバイスに拡張するEdge Manager機能も提供します。
トレーニングが完了すると、SageMakerは基盤となるクラウドインフラストラクチャを自動的に管理および拡張し、スムーズなデプロイメントをサポートします。このプロセスは、さまざまなインスタンス・タイプ(たとえば、MLワークロードに最適化されたグラフィック・プロセッシング・ユニット、またはGPU)に依存します。また、複数のアベイラビリティー・ゾーン(離れているが低遅延を実現する上で十分な距離にあるデータセンターのクラスター)にデプロイして、信頼性を強化します。ヘルス・チェックと安全なHTTPSエンドポイントにより、アプリケーションの接続性がさらに強化されます。
デプロイが完了すると、開発者はAmazon CloudWatchメトリクスを使用して本番環境のパフォーマンスを監視し、リアルタイムの洞察を得て、逸脱に対するアラートを設定できます。包括的な監視機能により、SageMakerはMLライフサイクル全体にわたって効果的なガバナンスをサポートできます。結果として、組織は機械学習の性能を活用しながら、制御とコンプライアンスを維持できます。
Amazon SageMakerには、次のような機械学習のエクスペリエンスを向上させるさまざまなメリットがあります。
Amazon SageMaker Studioはデータ・サイエンティスト向けのオール・イン・ワンIDEとして機能し、ワークフローの管理、モデルの開発、メトリクスの可視化のための直感的なインターフェイスを提供します。Jupyter Notebookに対応しているため、ユーザーはPythonコードを効率的に記述・実行できます。
ユーザーは、TensorFlow、PyTorch、MXNetなどの一般的なMLトレーニング・フレームワークに基づいた組み込み型アルゴリズムまたはカスタム・アルゴリズムを使用してMLモデルをトレーニングできます。このサービスでは、最高のパフォーマンスのためにモデル構成を最適化するハイパーパラメーターのチューニングが行われます。SageMakerでは、事前トレーニング済みモデルのファイン・チューニングも可能になり、データ・サイエンティストがこれらのモデルを特定のデータ・セットやタスクに適応させることができます。
効果的な機械学習モデルを作成するためには、質の高いデータセットが不可欠です。Ground Truthは、自動化されたラベル付けと人間によるレビュープロセスを通じて、高品質なトレーニング・データ・セットの作成を容易にするデータ・ラベリング・サービスを提供しています。また、Amazon SageMakerにはフィーチャー・ストアが組み込まれており、異なる機械学習モデル間で、学習や推論に使用される入力である特徴を管理、共有、発見することができます。これは、データ準備プロセスを合理化し、コラボレーションを強化する上で役立ちます。
機械学習モデルをデプロイした後、SageMakerはリアルタイム推論とバッチ推論の両方を可能にします。ユーザーは、アプリケーションのアクセスポイントとして機能するエンドポイント(特定のURL)を作成することで、リアルタイムの予測を行い、ワークロードを効率的に管理することができます。これは、生成AIシナリオなど、即時の応答を必要とするアプリケーションで特に役立ちます。
SageMakerは、MLモデルのパフォーマンスをリアルタイムで監視するAmazon CloudWatchなどのツールを提供しており、他のAWSサービスを使得ことでアプリケーションの健全性を全体的に把握できるようにしています。デバッグ機能により、データ・サイエンティストはモデルのトレーニングとデプロイメントにおける問題を追跡できるため、堅牢な機械学習ライフサイクルを確保できます。
AWSはオンデマンドと従量課金制の2つの料金体系を提供しており、インスタンスのタイプ、データ・ストレージ、使用するサービスによってコストが異なります。また、Amazon SageMakerの無料利用枠を利用すると、新規ユーザーは無料でプラットフォームは試すことができ、限られた範囲の機能やリソースにアクセスできます。
Amazon SageMakerは、その汎用性のため、さまざまな業種・業務における多様なユースケースに適しています。たとえば以下のようなものがあります。
医療:機械学習モデルは患者データを分析して結果を予測し、治療をパーソナライズし、業務効率を高めることができます。
金融:金融機関は、Amazon SageMakerを使用して、不正アクセス検知、信用スコアリング、リスクアセスメントのモデルを開発できます。
小売業:企業は予測分析を使用して在庫管理を強化し、顧客体験をパーソナライズし、価格戦略を最適化できます。
Amazon SageMakerのようなツールは、AIシステムの制御と規制遵守を維持しながら、イノベーションとビジネス価値を推進する機械学習モデルを組織が効果的にデプロイする上で役立ちます。ユーザーは、次のようないくつかのガバナンス・ツールを利用できます。
SageMaker Python SDKは、既存のワークフローやサービスとのシームレスな統合を可能にすることで、Amazon SageMakerのガバナンス機能を強化します。これにより、組織はコンプライアンス・チェックを自動化し、MLプロジェクト全体の監視をより効果的に行うことができます。
Amazon SageMakerは、より広範なデータおよびAI戦略に統合することもできます。IBMとAWS社は、クラウドベースのサービスを活用する組織の機能を強化するため、戦略的パートナーシップを締結しました。IBMの基盤モデルをAmazon SageMakerと併用することで、チームは高度な分析を活用し、データ管理を改善し、ワークフローを合理化できます。Amazon VPC内にモデルをデプロイすることで、組織はリソースへの安全で制御されたアクセスを確保し、ガバナンスの取り組みをさらにサポートできます。
Windowsなどのさまざまなプラットフォームでの作業に対応しているため、組織はIBMとAWS社のツールを組み合わせて、ニーズに合わせたAIおよびMLソリューションを簡単に実装できます。IBMの watsonx.governanceソリューションを検討なSageMakerの強力な機能と合わせて活用することで、企業は特に生成AIやMLOpsアプリケーションにおけるAIの取り組みを加速できます。