で適切なデータ準備ツールを選択するための推奨事項 SageMaker - Amazon SageMaker

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

で適切なデータ準備ツールを選択するための推奨事項 SageMaker

機械学習におけるデータ準備とは、未加工データを収集、前処理、整理して分析とモデリングに適したものにするプロセスを指します。このステップにより、データは機械学習アルゴリズムが効果的に学習できる形式になります。データ準備タスクには、欠損値の処理、外れ値の削除、特徴量のスケーリング、カテゴリ変数のエンコード、潜在的なバイアスの評価と緩和策の実行、トレーニングセットとテストセットへのデータの分割、ラベル付け、および後続の機械学習タスクのデータの品質と使いやすさを最適化するために必要な変換が含まれる場合があります。

機能を選択する

Amazon でのデータ準備には、主に 3 つのユースケースがあります SageMaker。要件に合ったユースケースを選択し、対応する推奨機能 を参照してください。

ユースケース

Machine Learning のデータ準備を実行する場合の主なユースケースを次に示します。

  • ユースケース 1: ビジュアルインターフェイスを好むユーザー向けに、 SageMaker は、 point-and-click 環境を通じてモデルトレーニングの特徴を探索、準備、エンジニアリングする方法を提供します。

  • ユースケース 2: データ準備をより柔軟に制御したいコーディングに慣れているユーザーにとって、 はツールをコーディング環境 SageMaker に統合して、探索、変換、特徴量エンジニアリングを行います。

  • ユースケース 3: スケーラブルなデータ準備に重点を置いたユーザー向けに、Hadoop/Spark エコシステムを活用してビッグデータを分散処理するサーバーレス機能 SageMaker を提供します。

次の表は、機械学習の各データ準備ユースケースに関連する SageMaker 機能の主な考慮事項とトレードオフの概要を示しています。開始するには、要件に合ったユースケースを特定し、推奨される SageMaker機能に移動します。

ユースケース 1 ユースケース 2 ユースケース 3
SageMaker 機能 Amazon SageMaker Canvas 内の Data Wrangler Studio SQLで を使用してデータを準備する EMR Serverless を使用してデータを準備する Studio のアプリケーション
説明 SageMaker Canvas は、 で機械学習モデルを構築、トレーニング、デプロイするための視覚的なローコード環境です SageMaker。統合された Data Wrangler ツールを使用すると、ユーザーは point-and-click インタラクションを通じてデータセットを結合、変換、クリーンアップできます。 Studio の SQL拡張機能を使用すると、ユーザーは Amazon Redshift、Snowflake、Athena、Amazon S3 に接続してアドホックSQLクエリを作成し、結果をノートブックで JupyterLabプレビューできます。これらのクエリの出力は、 を使用して操作できます。Python また、Pandas は、機械学習モデルの開発に使用できる形式への追加の処理、視覚化、および変換を可能にします。 EMR Serverless と Amazon SageMaker Studio の統合により、Apache Spark や Apache Hive などのオープンソースフレームワークを使用した機械学習用の大規模なデータ準備のためのスケーラブルなサーバーレス環境が提供されます。ユーザーは、Studio ノートブックからEMRサーバーレスアプリケーションとデータに直接アクセスして、データ準備タスクを大規模に実行できます。
に最適化 ビジュアルインターフェイスを使用して以下を行うことができます。

欠損値の処理、カテゴリ変数のエンコード、データ変換の適用など、表形式のデータタスク向けに最適化されています。

