一、超參數優化(HPO)簡介
超參數優化 (HPO) 是 Hyper-parameter optimization的縮寫,是指不是依賴人工調參,而是通過一定算法找出機器學習/深度學
習中最優/次優超參數的一類方法。HPO的本質是是生成多組超參數,一次次地去訓練,根據獲取到的評價指標等調節再生成超參數
組再訓練,依此類推。從使用過的情況來看,使用HPO的代價較高,尤其是對複雜深度模型或中小企業來說。
AutoML說明: https://mp.weixin.qq.com/s/cfFcMyabJjj4qPoBTvvj6A
二、超參數優化(HPO)算法開源工具
超參數優化(HPO)算法伴隨着機器學習的發展而發展而來,至今已經發展得比較成熟了。
github項目等也比較多,一類是專注於HPO算法的。如hyperopt, advisor,scikit-optimize等;另外一類是大而全的AutoML,
超參數優化HPO只是其中一部分,如nni, katib, autokeras, auto-sklearn等。
可以發現,python版的超參優化HPO頗受sklearn影響,畢竟是是最受歡迎的機器學習算法工具了。
三、超參數優化(HPO)算法簡介
從開源項目來看,超參數優化(HPO)算法一般都包括三類:
1. 暴力搜索類: 隨機搜索(random search)、網格搜索(grid search)、自定義(custom)
2. 啓發式搜索: 進化算法(Naïve Evolution, NE)、模擬退火算法(Simulate Anneal, SA)、遺傳算法(Genetic Algorithm,
GA)、粒子羣算法(Particle Swarm Optimization, PSO)等自然計算算法、Hyperband
3. 貝葉斯優化: BOHB、TPE、SMAC、Metis、GP
希望對你有所幫助