首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >绘制学习率与损失

绘制学习率与损失
EN

Stack Overflow用户
提问于 2021-09-04 16:27:09
回答 1查看 119关注 0票数 1

我试图通过将学习率乘以一个恒定因子来找到最佳学习率,然后他们在变化的学习率上训练模型,.I需要在损失再次开始增加的转折点选择学习率。要做到这一点,我需要可视化学习率与损失图。我该怎么做。

变化率的方法是

代码语言:javascript
复制
import math
l_rates = []
def schedule(epoch , lr):
  lr_new = lr * math.exp(math.log10(math.pow(10,6))/500)
  l_rates.append(lr_new)
  return lr_new

lr_scheduler_cb = keras.callbacks.LearningRateScheduler(schedule)

learning_rate_history = model1.fit(train_x , train_y , epochs=500 ,
                     callbacks=[lr_scheduler_cb])
EN

回答 1

Stack Overflow用户

发布于 2021-09-04 17:31:19

你提出问题的方式表明,你想尝试不同的模型,并保持学习率不变,以找到最好的模型,但你在同一模型上增加了学习率。由于多种原因,这很可能是一个坏主意。

  1. 你不是在用不同的学习率测试模型,你是在测试如果你增加每个时期的学习率会发生什么。

  1. 在有监督的学习中,当你接近最优时,通常会降低学习率,需要采取更小的步长,而不是更大的步长。

对于实际的绘图,我建议使用matplotlib:

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt

# example values
l_rates = np.array([1e-5, 1e-4, 1e-3, 1e-2, 1e-1])
learning_rate_history = np.random.random(size=5)

plt.plot(l_rates, learning_rate_history)
plt.show();

顺便说一下,you're doing grid search while random search is better

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69057108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档