データ前処理とは、機械学習モデルの精度を高めるために、収集した未加工のデータをクリーニングして扱いやすい形に整える一連の作業です。AIの性能を左右する最も重要なプロセスのひとつであり、欠損値の補完や数値化などが行われます。
データ前処理とは
一言でいうとデータ前処理とは、機械学習モデルの学習効率と予測精度を最大化するために、生データを最適な形式へとクレンジング・変換する作業のことです。
詳しく解説
実世界のデータは、そのままではノイズ、欠損値、重複、異なる数値のスケールなどが混在しており、機械学習アルゴリズムが正しく学習できません。そこで、不要な情報を除外する欠損値の処理や外れ値の除去、テキストやカテゴリ変数を数値に変換する符号化、特徴量の尺度を統一する正規化・標準化といった多様な処理を施します。AI開発における工数の大部分はこのデータ前処理に費やされると言われており、モデルの品質を担保するための極めて重要な基盤工程です。
具体例・使われ方
例えば、顧客のアンケートデータから「年齢」や「購入金額」を機械学習に読み込ませる際、空欄のデータを平均値で埋める欠損値処理を行ったり、文字列の「はい」「いいえ」を「1」「0」の数値に変換したりします。また、画像認識AIの分野では、画像のサイズをピクセル単位で統一したり、明るさを調整したりする作業もデータ前処理に該当します。
似た用語との違い
「特徴量エンジニアリング」と混同されやすいですが、データ前処理がデータ全体のクレンジングや形式の統一を目的とするのに対し、特徴量エンジニアリングはモデルが予測しやすいように新しい意味のある変数を創出・加工する点に違いがあります。
注意点
データ前処理を行う際、未来の情報を誤って学習データに混ぜてしまう「データリーク」が発生すると、検証時には高い精度が出ても本番環境で全く使い物にならなくなるため注意が必要です。また、過度な補完や外れ値の安易な削除は、データの持つ本来の傾向を歪めるリスクがあります。