1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

データクリーニング(データクレンジング)

データクリーニングを行わなければ、データ分析の方法そのものに多くの誤りが生じ、意思決定に時間がかかるだけでなく、結果として偽陽性や誤った結論を導く危険性が高まる。特にAIや機械学習では、データの質がモデル性能をほぼ決定づけるため、データクリーニング(データクレンジング)は不可欠な工程である。

データクリーニングとは、無関係なデータや不正確なデータを削除・修正し、分析やAI学習に適した状態にデータを整えるプロセスである。

不正確なデータは、誤った概念を強化し、モデルやアルゴリズムに悪影響を与える可能性がある。そのためデータクリーニングでは、単に不要なデータを削除するだけでなく、以下のような作業を含む。

  • 重複データの削除
  • 欠損値の補完または削除
  • 不正確な値や表記揺れの修正
  • トレーニング・検証・テストデータに含まれる誤情報の是正

欠損値
本来存在するはずのデータが記録されていない状態

欠損値があると、

  • 平均や分散などの統計量が正しく計算できない
  • 機械学習モデルの学習精度が低下する
  • エラーや予期しない挙動の原因になる

そのため、データ分析や機械学習では、
補完・削除・別カテゴリとして扱うなどの前処理が必要になる。

データクリーニングは、AIや分析の前処理として必ず実施されるべき工程である。

AIにデータクリーニングが重要な理由

AIにおいてデータクリーニングが重要な理由は、精度と品質管理を確保するためである。分析に使用するデータセットが汚れていれば、不正確な結果が得られ、その修正に時間とコストがかかる。

例えば、製品改善の判断材料として営業実績データを用いる場合、データ品質が低ければ誤った判断を下す可能性がある。これはAIの予測結果にも直結する問題である。

データクリーニングを行わない場合、以下のようなリスクが生じる。

  • 分析結果の信頼性低下
  • 意思決定の遅延
  • 不正確な予測によるコスト増大

一方で、適切なデータクリーニングを行えば、分析効率が向上し、迅速かつ正確な意思決定が可能となる。
特に医療や科学分野など、不正確な予測が深刻な結果を招く業界では、データクリーニングは必須である。

高品質なデータの5つの特徴

データ品質は、主に以下の5つの観点から評価される。

  • 妥当性
  • 正確性
  • 完全性
  • 一貫性
  • 均一性

妥当性

妥当性とは、データが定義されたルールや制約を満たしているかどうかを指す。例えば、データ型制約、範囲制約、一意制約、外部キー制約、クロスフィールドバリデーションなどが該当する。

正確性

正確性とは、データが現実的かつ事実に即しているかを示す指標である。郵便番号と住所の整合性や、現実的に存在し得ない数値の除外などがこれに該当する。

完全性

完全性とは、必要なデータが欠けていない状態を指す。欠損値が多いデータは分析精度を大きく下げるため、制約設定や補完処理が重要となる。

一貫性

一貫性とは、複数のデータソースやフィールド間で矛盾がない状態を指す。同一人物が複数のアンケートやシステムで同じ情報を持っているかの確認などが例である。

均一性

均一性とは、データが一貫したルールと精度で収集・管理されている状態である。均一性が確保されていないと、比較や分析が困難になる。

AIデータクリーニングの方法

ステップ1:重複データと無関係データの削除

複数のソースからデータを統合する場合、重複データは頻繁に発生する。これらは分析結果を歪めるため、必ず削除する必要がある。また、目的に関係のないデータも除外することで分析効率が向上する。

ステップ2:外れ値のフィルタリング

外れ値とは、他のデータポイントから大きく逸脱した値である。明らかな入力ミスである場合は削除すべきだが、理論を裏付ける重要なデータである可能性もあるため、文脈に応じた判断が必要である。

ステップ3:構造的エラーの修正

命名規則の不統一、タイプミス、大文字小文字の違いなどは、カテゴリ分割や集計に悪影響を与える。例えば「N/A」と「Not Applicable」は同一カテゴリとして統一すべきである。

ステップ4:欠損データの補完

多くのアルゴリズムは欠損値を扱えないため、削除または補完が必要となる。平均値補完や他データからの推定など、状況に応じた方法を選択する。

ステップ5:データの検証

最終的に、以下の観点からデータを検証する。

  • データは論理的に整合しているか
  • カテゴリやルールに従っているか
  • 仮説を正しく検証できる状態か

データクレンジングとの関係

データクレンジングとは、重複、記載ミス、表記揺れなどを検出・修正し、データ品質を高める取り組みである。実務上はデータクリーニングとほぼ同義で使われることが多い。

