python-3.x - Keras 支持参数优化器吗?

标签 python-3.x machine-learning optimization keras deep-learning

使用 keras 时,您可以向优化器更新规则添加一个供优化器学习的术语吗?例如,在其 github 上的 keras 优化器代码的第 200 行( https://github.com/keras-team/keras/blob/master/keras/optimizers.py )上有一个 SGD 更新规则。您能否向 SGD 优化器添加一个简单的标量变量,将更新公式更改为

new_p = (p + self.momentum * v - lr * g)*new_variable

其中 new_variable 是一个限制在特定范围(例如 0 到 1)内的标量,并且 SGD 优化器必须了解 new_variable 的适当值?

人们会如何对优化器进行此类更改?

最佳答案

这听起来很奇怪,因为对于学习来说,有必要“获取损失函数相对于权重的梯度”。 (这个变量将是一个权重,因为它是 Keras 中的可训练变量)

但请注意,您提议的这个变量:

  • 不参与损失函数
  • 在计算梯度(该公式中的g)之后使用

因此,独立于 Keras,这种方法(在“反向传播”学习框架中学习学习率)有点不可能。

关于python-3.x - Keras 支持参数优化器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57539985/

相关文章:

Python 脚本无法从 XML 中提取数据

python - 在 python selenium 中从 HTML 表中提取链接文本

c - 计算距离平方的最快方法

python - 如何使用 pandas Series 和 python 解决 >ValueError< ?

machine-learning - 机器学习中的成本函数是如何确定的?

python-2.7 - "Unknown Label type"带 float 的决策树分类器

python - 为什么在训练 Keras 模型时将损失乘以标量会得到不同的结果?

python - 使用cython性能下降

algorithm - SML : Replacing a concat by printing the string directly

arrays - Matrix/2D-numpy 数组中的着色条目?