问题标签 [learning-rate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
machine-learning - 学习率太大,这如何影响使用批量梯度下降的逻辑回归的损失函数
问题:如果学习率 (a) 太大,图会发生什么变化,这如何影响迭代中的损失函数
我在某处读到图表可能不会收敛或图表中可能有很多波动,我想明确一点。我也不确定这会如何影响绘制时的损失函数。
pytorch - Pytorch:寻找一个功能,让我手动设置特定时期间隔的学习率
例如,设置前 100 个 epoch 的 lr = 0.01,从 epoch 101 到 epoch 1000 的 lr = 0.001,对于 epoch 1001-4000,lr = 0.0005。基本上,我的学习率计划不会让它以固定的步数呈指数衰减。我知道它可以通过自定义函数来实现,只是好奇是否已经开发了函数可以做到这一点。
python - 在张量流中正确设置学习率的指数衰减
我需要每 10 个时期应用一次学习率的指数衰减。初始学习率为0.000001
,衰减因子为0.95
这是设置它的正确方法吗?
指数衰减的公式current_lr = initial_lr * (1 - decay_factor)^t
除了在代码中实现为:
据我所知,在我的情况下,decay_rate
应该1 - decay_factor
并且decay_steps
应该意味着在应用衰减之前执行了多少步骤my_steps_per_epoch*10
。那是对的吗?
编辑:
如果我在第 10 个时期之后暂停并保存我的模型(使用回调),然后通过加载模型并model.fit
使用initial_epoch=10
and调用来恢复epochs=11
,它会在第 11 个时期开始并应用指数衰减吗?
pytorch - 为什么通过 torch.optim.SGD 方法学习率会发生变化?
使用 SGD 时,学习率不应在 epoch 期间更改,但确实如此。请帮助我理解为什么会发生这种情况以及如何防止这种 LR 改变?
输出是:
我的手电筒版本是 1.4.0
tensorflow - 如何使用 HParams Dashboard 调整学习率
在 Tensorflow文档中,展示了如何调整几个超参数,而不是学习率。我搜索了如何使用 HParams 仪表板调整学习率,但找不到太多。唯一的例子是github上的另一个问题,但它不起作用。你能给我一些建议吗?我应该使用回调函数吗?或者像github中的问题一样在hp_optimizer中提供不同的学习率?或者是其他东西?
谢谢,
neural-network - 神经网络 - 每个权重的不同学习率
我对神经网络梯度下降背后的理论几乎没有疑问。
第一个问题:假设我们对 5 个特征中的每一个有 5 个权重。现在我们要计算梯度。算法内部是如何做到的?它是否采用第一个权重(=W1)并尝试稍微增加它(或减少它),当它完成后,转到第二个权重?还是通过同时改变超过 1 个权重来以不同的方式更有效地做到这一点?
第二个问题:如果特征 1 比特征 2 重要得多,那么与 W2 相比,W1 的相同变化(以 % 为单位)对损失的影响更大,每个权重具有不同的学习率不是更好吗?如果我们只有一个学习率,我们只考虑最有影响的权重来设置它,对吧?
tensorflow - Keras SGD Optimizer 的“get_updates”方法中当前批次的前向传递计算
我正在尝试在 Keras SGD 优化器的 get_gradient 方法中实现随机 armijo 规则。因此,我需要计算另一个前向传递来检查所选择的 learning_rate 是否良好。我不想再次计算梯度,但我想使用更新后的权重。
使用 Keras 版本 2.3.1 和 Tensorflow 版本 1.14.0
不幸的是,我在尝试计算“loss_next”时不理解错误消息:
这里有两个问题:
如何访问我正在处理的当前批次?前向计算应该只考虑实际的批次,因为梯度也只属于那个批次。
有什么更好的想法不使用 K.function 来更新和评估前向传递来计算该批次的损失函数?
有谁能帮忙吗?提前致谢。
deep-learning - 学习率 AdamW 优化器
我使用 BERT(来自 huggingface)情绪分析进行训练,这是一项 NLP 任务。
我的问题是指学习率。
你能解释一下如何阅读 1e-3 吗?
这是步数的密度还是衰减的值。
如果是后者,是线性衰减吗?
如果我以 3e-5 的值进行训练,这是 NLP 任务的拥抱面的推荐值,我的模型很快就会过拟合:训练损失降至最低,验证损失增加。
学习率 3e-5:
如果我以 1e-2 的值进行训练,我会在验证的损失值方面得到稳步提高。但是在第一个 epoch 之后验证准确度并没有提高。见图片。为什么即使损失下降,验证值也不会增加。这不是矛盾吗?我认为这两个值是对彼此的解释。
学习率 1e-2:
你会推荐什么?