ただし、名寄せはデータクレンジングとは異なり、複数データベースに存在する同一人物・同一企業のデータを統合する作業を指す。一般的には、データクレンジングを行った上で名寄せを実施する。

欠損値・外れ値の処理とは何か

機械学習やデータ分析において、モデル構築以前に必ず向き合うべき工程が欠損値・外れ値の処理である。本工程は一般に「データの前処理」と呼ばれ、分析結果や予測精度を大きく左右する重要なステップだ。

本記事では、欠損値・外れ値・異常値の基本的な定義から、それらが分析に与える影響、実務でよく使われる対処法までを体系的に整理する。あわせて、Pythonによる具体例も交えながら、なぜ前処理が重要なのかを解説する。

欠損値・外れ値・異常値とは

欠損値(Missing Value)

欠損値とは、本来得られるはずだったデータが得られていない状態を指す。

例としては以下が挙げられる。

  • アンケートの未回答
  • センサー故障による測定失敗
  • データ取得・保存時の欠落

多くの機械学習アルゴリズムは欠損値をそのまま扱えないため、何らかの処理が必要となる。

外れ値(Outlier)

外れ値とは、他の値から大きく離れたデータのことである。

例:

  • 年齢データの中に「200歳」が含まれる
  • 売上データの中に極端に大きな値がある

外れ値は必ずしも誤りとは限らず、実際に発生した極端な事象である可能性もある点に注意が必要だ。

異常値(Anomalous Value)

異常値とは、外れ値の中でも、その原因が明確に誤りだと分かるものを指す。

例えば、

  • 年齢(数値データ)に文字列が混入している
  • 本来0以上であるべき値が負の数になっている

といったケースは、明らかな入力ミスや記録ミスであり、異常値と判断できる。

欠損値・外れ値・異常値が発生する原因

これらの問題が発生する主な原因は以下のとおりである。

  • 測定ミス・計測エラー
  • データ入力時のヒューマンエラー
  • システム障害や通信エラー
  • データ統合時の不整合

実務では、こうした問題が混在したデータを扱うことがほとんどである。

なぜ欠損値・外れ値を処理する必要があるのか

欠損値や外れ値を放置すると、以下のようなデメリットが生じる。

  • 平均や分散などの基本統計量を正しく算出できない
  • 欠損除去により分析結果が偏る
  • 学習に使えるデータ数が減り、モデル精度が低下する

これらを防ぐため、欠損値・外れ値・異常値の適切な処理が不可欠となる。

ロバストな分析手法という考え方

ロバスト(robust)とは、欠損値や外れ値の影響を受けにくい性質を指す。

例えば、

  • 線形回帰などの線形モデルは外れ値の影響を受けやすい
  • 決定木やランダムフォレストなどのツリーベースモデルは比較的影響を受けにくい

このため、ツリーベースの手法はロバストな分析手法であると言える。

欠損値への対応方法

行・列ごと削除

欠損値を含む行または列を丸ごと削除する方法。
実装が簡単で安全ではあるが、重要な情報を失うリスクが高いため注意が必要。

補完(Imputation)

欠損値を平均値・中央値・最頻値などで埋める方法。
欠損が少ない場合には、実務でも非常によく使われる手法である。

補完+欠損フラグ

欠損を補完したうえで、「欠損があったかどうか」を示すフラグ列を追加する方法。
欠損自体に意味がある場合、この手法は特に効果的である。

外れ値・異常値への対応方法

外れ値には明確な正解がなく、目的やデータ特性に応じた判断が必要である。

主な方法は以下のとおりだ。

  1. 明らかな誤りは削除する
  2. 上限・下限を設けてクリッピングする
  3. 対数変換などでスケールを変換する
  4. カテゴリ化して特徴量として扱う
  5. 外れ値に強いモデルを使う

重要なのは、外れ値=悪ではないという認識を持つことである。外れ値は時に、重要なビジネス上のシグナルとなる。

特徴量スケーリング(標準化・正規化)

機械学習において、モデル構築以前に重要となる前処理の一つが特徴量スケーリングである。特徴量スケーリングとは、各特徴量の値のスケール(大きさや単位)を揃える処理のことを指す。

特に以下のような場面で重要となる。

  • 特徴量ごとに単位が異なる場合
  • 値のオーダーが極端に異なる場合
  • 勾配降下法を用いるモデルを使用する場合

実務では、特徴量ごとに単位や値の範囲が大きく異なることが多い。例えば、年齢(0〜100)と年収(数百万円〜数千万円)を同時に扱う場合、スケーリングを行わないと、モデルは年収の影響を過度に重視してしまう可能性がある。

代表的なスケーリング手法として、標準化正規化が挙げられる。

標準化(Standardization)とは

**標準化(Standardization)**とは、データの平均を0、標準偏差を1に変換するスケーリング手法である。

