close
定義: Learning rate中文為學習率, 顧名思義, 代表 學習的效率, 也就是 說,當 α越大 ,學習越快 ,θ計算 一次 cost function斜率 的改變量就越大,反之 亦然。
討論: α的大小是 programming需要考慮的值,α太小會導致 學習速度 (梯度 下降)過慢,甚至影響收斂;α太大可能使的 θ錯過最佳解,無法收斂,甚至發 散,如圖 5。
圖5. 左圖為 α太小,右圖 為 α太大之收斂情況
討論:可以透過觀察斜率 變化來檢查學習率是否 適合, 若是學習率過大, 斜 率會漸 變大, 而不是變小 ;若學習率過小, 則斜率 變小幅度 小, 基本 上就 是, 把斜率 調到 一個斜率 不會變大的最大值, 可以使神經網路 收斂較 快,且不 會發散。
Learning rate decay是一 種設置學習率的算法, 可以設置較大的初始 學習 率, 他會自動慢 變小,使 learning rate衰退 有許多種方式, 如圖 6。第一種為比較 緩和的衰退 方式; 第二種為快速衰退; 也可以如第四種是用 離散的衰退 方式;當資料量很大, 或者神經網路 很深, 模型需要跑很 好幾天時, 可以在認 為學習速度減慢時, 手動調整 ,使學習率變小。
圖6. Learning rate decay公式
Reference
1. Deep Learning – Coursera
2. 《Tensorflow實戰 google深度學習架構》
文章標籤
全站熱搜