データクレンジング

データクレンジングとは?

データクレンジングはデータクリーニングとも言われ、データの整合性と品質を向上させるためにエラー、不整合、重複、空欄などの不具合を見つけて、解消・削除するプロセスです。

データクレンジングのプロセス

プロアクティブなデータ品質活動としてデータ収集段階でデータを検証すると、データにさまざまなノイズや汚染を発見できます。

  • 別々のデータソースから集められたデータ間の重複
  • スペルミスや不整合などのデータ入力エラー
  • 空欄または不完全な入力
  • 句読点の間違い、使うべきでない特殊記号の使用
  • 古いデータ

データクレンジングは、これらを対象として、さまざまな方法を使用してデータをクレンジングし、業務に適合するものにします。

業務にとってデータクレンジングが重要な理由

企業のデータは、担当者による手入力、ウェブサイトからのユーザー情報収集、IoTデバイスなど様々なソースからさまざまなフォーマットでやってきます。もしデータ収集の計画段階でデータクレンジングを考慮していないと、大きな混乱を招く恐れがあります。

データレイクは、すぐに重複、エラー、問題であふれたデータスワンプ(沼)になり得ます。たとえば、ユーザーがオンラインフォームに入力した直後に、メールアドレスの入力ミスに気づいたとします。すぐにオンラインフォームに入力しなおしますが、この時システムでは、2人分のデータが記録されます。この一件だけであれば、誰か別の人が覚えのないeメールを受け取るかも知れないというだけですが、全社レベルで見れば大きな問題です。余分なデータがストレージを消費するだけではなく、こうした欠陥エントリを削除するための作業も膨大になります。放置していると、分析や予測、診断の精度の低下を招きます。データ品質が悪いということは、情報が使い物にならなくなるということを意味します。

データサイエンティストは、大半の時間と工数を単純なデータクレンジング作業に費やしています。データサイエンティストの時間は高価なリソースであり、より効果的に活用される必要があります。

データソースの種類が増えるにつれ、データクレンジングの必要性も高まります。データウェアハウス、アプリケーション、個人のコンピューターなどに散在するすべてのデータセットを統合し、重複を排除し、欠陥のあるデータを削除することは非常に重要です。

とはいえ、企業のもつ大量のデータをクレンジングする上で、単に担当者を割当て頭数を揃えるのは効率的ではなく、ヒューマンエラーの余地も大きいです。ではどうやって費用対効果が高く、再現性があり、タイムリーにデータクレンジングを行うことができるでしょうか?

どのようにデータクレンジングを実行すればよいか?

理想的な方法は、データ入力の段階で制約をかけることです。ビジネスの要請する正しい方法で入力するようにすることです。具体的には次のようなものです。

  • 入力項目のバリデーション。たとえばユーザーがメールアドレスを2回登録するよう要求し、異なる場合は拒否する
  • 電話番号の書き方フォーマットなど、データ入力に厳格なルールを適用する
  • データを記録する段階で、データを標準的な形式に変換する
  • データベースやデータ収集における要求・ガイドライン・プロセスを設定する

とはいえ、新システムの導入や既存データセットの統合、新しいデータ連携の追加などの場合は、既存の「汚い」のデータをクレンジングしなくてはなりません。データクレンジングはさまざまな方法がありますが、現在のデータ構造と達成したいデータ品質によってどの方法を選択するかを判断します。

また新たに登場したデータクレンジングの効率的な方法として、AI技術を使った問題点の発見と修正の自動化があります。

データクレンジングの種類

データクレンジングには、主に「従来型クレンジング」と「ビッグデータ用クレンジング」の2つに分かれます。

従来型クレンジング

従来型のデータクレンジングは、企業のデータが数千~数百万のデータ件数だった頃に最適だった手法です。ビッグデータの処理には適していません。主にデータの一覧を使う方法で、スプレッドシートを目視しながらエラー検出とデータ変換を行っていきます。ユーザーは項目ごとに専用のデータ型(カスタムドメイン)を定義し、その項目に当てはめてデータクレンジングを進めます。ほぼ手作業であり、また詳細かつ正確な設定を行うことが必須です。同時に重複排除 (名寄せ)を行っていきます。標準的な従来型のデータクレンジングには、以下のステップがあります。

  • 前処理:根本的に間違ったデータを検出し削除する
  • 処理:対象データをカスタムルールで検証し、また重複を識別する
  • 検証:人間が処理結果をチェックする

