超參數優化與NNI(HPO,Hyper-parameter optimization)

一、超參數優化(HPO)簡介

        超參數優化 (HPO) 是 Hyper-parameter optimization的縮寫,是指不是依賴人工調參,而是通過一定算法找出機器學習/深度學

習中最優/次優超參數的一類方法。HPO的本質是是生成多組超參數,一次次地去訓練,根據獲取到的評價指標等調節再生成超參數

組再訓練,依此類推。從使用過的情況來看,使用HPO的代價較高,尤其是對複雜深度模型或中小企業來說。

 

        AutoML說明: https://mp.weixin.qq.com/s/cfFcMyabJjj4qPoBTvvj6A

 

二、超參數優化(HPO)算法開源工具

        超參數優化(HPO)算法伴隨着機器學習的發展而發展而來,至今已經發展得比較成熟了。

        github項目等也比較多,一類是專注於HPO算法的。如hyperoptadvisorscikit-optimize等;另外一類是大而全的AutoML,

超參數優化HPO只是其中一部分,如nni,  katib,  autokerasauto-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

 

 

希望對你有所幫助

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章