簡體   English   中英

sklearn learning_curve和StandardScaler

[英]sklearn learning_curve and StandardScaler

我想知道sklearn.model_selection learning_curve是否可以使用或確實使用sklearn.preprocessing StandardScaler。 我已經研究了實現,但是我的技能水平還不足以得出結論。 所有使用learning_curve的教程都將整個數據集傳遞給learning_curve,learning_curve會將數據分為訓練集和測試集。

適用於所有估算器的所有教程都將數據分為訓練和測試,然后僅縮放訓練數據,並使用訓練數據標度轉換測試數據。 哪個完全明白。

我應該先縮放整個數據集,然后再將其傳遞給learning_curve。 我確實知道learning_curve將使用k折或其他交叉驗證方法,所以它是否重要,因為交叉驗證會平均所有結果?

謝謝,

learning_curve不會自行實現StandardScaler 您可以創建一個Pipeline作為您的估算器,第一步是StandardScaler然后使用您下一步要使用的任何估算器。 這樣,當您在每次cv迭代期間調用learning_curve時,您都在訓練倍數上同時對定標器和估計量進行訓練,並且在每次迭代中針對測試倍數來驗證性能。

您不希望在調用learning_curve之前縮放整個數據集。 原因是在訓練模型之前縮放整個集合會引入偏差,因為您使用的數據將用於驗證訓練模型,這可能會導致過度擬合。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM