keras进阶之poly学习率
生活随笔
收集整理的這篇文章主要介紹了
keras进阶之poly学习率
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Keras提供兩種學習率調整方法,都是通過回調函數來實現。
- LearningRateScheduler
- ReduceLROnPlateau
1. LearningRateScheduler
keras.callbacks.LearningRateScheduler(schedule)學習速率定時器,也就是說,定的是啥就是啥,嚴格按照定時器進行更改。
- schedule: 一個函數,接受epoch作為輸入(整數,從 0 開始迭代), 然后返回一個學習速率作為輸出(浮點數)。
2. ReduceLROnPlateau
keras.callbacks.ReduceLROnPlateau(monitor='val_loss', factor=0.1, patience=10, verbose=0, mode='auto', min_delta=0.0001, cooldown=0, min_lr=0)當評估指標停止提升時,降低學習速率。
- monitor: 被監測的指標。
- factor: 學習速率被降低的因數。新的學習速率 = 學習速率 * 因數
- patience: 沒有提升的訓練輪數,在這之后訓練速率會被降低。
- verbose: 整數。0:安靜,1:更新信息。
- mode: {auto, min, max} 其中之一。如果是 min 模式,學習速率會被降低如果被監測的數據已經停止下降; 在 max 模式,學習塑料會被降低如果被監測的數據已經停止上升; 在 auto 模式,方向會被從被監測的數據中自動推斷出來。
- min_delta: 閾值,用來確定是否進入檢測值的“平原區”
- cooldown: 在學習速率被降低之后,重新恢復正常操作之前等待的訓練輪數量。
- min_lr: 學習速率的下邊界。
總結
以上是生活随笔為你收集整理的keras进阶之poly学习率的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 短短一年时间,为何液晶面板价格大涨七成?
- 下一篇: M100自动吞吐式读写器读卡器在C#程序