データ漏洩
データ漏洩とは、機械学習アルゴリズムのトレーニングに使用されるデータに、予測しようとしている情報が含まれていることを意味します。これにより、トレーニング中のモデルのパフォーマンスが現実よりも高くなり、モデルのパフォーマンスの信頼性が失われる可能性があります。データ漏洩を特定および防止して、信頼性の高い予測を得る方法を学びます。
データ漏洩には、次の 2 つの形式があります。
-
トレーニング セット内の 1 つ以上の特徴量を、予測しようとするターゲット変数を導き出すために使用できる場合。
-
トレーニング セット内の 1 つ以上の特徴量に、予測時には認識されていない情報が含まれている場合。
次のテーブルでは、「Stage」という列は、予測する「Stage (Binary) 」の列と重複しています。トレーニング データセットに 「Stage」を含めることで、予想される結果に対する答えが提供され、モデルのスコアが高くなります。
データ漏洩の特定
データ漏洩を特定するには、「予測する時点でレコードに同じ情報があるか」、または「30 日後に同じレコードになっているか」などの質問について検討してください。トレーニング データセット内のすべてのデータは、ビジネス上の質問における時間的制約に関連している必要があることに注意してください。
モデルをトレーニングしたら、モデル メトリクスから次の手がかりを探すことができます。
-
ハイ スコア: スコアは本当に高いか。例えば、F1 スコアは 85 を超えているか
-
特徴量の重要度: 1 つの特徴量の重要度が他の特徴量と比べてはるかに高いか
-
ホールドアウト スコア: ホールドアウト スコアはクロス検証スコアと比べてかなり低いか
以下の表は、データ漏洩の原因となる一般的な特徴量の例を示しています。
ビジネス ユース ケース | ターゲット |
漏洩の可能性がある特徴量 |
---|---|---|
販売機会は成立するか |
成立 (「はい」または「いいえ」) |
ステージ、成立日、請求書の詳細、支払手数料 |
将来の取引額を予測する |
次回の取引額 |
税金、注文の詳細 |
見込み顧客は機会に変換するか |
変換 (「はい」または「いいえ」) |
機会の詳細、変換日 |
顧客はチャーンするか |
チャーン (「はい」または「いいえ」) |
チャーンの理由、チャーンの日付、静的な顧客の加入期間、顧客の温度感 |
従業員は自ら退職しているか |
退職 (「はい」または「いいえ」) |
退職面談の詳細、退職日、退職届の情報 |
データ漏洩の防止
データ漏洩を防ぐ最善の方法は、構造化されたフレームワークを使用して、優れたビジネス上の質問とデータセットを取得することです。詳細については、「機械学習の質問の定義」を参照してください。