変更要約: 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.1ML 向けデータ準備とフィーチャーエンジニアリング
機械学習のためのデータ準備(クレンジング・欠損/外れ値処理・エンコード・スケーリング)とフィーチャーエンジニアリングの基礎を理解します。MLA-C01 の「ML 向けデータ準備」の出発点です。
機械学習の成否はデータの質で大きく決まります。生データをモデルが学習できる形へ整える データ準備 と フィーチャーエンジニアリング が第一歩です。
1.1.1データ準備の流れ
- クレンジング:欠損値の補完/除去、外れ値の処理、重複の削除でデータを整える。
- エンコード:カテゴリ変数を数値へ(ワンホット等)。スケーリング:数値を正規化/標準化する。
- フィーチャーエンジニアリング:ドメイン知識で予測に有用な特徴量を作る(集約・比率・時間特徴など)。
- 不均衡データ:少数クラスのオーバーサンプリング/重み付けなどで対処する。
「カテゴリ変数=エンコード(ワンホット等)」「スケールの違う数値=正規化/標準化」「不均衡データ=リサンプリング/重み付け」「外れ値・欠損の処理」 は MLA で頻出です。データ準備が性能を大きく左右します。
データ準備は「整える→数値化→特徴量化」の順で進めます。クレンジング では欠損値を補完(平均/中央値/最頻値)または除去し、外れ値・重複を処理します。エンコード はカテゴリ変数を数値へ:順序のないものは ワンホット、順序のあるものは ラベル/序数、高カーディナリティは ターゲット/頻度エンコード を使います。スケーリング は 標準化(z-score) と 正規化(Min-Max) があり、勾配法や距離ベースのモデルで重要(木系モデルは比較的不要)。歪んだ分布は対数変換で補正します。フィーチャーエンジニアリング はドメイン知識で予測に効く特徴量(集約・比率・時間特徴・交互作用・ビニング)を作り、テキストは TF-IDF/埋め込み、画像は前処理・拡張を施します。不均衡データ は SMOTE 等のオーバーサンプリング・アンダーサンプリング・クラス重み付け で対処し、評価は正解率でなく F1/PR-AUC を見ます。最重要の落とし穴は データリーク で、スケーラー/エンコーダの fit は分割後のトレーニングデータのみに行い、同じ変換を検証/テストへ適用します(=リーク防止)。
| データの種類/課題 | 手法 |
|---|---|
| 順序のないカテゴリ | ワンホットエンコード |
| スケールの違う数値 | 標準化 / 正規化 |
| クラス不均衡 | SMOTE/重み付け+F1・PR-AUC評価 |
| テキスト | TF-IDF / 埋め込み |
シナリオ:不正検知モデル。陽性(不正)が全体の0.5%しかない。 カテゴリ列はワンホット、金額は対数変換+標準化。不均衡はSMOTE か クラス重み付けで対処し、評価は正解率でなく PR-AUC/F1。スケーラーは train で fit→val/test に適用し、リークを防止。新特徴(直近の取引頻度・平均額比)を作って精度を上げます。
Q. カテゴリ変数は? エンコード(ワンホット等)。Q. スケールが違う数値は? 標準化/正規化。Q. 不均衡データは? SMOTE/重み付け+F1・PR-AUC。Q. リークを防ぐには? 分割後の train だけで fit。Q. 木系モデルにスケーリングは要る? 概ね不要。
混同に注意:
①全データで fit してから分割するとリーク——必ず分割後に train だけで fit。
②不均衡データで正解率だけ見ると「全部陰性」でも高精度に見える(F1/PR-AUC を見る)。
③ワンホットは高カーディナリティで列が爆発(ターゲット/頻度エンコードを検討)。
④欠損の補完値もテスト情報で計算しない(リーク)。
スケーリングやエンコードの「学習」はトレーニングデータだけで行い、検証/テストには同じ変換を適用します。テストの情報が漏れないようにします(データリーク防止)。
1.1.2この節のまとめ
- クレンジング/エンコード/スケーリング/フィーチャーエンジニアリング
- 不均衡はリサンプリング/重み付け、変換は学習データで学習
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. カテゴリ変数(例: 色=赤/青/緑)を機械学習モデルが扱えるようにする一般的な手法はどれですか?
Q2. クラスが大きく偏った(不均衡な)分類データへの一般的な対処はどれですか?
Q3. スケーラーやエンコーダの「学習(fit)」を行うべきデータはどれですか?

