Machine-Learning
看到測試數據的結果後更改模型是否有效?
我見過這個問題,它說使用測試數據來調整超參數不是一個好的決定,並且會阻止你推廣模型。
我的問題與上面的問題不同,我知道觀察測試數據並不是一件好事。
**問題:**在用舊模型評估後更改模型並獲得更好的結果是否是有效的工作?為什麼?
例如,您開發了線性模型,但在使用測試數據對其進行評估後,將其更改為二階多項式並報告結果(比線性更好)。
如果你這樣做,那麼你的“測試”數據不再完全是測試數據——它現在是部分訓練數據。事實上,這兩類之間的全部區別在於訓練數據用於製定假設和模型,然後使用測試數據對模型下的這些假設進行推斷。出於這個原因,在訓練階段注意制定一個足夠通用的模型是一個好主意,請注意,您可能希望包含允許比訓練數據中顯示的更通用功能形式的高階效應。
在任何情況下,如果您使用“測試”數據來調整模型,但仍將其視為測試數據,那麼您實際上是兩次使用數據,首先是作為訓練數據,然後是作為測試數據。這裡的危險是模型選擇可能與感興趣的假設有關,在這種情況下,這種方法會在您的分析中引起確認偏差,即測試偏向於接受假設。如果您的建模更改與感興趣的假設無關,那麼您可能會在不施加偏見的情況下僥倖成功(或者至少不會施加*太多偏見)*偏見),但很難確定。如果您決定這樣做,我建議您至少進行一次敏感性分析,將您首選模型的結論與原始模型的結論進行比較。這樣,您可以檢查模型中的更改是否影響了與感興趣的假設相關的任何結論(或者它是否在其他方面更適合)。