亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問c++語言中的全局優化算法如何掌握?

請問c++語言中的全局優化算法如何掌握?

C++
開滿天機 2018-07-09 18:10:43
c++語言中的全局優化算法如何掌握
查看完整描述

1 回答

?
慕神8447489

TA貢獻1780條經驗 獲得超1個贊

所有機器學習開發者都會遇到同樣一個問題:你有一些想要使用的機器學習算法,但其中填滿了超參數——這些數字包括權重衰減率、高斯核函數寬度等等。算法本身并不會設置它們,你必須自己決定它們的數值。如果你調的參數不夠好,那么算法是不會工作的。那么該如何是好?

在調參時,絕大多數人只會憑經驗進行猜測。這不是個好現象,我們需要更合理的方法。所有人都希望一些黑箱優化策略如貝葉斯優化變得實用化,但在我看來,如果你不把貝葉斯優化的超參數調對,它就無法展現專家級的調參能力。事實上,我認識的每個使用貝葉斯優化的人都有著相同的經驗。最終,如果我認為手調參數更加方便,我就會轉回到傳統方法上去,這也是所有使用類似工具的人都會遇到的事。所以結果就是我們一般不會使用自動超參數選擇工具——令人沮喪的結論。我們都希望出現一個無參數的全局優化器,其中的超參數選擇是我們可以信任的。

我們不需要想象上界是如何幫助我們評估最優點的。例如,如果你選擇最大上界作為下一次迭代,你就已經非常接近全局極大值了。論文作者隨后繼續證明了這種方法的一些不錯的屬性。值得一提的是,他們是用數學方法證明的,同時也實踐展示了這種方法在很多非常規情形下要比隨機搜索要好——考慮到隨機超參數搜索(Random Search for Hyper-Parameter Optimization,James Bergstra & Yoshua Bengio)的效果非常強大,這是一個強有力的聲明。在論文中,研究人員也對貝葉斯優化等算法進行了比較,并展示了 LIPO 的競爭力。

此時此刻你或許會說:「等一下,我們并不知道 Lipschitz 常數 k 的值!」這不是一個大問題,因為它非常容易估計,例如,可以將 k 設置為每次迭代前觀察到的 f(x) 的最大斜率。這相當于解決如下問題:

Malherbe 等人測試了這種估算 k 的方法,并展示了它的優秀性能。


查看完整回答
反對 回復 2018-08-05
  • 1 回答
  • 0 關注
  • 719 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號