發布時間: 2020-07-08 10:23:39
機器學習—超參數調優
模型中的參數與超參數
在模型中不僅有參數,還有超參數的存在。超參數存在的目的是為了讓模型能夠學習到最佳的參數
兩者的區別:
1、參數是有模型自動學習得到的
2、超參數需要我們自己手動設置
?
模型中的超參數,模型中的超參數是模型外部的配置
1、模型超參數常應用于估計模型參數的過程中。
2、模型超參數通常由實踐者直接指定。
3、模型超參數通??梢允褂脝l式方法來設置。
4、模型超參數通常根據給定的預測建模問題而調整
常見的模型超參數:
1、Lasso/Ridge回歸當中的
2、訓練神經網絡的學習速率,迭代次數,批次大小,激活函數,神經元的數量。
3、 支持向量機的C和O超參數。
4、KNN中的K。
5、隨機森林當中的樹的棵數
超參數需要我們手動進行設置,那么我們該怎么去選出一個合適的最優超參數呢?這個問題的解決就涉及到了超參數調優。
這里我們來看一下其中的兩個超參數調優方法網格搜索和隨機搜索
網格搜索
網格搜索嘗試窮舉法去搜索范圍內的所有的點來確定最優值,如果采用較大的搜索范圍和較小的步長,網格搜索有很大的概率找到全局最優值。
但是網格搜索是一種昂貴且非常耗時的一種方法。隨著超參數的增加這種搜索方法十分消耗計算資源和時間
1、這種方法在超參數數目相對較少的情況下工作良好。因此一般機器學習算法中可行,但在神經網絡等情況下就行不通了
隨機搜索
隨機搜索的思想和網格搜索的比較相似,只是不再測試上界和下界之間的所以值了,而是在這個范圍內隨機選取超參數樣本。
在超參數搜索空間較大的情況下,采用隨機搜索,會優于網格搜索的效果
隨機搜索實現了對超參數的隨機搜索, 其中每個設置都是從可能的參數值的分布中進行取樣,試圖找出最佳的超參數子集
注意:
1、首先在一個粗范圍內搜索,然后根據最佳結果出現的位置,縮小范圍。
2、某些超參數比其他的更加重要,隨機搜索過程中會影響搜索的偏向。