この方法は多大な時間と工数を要し、データ品質向上の効果も不安定です。最新のデータクレンジングツールはそこを改善します。

ビッグデータ用クレンジング

ビッグデータのクレンジングは、多くの業界において最大の課題です。ビッグデータはすでに膨大な量であるだけでなく、今後もさらに増大するはずだからです。そのためデータクレンジングの問題もさらに拡大する可能性があります。そうした問題への効果的かつ効率的なアプローチは、人間の入力を排して自動化を進めることです。

専門のクレンジングツール

主に名前と住所を扱い、名寄せ(重複排除)を得意とする市販のツールがあります。それらのツールはデータを特定の要素(電話番号・住所・名前など)に分解し、住所や郵便番号を検証し、最後にデータ同士をグルーピングします。同一人物だと判定したら、それらのデータを自動的に一つに名寄せします。

ETL (Extract Transform Load)ツール

多くの企業がデータウェアハウス構築にあたってETLを採用しています。ETLは、データをソースシステムから抽出し、別の形式に変換し、ターゲットとなるデータセットにロードします。クレンジングは変換の中で行われ、データのエラー・不整合・欠損が検出されます。変換の中に複数のクレンジングツールが組み込まれている場合もあります。

エラー検出の方法は他にもあります。

統計によるエラー検出 (データプロファイリング)

平均、標準偏差、分散などを統計的に捉えて異常値レコードを発見します。値が予想範囲から大きく外れている場合や、既存データのパターンに従わない場合は異常値の可能性が高いです。データ分析においては、そうした異常値は削除されます。この方法は偽陽性 (本当は正しいデータ) を削除してしまう可能性がありますが、単純で高速であり、また他の方法との併用も可能です。

パターン発見

パーティショニング、クラスタリング、分類などの統計技術で、データそのものが持っているパターンを発見し、パターンに従わない値を抽出します。

依存関係

if-thenを使って、レコード間の依存関係を推定できます。推定された依存関係のルールに合わないデータがある場合、それらは外れ値と見なされます。

データクレンジングのメリット

データドリブンなビジネスにおいて重要な、データ品質を確保してくれるのがデータクレンジングです。データクレンジングによって得られる高品質データには多くのメリットがあります。

データドリブンな意思決定

高品質なデータを使うことで、より優れた意思決定を行うことができます。データが低品質な場合、不正確な予測や意思決定の不整合を招くリスクがあります。データの精度と鮮度が優れているほど、そのデータを使った意思決定の精度と鮮度が向上します。

顧客ターゲティングの改善

ターゲットを決めず全世界にむけてマーケティングを行うというのは、壁にスパゲッティを投げつけて貼り付くのを期待するのと同じくらい無意味な、社内リソースの無駄遣いといえます。高品質なデータを使ってターゲットを掘り下げ、理想的な顧客プロファイルを描くことで、初めて正しいターゲティングが可能になります。たとえば、製品やサービスの既存のお客様と同じ属性を持つ潜在的な顧客を見つけるような方法です。 ただし、そもそものデータ量が少なすぎる・不正確な場合は実施自体が不可能です。

キャンペーンの強化

高品質なデータは、マーケティングにおけるコンテンツやキャンペーンの強化にも役立ちます。マーケティングのオーディエンスを深く把握しているほど、よりカスタマイズされたコンテンツや広告を使ったアプローチが可能になります。

カスタマーリレーションの改善

マーケティングにおいて、アバター (マーケティングで設定するターゲット顧客プロファイル)はどのように設定していますか?整合性のあるデータが容易に入手できる場合、興味、ニーズ、好みなどアバターに追加すべき情報収集も簡単になります。こうした活動を通じてカスタマーリレーションを改善していくためには、単一の顧客データを持つことが有効です。これは同時にメルマガの重複防止や誤送信のリスク低減など、他の面でも顧客満足につながります。

データ利用のさらなる促進

理想的な高品質データを手に入れることができれば、データにまつわるエラーや問題も消滅します。品質・フォーマットともに完全なデータクレンジングが可能になったとすると、大半のデータ利用プロセスは秒単位にまで短縮できる可能性すらあります。

競争優位性の確保

