您是否對優秀或接近優秀的模型表現不知所措? 你的快樂被出賣了嗎?
簡而言之,當您要預測的信息直接或間接出現在訓練數據集中時,就會發生標簽泄漏或目標泄漏。 它會導致模型夸大其泛化誤差,并極大地提高了模型的性能,但模型對于任何實際應用都毫無用處。
數據泄漏如何發生
最簡單的示例是使用標簽本身訓練模型。 在實踐中,在數據收集和準備過程中無意中引入了目標變量的間接表示。 觸發結果的特征和目標變量的直接結果是在數據挖掘過程中收集的,因此在進行探索性數據分析時應手動識別它們。
數據泄漏的主要指標是“太好了,不能成為現實”模型。 由于該模型不是優秀模型,因此在預測期間最有可能表現不佳。
數據泄漏不僅可以通過訓練特征作為標簽的間接表示來實現。 也可能是因為來自驗證或測試數據的某些信息保留在訓練數據中,或者使用了來自將來的歷史記錄。
標簽泄漏問題的示例
通過此人關聯銀行賬號的特征來預測是否會開設銀行帳戶
在客戶流失預測問題中,事實證明,無論客戶是否流失,稱為“采訪者”的功能都是最好的指示。 模型表現不佳的原因是此“采訪者”是僅在客戶確認他們打算流失之后才分配調查人員。
如何應對標簽泄漏
1、刪除它們或添加噪音以引入可以平滑的隨機性
2、使用交叉驗證或確保使用驗證集在看不見的實例上測試模型。
3、使用管道處理而不是縮放或變換整個數據集。 當基于提供的整個數據集按比例縮小特征時,例如使用最小-最大縮放器,然后應用訓練和測試分割,縮放的測試集還包含來自縮放的訓練特征的信息,因為最小值和最小值 使用了整個數據集的最大值。 因此,始終建議使用管道來防止標簽泄漏。
4、根據保留數據測試模型并評估性能。 就基礎架構,時間和資源而言,這是最昂貴的方式,因為必須使用正確的方法再次執行整個過程。
總結
數據泄漏是最常見的一種錯誤和可能發生的特性工程,使用時間序列,數據集標簽,并巧妙地通過驗證信息訓練集。重要的是機器學習模型僅僅是接觸信息可用時的預測。因此,明智的做法是仔細挑選特性,在應用轉換之前分割數據,避免在驗證集上擬合轉換,并使用管道處理。
責編AJX
-
數據
+關注
關注
8文章
7193瀏覽量
89788 -
模型
+關注
關注
1文章
3372瀏覽量
49297 -
機器學習
+關注
關注
66文章
8453瀏覽量
133152
發布評論請先 登錄
相關推薦
華為云 Flexus X 實例部署安裝 Jupyter Notebook,學習 AI,機器學習算法
![華為云 Flexus X <b class='flag-5'>實例</b>部署安裝 Jupyter Notebook,<b class='flag-5'>學習</b> AI,<b class='flag-5'>機器</b><b class='flag-5'>學習</b>算法](https://file1.elecfans.com//web3/M00/04/8B/wKgZPGd2J4SABwWpAAGTB6rKYaM050.png)
NPU與機器學習算法的關系
MOS管泄漏電流的類型和產生原因
如何檢測內存泄漏
Python在AI中的應用實例
機器學習中的數據分割方法
機器學習中的數據預處理與特征工程
電機振動的原因分析及預防措施
深入探討機器學習的可視化技術
![深入探討<b class='flag-5'>機器</b><b class='flag-5'>學習</b>的可視化技術](https://file1.elecfans.com/web2/M00/D9/FE/wKgaomYpzEiABG1sAABWzMqGd4M786.png)
傅里葉變換基本原理及在機器學習應用
![傅里葉變換基本原理及在<b class='flag-5'>機器</b><b class='flag-5'>學習</b>應用](https://file1.elecfans.com/web2/M00/C6/00/wKgaomX6VTyAHahBAAA0Hyh9j4E966.png)
評論