数式で表すと以下の通りである。
image.png

ここで、μは平均、σ は標準偏差を表す。

正規化(Normalization)とは

正規化とは、データの最小値を0、最大値を1に変換するスケーリング手法である

数式は以下の通りである。
image.png

標準化と正規化の使い分け

両者は似た処理に見えるが、適した利用シーンは異なる。

標準化を用いる場合

  • 最大値・最小値が事前に決まっていない場合
  • 外れ値が存在する場合
  • 線形回帰やロジスティック回帰などのモデルを使う場合

正規化は外れ値の影響を強く受けるため、一般的な機械学習タスクでは標準化が選ばれることが多い

正規化を用いる場合

  • 最大値・最小値が明確に決まっている場合
  • 画像処理(RGB値など)を扱う場合
  • 学習コストを下げたい場合

標準化と正規化については以下にもまとめてる。

なぜ特徴量スケーリングが必要なのか

線形回帰やニューラルネットワークでは、各特徴量の値に基づいて重みが更新される。そのため、特徴量間で値のスケールが大きく異なると、

  • 重み更新が不安定になる
  • 収束が遅くなる
  • 特定の特徴量だけが過剰に重視される

といった問題が生じる。

標準化や正規化を行うことで、特徴量の影響度を均等に扱えるようになり、学習が安定する

特徴量スケーリングが不要な手法

すべてのモデルでスケーリングが必要なわけではない。

例えば、

  • 決定木
  • ランダムフォレスト
  • 勾配ブースティング木

といったツリーベースの手法では、特徴量の大小関係(順位)のみを利用して分岐を行う。そのため、特徴量のスケールに依存せず、スケーリングを行っても精度はほとんど変わらない。

機械学習における特徴量選択(Feature Selection)の3つの代表的手法

機械学習モデルの精度を上げる上で重要なプロセスの一つに**特徴量選択(Feature Selection)**があります。本記事では、特徴量とは何かから始め、代表的な特徴量選択の手法である Filter法 / Wrapper法 / Embedded法 を解説します。

特徴量とは何か?

機械学習における特徴量(Feature)とは、モデルに入力するデータの中で、予測や分類に役立つと考えられる測定可能な特性のことです。

例1: 物件条件から家賃を予測

専有面積 築年数 最寄駅 家賃
50 10 駅A 12万
30 20 駅B 8万

この場合、専有面積・築年数・最寄駅が特徴量で、家賃が予測対象(目的変数)です。

特徴量選択(Feature Selection)とは?

特徴量選択とは、目的変数の予測により強く関連する特徴量のみを選び、学習に使うことを指します。

特徴量選択を行う理由:

  • 予測精度の向上

  • 学習時間の短縮

  • モデルの解釈性向上

  • 過学習の抑制

実社会では、数千〜数百万の特徴量が存在することもあります。その中から関連性の高い特徴量だけを選ぶ作業が必要です。

特徴量選択の代表的3手法

フィルター法(Filter Method)

特徴量を1つずつ評価し、統計的に予測に使えそうかを判断する方法です。

特徴:

  • モデル構築前に評価

  • 計算コストが低い

  • 複数特徴量の組み合わせ効果は考慮されない

例:

  • 目的変数との相関係数を計算し、絶対値が閾値以上の特徴量を選択

  • カイ二乗検定、ANOVAなど

ラッパー法(Wrapper Method)

特徴量の組み合わせをモデルで評価し、予測精度が最も良くなる組み合わせを探す方法です。

特徴:

  • モデル構築と同時に評価

  • 精度は高くなる傾向

計算コストが高い(特徴量が多い場合は膨大)

手法:

  • 前進選択(Forward Selection):最も有用な特徴量を1つずつ追加

  • 後退除去(Backward Elimination):最も不要な特徴量を1つずつ削除

埋め込み法(Embedded Method)

モデル学習の過程で特徴量選択を自動で行う方法です。

特徴:

  • モデルに特徴量選択機能が組み込まれている

  • フィルター法とラッパー法の良いとこ取り

例:Lasso回帰、決定木

Lassoは、不要な特徴量の係数を0にすることで自動的に選択

  1. 特徴量選択によるモデル精度への影響(例)
手法 選択特徴量数 重回帰 R² ランダムフォレスト R²
全特徴量 8 0.61 0.81
Filter法 3 0.48 0.58
Wrapper法 5 0.60 0.79
Embedded法 6 0.59 0.80

適切な特徴量選択を行うと、学習データ・テストデータ双方の精度を維持または向上できる。
特徴量が多すぎる場合、Filter法だけでは不十分で、Wrapper法やEmbedded法を活用するのが効果的。

参考

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?