我试图通过将学习率乘以一个恒定因子来找到最佳学习率,然后他们在变化的学习率上训练模型,.I需要在损失再次开始增加的转折点选择学习率。要做到这一点,我需要可视化学习率与损失图。我该怎么做。
变化率的方法是
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])发布于 2021-09-04 17:31:19
你提出问题的方式表明,你想尝试不同的模型,并保持学习率不变,以找到最好的模型,但你在同一模型上增加了学习率。由于多种原因,这很可能是一个坏主意。
对于实际的绘图,我建议使用matplotlib:
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。
https://stackoverflow.com/questions/69057108
复制相似问题