この記事では、モデルのパフォーマンスを評価する際のデータ漏洩の問題と、データ漏洩を回避する方法について説明します。 モデル評価中にトレーニング セットのデータが検証/テスト セットに入ると、データ漏洩が発生します。これにより、検証/テスト セットにおけるモデルのパフォーマンスの評価が偏ってしまいます。 Scikit-Learn を使用した「ボストンの住宅価格」データセットの例で理解してみましょう。データセットには欠損値がないため、データ漏洩をよりよく示すために 100 個の欠損値がランダムに導入されます。
上記のコードでは、「Xtrain」はトレーニング セット (k 分割交差検証) であり、「Xtest」は未知のデータでのモデル評価に使用されます。上記のコードは、データ漏洩を伴うモデル評価の例であり、欠損値を補完するためのモード (strategy='mostfrequent') は 'Xtrain' で計算されます。同様に、データのスケーリングに使用される平均と標準偏差も、「Xtrain」を使用して計算されます。 'Xtrain' の欠損値は補完され、 'X_train' は k 分割交差検証の前にスケーリングされます。 k 分割交差検証では、「Xtrain」は「k」分割に分割されます。各 k 分割交差検証反復では、分割の 1 つが検証に使用され (検証部分と呼びます)、残りの分割はトレーニングに使用されます (トレーニング部分と呼びます)。各反復におけるトレーニング部分と検証部分には、「Xtrain」によって計算されたパターンを使用して入力された欠損値があります。同様に、「Xtrain」で計算された平均と標準偏差を使用してスケーリングされています。この推定およびスケーリング操作により、「Xtrain」からの情報が k 分割クロス検証のトレーニング部分と検証部分の両方に漏れてしまいます。この情報漏洩により、検証部分におけるモデルのパフォーマンスの推定値が偏ってしまう可能性があります。次のコードは、パイプを使用してこれを回避する方法を示しています。
上記のコードでは、パイプラインにインポーター、スカラー、およびリグレッサーを含めています。この例では、「X_train」は 5 つのフォールドに分割され、各反復でパイプラインはトレーニング部分を使用して、トレーニング部分と検証部分に欠損値を入力するためのモードを計算します。同様に、トレーニング部分と検証部分を測定するために使用される平均と標準偏差も、トレーニング部分で計算されます。このプロセスでは、補完モードとスケール平均および標準偏差がトレーニング部分で各 k 分割クロス検証反復時に計算されるため、データ漏洩が排除されます。各 k 分割クロス検証反復では、これらの値を使用してトレーニング部分と検証部分を計算およびスケーリングします。 データ漏洩の有無で計算されたトレーニング RMSE と検証 RMSE の違いを確認できます。データセットが小さいため、それらの間のわずかな違いしか確認できません。データセットが大きい場合、この違いは重要になる可能性があります。目に見えないデータの場合、検証 RMSE (データ漏洩あり) は偶然にのみ RMSE に近くなります。 したがって、k 分割クロス検証にパイプラインを使用すると、データ漏洩を防ぎ、未知のデータに対するモデルのパフォーマンスをより適切に評価できます。 |
>>: 2021 年の自然言語処理 (NLP) のトレンド トップ 10
「この記事は素晴らしいです! 実用的なプロジェクトがたくさん含まれており、機械学習を学び始めたばか...
[[247418]]人工知能の分野における成果は、誤解されやすく、過大評価されやすい。このことは、人...
概要: この記事では、主にコンピューター ビジョンにおける 5 つの主要テクノロジ、つまり画像分類、...
Flutter はますます多くの開発者や組織で使用されており、Kuaishou も Flutter ...
本記事では、海外KDnuggetsフォーラムにおけるSimplilearnの統計結果と、国内有名求人...
おそらく、現代のデータ環境を形作る最大の力は、基礎となるモデルの遍在性です。これらのモデルは、外部の...
人工知能と機械学習はメリットをもたらす一方で、新たな脆弱性ももたらします。この記事では、いくつかの企...
独自の強化学習実装をゼロから作成するのは大変な作業になる可能性がありますが、そうする必要はありません...
どの学校も生徒をより深く理解したいと考えていますが、テクノロジーを駆使した解決策の中には、満場一致で...
2024 年には、ワイヤレス テクノロジーに多くの改善がもたらされ、接続性、効率性、消費者体験が向上...