データ汚染とは
データ汚染とは、機械学習モデルの学習用データセットに、偶然あるいは意図的に低品質なデータを混入されること。この混入された低品質なデータは、モデルの学習過程を歪めてモデルの精度低下を引き起こす可能性がある。
データ汚染による影響
データが汚染されると、モデルの精度低下に伴って、誤判断の増加や予測精度の低下、特定のグループへの差別、セキュリティリスクの増大などの影響が生じる。
誤判断の増加や予測精度の低下
低品質なデータが学習に利用されることで、モデルの精度低下し、誤判断の増加や予測精度の低下につながる。
例)一部の画像に間違ったラベルが付けられたデータをそのまま学習に使ってしまうと、似たような画像を分類する際に間違える可能性が高くなってしまう。特定のグループへの差別
学習データに偏りが含まれている場合、その偏りがそのままモデルに反映されてしまい、特定のグループに対して差別的な予測結果を出す可能性がある。
例)人種差別の慣習のある国のデータを学習して犯罪予測を行うと、特定の人種に対して差別的な予測結果が得られる可能性が高い。セキュリティリスクの増大
攻撃者が意図的に学習データを汚染することで、モデルを悪用して不正行為ができてしまう可能性がある。
例)攻撃者がある特定の人物として認識されるように顔認証システムが学習されていれば、他人へのなりすましが可能になってしまう。データ汚染の原因と対策
データ汚染は、機械学習モデルの学習用データセットに低品質なデータを混入してしまうことで発生する。低品質なデータが混入する原因には、人為的ミス、データ取得時のノイズ、悪意のある攻撃、前世代モデルによる低品質データなどがあり、いずれも完全に取り除くことは難しいが対策できることもある。
人為的ミス
データ収集時の誤入力や間違ったラベル付け、データ前処理時のミスといった人間の操作ミス。操作ミスを避けるような仕組みやダブルチェック、入力データの検証などによりある程度対策できる。データ収集時のノイズ
センサーの故障や測定誤差、通信エラー、外部環境からのノイズといったデータ収集時にどうしても混入してしまうノイズ。システムに冗長性を持たせる、物理的にノイズが入らない工夫をする、異常検知でおかしいデータを検出するなどで対策できる場合もある。悪意のある攻撃
データポイズニングや敵対的サンプルの生成といった機械学習モデルを悪用して不正行為を行うことを目的とした悪意のある攻撃。学習データへの不正アクセスを禁止する、ロバストなモデルの設計などで対策できる場合もある。前世代モデルによる低品質データ
前世代のモデルによって生み出された低品質な出力結果。出力結果をそのまま学習に利用せず、人の目によるチェックを入れることである程度対策できる。まとめ
データ汚染は機械学習モデルの信頼性を損なう深刻な問題である。データ汚染を防ぐため、データの品質管理を徹底し、原因に応じて様々な対策を組み合わせる必要がある。