Amazon Redshift、Snowflake、Athena、または Amazon S3的な SQLと を組み合わせたいユーザー向け Python を学習しなくてもデータ分析と準備が可能 Spark. SageMakerの機械学習機能を活用しながら、Apache Spark を中心とする短時間または断続的なインタラクティブワークロードをスケーリングするために、自動リソースプロビジョニングと終了によるサーバーレスエクスペリエンスを好むユーザー向け。
考慮事項
  • チームがすでに Python、Spark、またはその他の言語に関する専門知識を持っている場合、これは最適な選択肢ではない可能性があります。

  • 複雑なビジネスロジックを追加するために変換を完全に柔軟にカスタマイズする必要がある場合や、データ処理環境を完全に制御する必要がある場合は、最適ではない場合があります。

  • この機能は、Amazon Redshift、Snowflake、Athena、または Amazon S3 のみに存在する構造化データ用に設計されています。

  • クエリ結果のサイズが SageMaker インスタンスのメモリを超える場合、次のノートブックは、 SageMaker アルゴリズムによるデータの取り込みを準備するために Athena の使用を開始する手順を示しています。

  • EMR Serverless アプリケーションや Spark ベースのツールに慣れていないユーザー向けの学習曲線は、難しい場合があります。

  • この機能はインタラクティブなデータ準備タスクに適していますが、大量のデータ、他の サービスとの広範な統合、カスタムアプリケーション、または Apache Spark 以外のさまざまな分散データ処理フレームワークを含む大規模、長時間実行される、または複雑なデータ処理要件に対応する Amazon EMRクラスターほど効率的ではない場合があります。

  • サーバーレスコンピューティングは短期間のタスクでは費用対効果が高いですが、特に長時間稼働またはリソースを大量に消費するワークロードでは、コストを注意深くモニタリングおよび管理することが不可欠です。

推奨環境 SageMaker Canvas の使用を開始する Studio を起動する Studio を起動する

追加のオプション

SageMaker では、機械学習モデルで使用するデータを準備するための以下の追加オプションが用意されています。

  • Amazon EMRクラスターを使用してデータを準備する: 長時間実行され、計算負荷の高い大規模なデータ処理タスクの場合は、 SageMaker Studio の Amazon EMRクラスターの使用を検討してください。Amazon EMRクラスターは、大規模な並列化を処理するように設計されており、数百または数千のノードにスケールできるため、Apache Spark、Hadoop、Hive、Presto などのフレームワークを必要とするビッグデータワークロードに適しています。Amazon EMRと SageMaker Studio を統合することで、Amazon のスケーラビリティとパフォーマンスを活用できると同時にEMR、完全な ML 実験、モデルトレーニングとデプロイ、 SageMaker Studio 環境内での一元化と管理を維持できます。

  • Glue インタラクティブセッションを使用してデータを準備する: から Apache Spark ベースのサーバーレスエンジンを使用できます。 AWS Glue SageMaker Studio の複数のソースからのデータを集約、変換、準備するための インタラクティブセッション。

  • Amazon Clarify 処理ジョブを使用してトレーニングデータのバイアスを特定する: SageMaker Clarify はデータを分析し、複数のファセットにわたる潜在的なバイアスを検出します。 SageMaker 例えば、Studio APIで Clarify を使用して、トレーニングデータに性別、人種、年齢などのグループ間の不均衡な表現やラベル付けバイアスが含まれているかどうかを検出できます。Clarify は、モデルをトレーニングする前にこれらのバイアスを特定し、モデルの予測にバイアスが伝播されないようにします。

  • 機能の作成、保存、共有: Amazon SageMaker Feature Store は、機械学習用に厳選された機能の検出と再利用を最適化します。モデルトレーニングのために検索および取得できる機能データを保存するための一元化されたリポジトリを提供します。機能を標準化された形式で保存すると、ML プロジェクト間で再利用できます。Feature Store は、スケーラブルで管理された機械学習特徴量エンジニアリングの系統追跡、統計、監査証跡など、機能のライフサイクル全体を管理します。

  • でデータにラベル human-in-the-loopを付ける: SageMaker Ground Truth を使用して、トレーニングデータセットのデータラベル付けワークフローを管理できます。

  • SageMaker 処理を使用するAPI: 探索的なデータ分析を実行し、データ変換ステップを作成したら、SageMaker処理ジョブを使用して変換コードを本番化し、SageMaker Model Building Pipelines を使用して準備ワークフローを自動化できます。