對于一個探索性學期項目,我試圖使用生產過程中進行的各種測量來預測質量控制測量的結果值。對于該項目,我正在測試不同的算法(LinearRegression、RandomForestRegressor、GradientBoostingRegressor,...)。我通常得到相當低的 r2 值(大約 0.3),這可能是由于特征值的分散而不是我這里真正的問題。最初,我有大約 100 個特征,我試圖使用 RFE 和 LinearRegression() 作為估計器來減少這些特征。交叉驗證表明,我應該將特征減少到僅 60 個。然而,當我這樣做時,對于某些模型,R2 值會增加。這怎么可能?我的印象是,向模型添加變量總是會增加 R2,因此減少變量數量應該會導致 R2 值降低。有人可以對此發表評論或提供解釋嗎?提前致謝。
1 回答

開滿天機
TA貢獻1786條經驗 獲得超13個贊
這取決于您是否使用testing
或training
數據來測量 R2。這是衡量模型捕獲的數據方差有多大的指標。因此,如果增加預測變量的數量,那么你是正確的,因為你可以更好地準確預測訓練數據的位置,因此你的 R2 應該增加(減少預測變量的數量則相反)。
但是,如果您將預測變量的數量增加太多,則可能會overfit
影響訓練數據。這意味著模型的方差實際上人為地很高,因此您對測試集的預測將開始受到影響。因此,通過減少預測變量的數量,您實際上可以更好地預測數據test set
,因此您的 R2 應該會增加。
添加回答
舉報
0/150
提交
取消