在構建機器學習模型的時候,如何進行超引數調優?
超引數調優的方法主要有網格搜尋、隨機搜尋和貝葉斯優化等超引數搜尋演算法,這類演算法主要包括一是目標函式,即演算法需要最大化或者最小化的目標,二是搜尋範圍,一般通過上限和下限來確定,三是演算法的其他引數,如搜尋步長等。
網格搜尋
網格搜尋可能是最簡單,應用最廣的超引數搜尋演算法,它通過查詢搜尋範圍內的搜尋的點來確定最優值。如果採用較大的搜尋範圍以及較小的步長,網格搜尋有很大概率找到全域性最優值。然而,這種搜尋方案十分消耗計算資源和時間,特別是需要調優的超引數比較多的時候。在實際應用中,網格搜尋法一般會先使用較廣的搜尋範圍和較大的步長,來尋找全域性最優值和可能位置;然後會逐漸搜尋搜尋範圍和步長,來尋找更加精確的最優值。這種操作方案可以降低所需的時間和計算量,但由於目標函式一般是非凸的,所以很可能錯過全域性最優值。
隨機搜尋
隨機搜尋的思想與網格搜尋比較相似,只是不再測試上界和下界之間的所有值,而是在搜尋範圍中隨機選取樣本點。它的理論依據是如果樣本點集足夠大,那麼通過隨機取樣也能大概率地找到全域性最優值,或者近似值。隨機搜尋一般會比網格搜尋要快一些,但是和網格搜尋的快速版本一樣,結果是無法保證最優的。
貝葉斯優化演算法