この記事では、モデルのパフォーマンスを評価する際のデータ漏洩の問題と、データ漏洩を回避する方法について説明します。 モデル評価中にトレーニング セットのデータが検証/テスト セットに入ると、データ漏洩が発生します。これにより、検証/テスト セットにおけるモデルのパフォーマンスの評価が偏ってしまいます。 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
ソフトウェア開発者向けのローコード機能それでは、ソフトウェア開発者に機械学習機能を提供するローコード...
大規模言語モデル (LLM) の開発により、実務者はより多くの課題に直面しています。 LLM からの...
AIの拡大する影響私たちの日常生活における AI の影響はますます明らかになってきています。 AI ...
スマートロボットは、タスクをより効率的かつ正確に実行し、生産性を向上させ、人的エラーを削減するように...
データサイエンスはデータに関するものです。これは、あらゆるデータ サイエンスや機械学習プロジェクトの...
2016年百度世界大会が開幕し、百度創始者の李承燁氏は大会で「人工知能」をテーマに講演し、最新製品「...
[[433049]]数式ビルダーのテーブルバージョンが登場しました。交通大学の ACM クラスを卒業...
モノのインターネットとインダストリー 4.0 の登場以来、マシン ビジョン、人工知能、機械学習、ディ...
世界経済の礎である製造業は、人工知能 (AI) が推進する技術革命の最前線にあります。この記事では、...
この記事では、ブートストラップ、バギング、ランダム フォレスト、ブースティング、スタッキング、その他...