競合他社よりも高品質のデータを、より効果的に使用することは大きな競争優位をもたらします。高品質なデータは、過去のイベントを説明したり将来のイベントを予測したりすることで、顧客の効果的なターゲティングに大いに役立ちます。

収益性の向上

データ品質の向上にはそのためのコストが必要ですが、それに見合うリターンを得ることも可能です。データが高品質になることで顧客をより精密にターゲティングして効果的で効率的なマーケティングキャンペーンを実施したり、顧客の離脱防止やシェア拡大に貢献します。企業の収益・コスト構造を明らかにすることで原価管理の向上にもつながります。

データクレンジングの課題

既存の企業データの多くは、多かれ少なかれ品質の毀損が発生しています。データのクレンジングは手動だけでは不可能であり、強力で自動化されたツールが必要になってきています。しかし、それでも完璧を保証することはできません。解決すべき大きな問題があります。データが組織の最大の資産になりつつある今、データの課題にはまだ費用と時間の投資は必要といえます。

データの保証は原理的に不可能である

たとえ高性能なAIであっても、その動作は予め人間が定義したルールや、実データから読み取ったパターンに基づくものでしかありません。人間の創意工夫や経験値に基づくカンを働かせることはありません。たとえば名寄せのロジックというのは、たとえば”D. Duck”さんと”Donald D.”さんがどちらも同じ住所に住んでいれば、この人物は同一人物であり”Donald Duck”であると判断し、レコードを名寄せします。 しかし、同じ住所であったとしても”H. McDuck”さんと”Dewey M”さんは別人だと判定する必要があります。 データには例外がつきものですが、例外だと思えても実はパターンの一部である場合もあります。これを例外として無視してしまうと、新たなデータ欠損の原因になります。

また、AIは必要に応じてデータの欠損を修正しますが、修正内容が正しいことを保証する方法はありません。修正したデータが新たなエラーの原因になる可能性もあります。

分散したデータ

関連するすべてのデータが1箇所にあるか、1箇所からどこにでもアクセスできない限り、有効なデータクレンジングは行えません。最新のデータクレンジングツールであっても、複数のマシンやアプリケーションに接続しながらクレンジングを行えるスケーラビリティは備えていません。

さまざまなデータの種類

企業には、以下のようなさまざまな種類のデータがあります。

  • 動画
  • 画像
  • ソーシャルメディア情報
  • Excelファイル
  • その他さまざまなアプリケーションで作られるデータ

これらすべての異なる形式を一つのデータクレンジングツールでクレンジングすることは、実質的に不可能です。事前に何らかの方法でデータを統合し整合させておく必要があります。 たとえばデータ整合性分析を行うと、データセットに含まれる多くの欠陥を明らかにすることができます。さらに複雑な整合性エラーに対処するには、データ項目間の関係を詳細に分析することも必要です。 あらかじめデータの傾向や分散を把握しておくことが、欠陥データを発見するためのキーとなります。しかし、現実のデータの欠陥は非常に多彩であり、正規分布に従うようなものでもありません。データ整合の問題には、一つの方法ではなくさまざまな方法を併用することが必要です。

データクレンジングの課題と向き合うために

データクレンジングにはさまざまな技術やツールがあり、ある程度まで自動化することもできます。とはいえ、人が目視し手を動かす作業はなくなりません。そしてデータ品質は現代の企業にとって極めて重要です。必要なのは、貴重なデータサイエンティストの時間と労力を本業に集中し、より正確なインサイトや予測を提供することで正しい意思決定を行うことです。そのために考慮すべきポイントは、まず費用対効果であり、早期にデータをクレンジングし、正しく整合のとれたデータを得ることです。最終的にどのようなデータクレンジングを行うかは、決して画一的ではありません。個々の企業ごとにそれぞれの最適な結論が存在します。

関連製品

  • TIBCO EBX® Software
    マスターデータ管理(MDM)に必要なデータガバナンス、データマネジメント、名寄せなどの機能をオールインワンで実現するモデル駆動型ソリューション
    詳しく見る
TAF The Analytics Forum『インサイトからアクションへ』Spotfireが開催するカンファレンスイベント 今すぐ視聴する
Spotfire® 組織全体でのデータ分析・活用をオールインワンで実現するビジュアルアナリティクスツール 無料トライアル実施中
Spotfireの機能・使い方を動画で学べる Spotfire活用セミナー アーカイブ動画配信中 セミナー動画視聴はこちら