機械学習 データ準備のベストプラクティス

機械学習 データ準備のベストプラクティス
データの視覚化が投影された窓の外を眺めている男性。
画像: conceptcafe/Adobe Stock

機械学習(ML)は、顧客体験の向上や製品開発などのためにデータを活用したい企業にとって、ますます重要性を増しています。しかし、企業が機械学習技術を最大限に活用するには、まず人工知能(AI)やMLモデルに取り込むための良質なデータを確保する必要があります。

ジャンプ先:

  • データ準備とは何ですか?
  • 機械学習にとってデータ準備が重要なのはなぜですか?
  • 機械学習におけるデータ準備のベストプラクティス

データ準備とは何ですか?

データ準備には、データのクリーニング、変換、構造化を行い、さらなる処理と分析に備えることが含まれます。データは通常、標準化された形式で企業に届くわけではないため、企業での使用に適した状態に準備する必要があります。

参照: 機械学習マスタークラスバンドル (TechRepublic Academy)

データサイエンティストが機械学習モデルを実行して洞察を引き出す前に、まずデータを変換(フォーマット変更、場合によっては修正)し、ニーズを満たす一貫した形式にする必要があります。実際、データサイエンティストの時間の80%はデータ準備に費やされています。データサイエンスの人材を採用し、再教育するには多額の費用がかかることを考えると、これはデータ準備がデータサイエンスにとっていかに重要であるかを示しています。

機械学習にとってデータ準備が重要なのはなぜですか?

MLモデルが適切に機能するには、常に特定のデータ形式が必要です。データ準備を行うことで、不足している情報や不完全な情報を修正し、モデルを適切なデータに適用できるようになります。

企業がデータレイクやその他の場所で収集するデータの中には、顧客名、住所、製品の好みなど構造化されたデータもありますが、地理空間情報、製品レビュー、モバイルアクティビティ、ツイートデータなど、大部分はほぼ間違いなく非構造化データです。いずれにせよ、これらの生データは、標準化された一貫した方法でフォーマットされるまで、企業のデータサイエンスチームにとって実質的に役に立たないものです。

参照: 非構造化データレイクからビッグデータを除去する4つのステップ (TechRepublic)

企業のデータ整合性管理を支援するツールを提供する企業である Talend は、データ準備の主な利点として、「処理前にエラーをキャッチする」ことでエラーを迅速に修正できることや、不良データをそれ以外は良好な機械学習 (ML) モデルに適用しようとする際に膨れ上がる可能性のあるデータ管理コストの削減などを挙げています。

機械学習におけるデータ準備のベストプラクティス

データ準備に関する概要については、データ準備に関する5つのヒントをご覧ください。これらのより一般的なヒントは、主にMLデータ準備にも当てはまります。ただし、MLデータ準備には、検討する価値のある特定のニュアンスがいくつかあります。

計画に従ってデータを準備する

MLモデルに何を予測させたいのかは事前にわかっているはずなので、それに応じた準備をしておくことが重要です。達成したい成果を明確に把握していれば、収集したいデータの種類や、そのデータをどのようにクリーンアップしたいかをより適切に定義できます。

これにより、欠損データや不完全なデータへの対応も容易になります。欠損データへの一般的なアプローチは、null値の置換です。例えば、乗客データを扱う航空会社の場合、食事の好みを追跡するフィールドにnull値を代入することを検討できます。

しかし、アプリケーションによっては、null値の置換は最適な方法ではない場合があります。前述の例で言えば、航空会社は乗客の国籍データが欠落している場合、null値を挿入すべきではありません。これは、乗客の旅行体験に深刻な問題を引き起こす可能性があるためです。どのデータが重要で、不完全なレコードをどのように処理するかを把握することは不可欠です。

参照: 採用キット: データサイエンティスト (TechRepublic Premium)

データ収集に関わる人々を考慮する

単純で反復的なタスクを処理するためにロボティック・プロセス・オートメーション(RPA)への投資を検討すべきですが、従業員が単調な作業に追われることのないようにする必要があります。しかし、人材は依然として最大の資産であり、MLのための適切なデータ準備における障害でもあります。企業では、同じ部門内であっても、データサイロ化が蔓延しているケースがしばしば見られます。

たとえば、ニュース組織は、Web 上での読者の興味を理解していても、基盤となるストレージ システムが異なる別のチームによって実行されるモバイル アプリをパーソナライズできない場合があります。

従業員が集団的にデータドリブンになるよう支援することは、データの収集と活用に取り組むだけでなく、部門や役割を超えてデータを有益な方法で共有することを意味します。集団的なデータ収集と活用のプロセスは、機械学習モデルのためのより良いデータを確保する上で不可欠です。

ターゲットの漏洩を避ける

データ サイエンスと ML のリーダーである Google は、ML トレーニング データにおけるターゲット漏洩に関して、次のような賢明なアドバイスを提供しています。「ターゲット漏洩は、予測を要求したときには利用できない予測情報がトレーニング データに含まれている場合に発生します。」

Googleの専門家はさらに、純粋な予測評価指標から実データに移行する際に、機械学習モデルのパフォーマンスが低下する可能性があると説明しました。ここで重要なのは、正確な予測を行うために必要な過去のデータをすべて確保することです。

データを分割する

ML 用のオープンソース Python ライブラリを提供する企業 Deepchecks は、より良い結果を得るために、企業はデータをトレーニング セット、検証セット、テスト セットに分割することを提案しています。

「トレーニングデータから洞察を引き出し、すべてのデータセットに処理を適用する」ことで、モデルが実世界のデータに対してどのように機能するかを的確に把握できます。多くの場合、データの80%をトレーニングセットに、20%をテストセットにするのが適切です。

偏見に注意

機械は常に偏りのない正しい判断を下すと私たちは考えがちですが、時には機械が人間のバイアスをより効率的に伝えることもあります。機械学習モデルにバイアスが入り込む可能性があるため、モデルの学習に使用するデータソースを綿密に検討することが不可欠です。

機械学習モデルの知能は、そのモデルに入力されるデータの質に左右されます。そして、そのデータは、それを集める人々によって制限されます。その結果、人々は機械から得られるデータの影響を受け、生データからますます遠ざかってしまう可能性があります。全体として、私たちはモデルを心から信頼するようになったため、モデルに適切なデータを与えることがますます困難になっています。

機械学習用のデータを準備する際には、謙虚さと慎重さを強く持ち、データやモデルが複数世代にわたってバイアスが蔓延しないようにすることが重要です。データチームが技術的な知識だけでなく、機械学習データの準備において問題が発生する可能性のある箇所を認識できるようにするために、包括的な機械学習コースへの参加を検討してください。

データ探索のための時間を作る

データ探索を通してしっかりとした基盤を築くことなく、すぐにモデル構築に飛びつきたくなるかもしれません。データ探索は、個々の変数のデータ分布や変数間の関係性を調べることができるため、重要な最初のステップです。また、共線性など、一緒に動く変数を示唆する要素も確認できます。データ探索は、データの不完全な部分や、さらなる変換が役立つ部分を的確に把握するのに最適な方法です。

開示: 私は MongoDB で働いていますが、ここで表明されている意見は私自身のものです。

Tagged: