Instiq
第1章 · ML 向けデータ準備·v2.1.0·更新 2026/6/14·読了目安 約8分

変更要約: in-scope サービス網羅: データ準備/取り込み/保管/ストア/抽出(Kinesis/Firehose/DataSync/Glue DataBrew/EMR/Flink/MWAA/S3/EFS/FSx/Redshift/OpenSearch/DynamoDB/DocumentDB/Neptune/Textract/Transcribe/Translate/Comprehend Medical/MTurk 他)を追加

1.3データの分割・品質・バイアス

この節の要点

トレーニング/検証/テスト分割とデータリーク防止、クラス不均衡やバイアスの検出(SageMaker Clarify)、データ品質の確認を理解します。

モデルを正しく評価するには、データを トレーニング/検証/テスト に分け、テストの情報が学習に漏れないようにします。またバイアスや不均衡の確認も重要です。

1.3.1分割とバイアス検出

トレーニング(モデルを学習)/検証(チューニング)/テスト(最終評価)の分割と、バイアス/不均衡の検出(SageMaker Clarify)を示し、学習前に分割してリークを防ぐ・テストデータを学習に影響させないことを表した図。
データ分割とバイアス検出
  • トレーニング/検証/テスト:学習・チューニング・最終評価に分ける。分割は学習前に行う。
  • データリーク:テストや未来の情報が学習に混入すると、評価が過大になる。防止が重要
  • SageMaker Clarify:データやモデルのバイアスを検出し、説明可能性(特徴量重要度)も提供する。
試験ポイント

「過大評価の原因=データリーク(分割前の変換やテスト情報の混入)」「バイアス/説明可能性=SageMaker Clarify」「時系列データは時間順で分割」 は MLA で頻出です。

正しい評価には「適切な分割・リーク防止・バイアス確認」が要ります。データは トレーニング(学習)/検証(チューニング)/テスト(最終評価) に分け、分割は前処理より前に行います。汎化性能の見積りには k分割交差検証 が有効ですが、時系列はランダム分割せず時間順に分け(前進検証 walk-forward)、未来から過去を予測しないようにします。クラス比を保つ 層化抽出(stratified) は不均衡分類で有効です。最大の落とし穴 データリーク は、(1) 分割前にスケーラー/エンコーダを fit、(2) 未来情報を含む特徴量、(3) 重複レコードが train と test に分散、などで起き、評価が過大になります。SageMaker Clarify は学習前のデータバイアス(クラス不均衡や属性間の偏り)と学習後のモデルバイアスを検出し、SHAP ベースの 説明可能性(特徴量重要度)も提供します。データ品質は欠損率・分布・スキーマの検証(Glue Data Quality 等)で継続的に確認します。判断軸は「過大評価=リークを疑う」「公平性/説明=Clarify」「時系列=時間順分割」。

課題対処
汎化性能の見積りk分割交差検証
時系列データの分割時間順(walk-forward)
不均衡分類の分割層化抽出(stratified)
バイアス/説明可能性SageMaker Clarify(SHAP)

シナリオ:需要予測モデルの評価が本番で大きく外れる。 原因はしばしばデータリーク——時系列をランダム分割して未来が train に混入していた。時間順分割+walk-forward 検証に修正。属性間の偏りは SageMaker Clarify で学習前後のバイアスを確認し、SHAP で寄与を説明。重複レコードが train/test にまたがっていないかも点検します。

補足

Q. 評価が過大になる主因? データリーク。Q. 時系列の分割は? 時間順(walk-forward)。Q. 不均衡の分割は? 層化抽出。Q. バイアス/説明可能性は? SageMaker Clarify(SHAP)。Q. 汎化性能の見積り? k分割交差検証。

注意

混同に注意:
時系列をランダム分割するとリーク——必ず時間順。
②交差検証でも分割の中で前処理を fit しないと汎化見積りが甘くなる(fold ごとに fit)。
③Clarify は「検出/説明」であり自動で公平にはしない——是正は設計側。
④高い検証スコア=過学習やリークの可能性も疑う。

補足

時系列データはランダムに分割せず時間順で分割します(未来のデータで過去を予測しないため)。交差検証も時系列用の手法を使います。

1.3.2データ準備・取り込み・保管の in-scope サービス

ML 向けデータ準備では、取り込み・変換・保管の幅広いサービスが in-scope です。取り込みでは、ストリームを Amazon Kinesis Data Streams(保持/リプレイ可)や Amazon Data Firehose(コード不要の S3/OpenSearch 配信)で受け、カメラ映像は Amazon Kinesis Video Streams で取り込みます。準備は AWS Glue DataBrew(ノーコードのクレンジング)、大規模分散処理は Amazon EMR(Spark/Hadoop)、ストリームのリアルタイム集計は Amazon Managed Service for Apache Flink を使います。SaaS/外部やオンプレからは AWS DataSync(NFS/SMB 同期)で集めます。 編成は AWS Step Functions(サーバーレスのステートマシン)か、既存 Airflow 資産なら Amazon Managed Workflows for Apache Airflow(MWAA)。疎結合は Amazon Simple Queue Service(キュー)、通知は Amazon Simple Notification Service(ファンアウト)。データレイクの細粒度権限は AWS Lake Formation で統制します。

保管では、学習データ/モデルアーティファクトの標準は Amazon S3(低コスト・高耐久)、アーカイブは Amazon S3 Glacier、共有ファイルは Amazon Elastic File System、HPC/ML の高スループットは Amazon FSx(for Lustre は S3 連携の並列 FS)、オンプレ連携は AWS Storage Gateway。データストアは目的別に、列指向分析は Amazon Redshift、全文/ベクトル検索は Amazon OpenSearch Service、低遅延キャッシュは Amazon ElastiCache、キーバリューは Amazon DynamoDB、ドキュメントは Amazon DocumentDB、グラフは Amazon Neptune を選びます。 非構造データからの抽出には、文書テキストは Amazon Textract、音声は Amazon Transcribe、翻訳は Amazon Translate、臨床テキストは Amazon Comprehend Medical、大量の人手ラベル付けは Amazon Mechanical Turk を使います。

1.3.3この節のまとめ

  • 学習前に train/val/test 分割、リークを防ぐ
  • バイアス/説明可能性=SageMaker Clarify、時系列は時間順分割
  • 取り込み=Kinesis/Firehose/DataSync、準備=Glue DataBrew/EMR/Flink、保管=S3/EFS/FSx、ストア=Redshift/OpenSearch/DynamoDB ほか

進捗の記録にはログインが必要です。

理解度チェック

(軽い確認用)

Q1. モデルの評価が不当に高く出る原因として代表的なものはどれですか?

Q2. データやモデルのバイアスを検出し、特徴量の重要度など説明可能性も提供する SageMaker の機能はどれですか?

Q3. 時系列データを分割する際の正しい方法はどれですか?

理解度を確認第1章「ML 向けデータ準備」の問題を解く