我們給線回歸加更多的特徵(x^2,x^3)的時候,模型會逐漸過擬合,然後誤差為0。那如果我一直增加一些無用的特徵(隨機?),也會導致訓練誤差下降或不變么……


如果你是假設演算法總是能找到全局最優解的話,比如像線性回歸這種,那麼增加特徵是一定會保證訓練誤差不變或下降的,並且大概率會下降。

題主問的是訓練誤差,這個問題下很多人分不清訓練誤差和測試誤差。數據不變,模型不變,演算法足夠強大的前提下,舊的特徵集若是新的特徵集的子集,新的訓練誤差一定是至少非增的。因為你增加特徵,相當於擴充了參數空間,而原來訓練出來的最優模型參數,也是這個新參數空間里的一個可行解。最優解一定不會差於任何一個可行解,這是基本的數學常識。

當然,如果是討論測試誤差,那幾乎一定是會上升的。總而言之就是過擬合會加重,但是訓練誤差大概率下降。不信的話可以自己寫代碼模擬試一試。


大概率不會。

首先你需要驗證自己加入的特徵真的是無用特徵,其次無用特徵機器無法學習到相關知識,最後訓練出的模型無用特徵會不佔權重,或權重非常之小。

而且針對添加的特徵不同,採用的演算法不同,結果也會不同,樓主提的問題結果不是絕對的。


我猜題主是想利用過擬合作為訓練結果,同時試圖通過上述添加「無用特徵」來降低過擬合,使得過擬合模型能夠可用。是吧?

先回答問題:添加無用特徵,如果embedding size不變,模型誤差可能增大,當然性能大概率不會變得更好;而即便增大了embedding size,過擬合模型的性能也大概率是降低的。所以,對於業務目標的性能,不會有好處。

如果想投機取巧,則與作弊無二。

過擬合就是過擬合。正常地防止了過擬合後,才能發現業務域和數據的真正特徵和規律,才是向著目標前進了一步。何樂而不為?!


如果無用特徵和樣本標籤是一對多的關係,反而會起反作用


和演算法相關,和演算法實現相關。

如果針對線性回歸這一問題,如果是通過矩陣的逆來求解,是不會產生很大的影響的。但是有些無用特徵導致矩陣的秩過小,會導致模型的不穩定,從而在預測的時候效果會不是很好。如果是通過梯度下降的思路來求解,則會對模型產生較大的影響。很可能會影響收斂速度和收斂效果。

如果在廣義的模型來看,很多模型都會受到影響,所以特徵工程的很重要的一個環節是特徵篩選。


  1. 我覺得通常不會。但顯然是不一定的。有的特徵反倒會引起失誤,這幾乎是無需證明的公理。若有可能,避免垃圾特徵。
  2. 我覺得:如果你的訓練集足夠代表全集的話,就不可能存在誤差了。但我給不出證明。


推薦閱讀:
相关文章