MLA機械学習のためのデータ準備
MLチームは SageMaker Feature Store を活用して特徴量管理を行っています。同じ特徴量グループの特徴量を、バッチ学習ジョブ(数百万レコードの一括読み込みが必要、低レイテンシ不要)とリアルタイム推論(ミリ秒単位のレイテンシが必要)の両方に利用したいと考えています。
この要件を満たす最適なアーキテクチャはどれですか?
A学習用とリアルタイム推論用に別々の特徴量グループを作成し、特徴量を二重管理する
特徴量グループを学習用と推論用に分けて管理すると、特徴量定義の二重管理が生じてデータの一貫性維持が困難になります。Feature Storeの一元管理という利点が失われ、Training-Serving Skewのリスクが高まります。
Bオンラインストアのみ有効化した特徴量グループを使用し、バッチ学習時もリアルタイムAPIで特徴量を逐次取得する
オンラインストアは単一レコードの高速ルックアップ用に設計されており、数百万レコードをAPIで逐次取得するバッチ処理には著しく非効率です。スループットが低くコストも高いため、大規模バッチ学習には適していません。
Cオフラインストアのみ有効化した特徴量グループを使用し、推論時はS3から直接特徴量を読み込むLambda関数を構成する
オフラインストアはS3ベースの大規模バッチ処理向けで、ミリ秒単位の低レイテンシが求められるリアルタイム推論には不向きです。S3経由のLambda読み込みでは推論に必要な応答速度を確保できません。
Dオンラインストアとオフラインストアの両方を有効化した特徴量グループを作成し、バッチ学習にはオフラインストア(S3)、リアルタイム推論にはオンラインストアを使用する
✓ 正解
オンラインとオフラインの両ストアを有効化することで、1回の書き込みで両ストアに自動同期されます。バッチ学習にはS3のオフラインストア、リアルタイム推論にはインメモリのオンラインストアと使い分けることで、すべての要件を単一の特徴量グループで満たします。
解説
SageMaker Feature Store の特徴量グループはオンラインストア(低レイテンシのリアルタイムアクセス向け)とオフラインストア(大規模バッチ処理向け、S3に自動保存)を同時に有効化できます。特徴量を一度書き込むと両ストアに自動同期されるため、データの二重管理が不要です。学習・推論で同一の特徴量定義を共有でき、学習・サービング間の特徴量不整合(Training-Serving Skew)を防ぎます。
選択肢Aの学習用とリアルタイム推論用に別々の特徴量グループを作成し、特徴量を二重管理する はデータの一貫性を損ねます。
選択肢Bのオンラインストアのみ有効化した特徴量グループを使用し、バッチ学習時もリアルタイムAPIで特徴量を逐次取得する は、数百万レコードをオンラインAPIで逐次取得することになりスループットが著しく低下するため、大規模バッチ処理には不適切です。
選択肢Cのオフラインストアのみ有効化した特徴量グループを使用し、推論時はS3から直接特徴量を読み込むLambda関数を構成する はリアルタイム推論のミリ秒単位レイテンシ要件を満たせません。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでMLAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →