我试图了解 ML(机器学习)算法中的梯度下降优化。我知道有一个成本函数——其目的是最小化误差。在权重被优化以提供最小误差并且正在使用偏导数的情况下,它是在每个步骤中同时改变和还是它是一个组合(例如,在几次迭代中,只有被改变并且当不再减少误差时,导数以开始)?该应用程序可以是线性回归模型、逻辑回归模型或增强算法。
梯度下降优化
机器算法验证
优化
梯度下降
2022-03-07 07:44:44
4个回答
梯度下降在每一步更新所有参数。您可以在更新规则中看到这一点:
由于损失函数的梯度是向量值,其维度与匹配,因此所有参数在每次迭代时都会更新。
学习率是一个重新缩放梯度的正数。迈出过大的一步可能会在损失函数表面无休止地反弹,而损失函数没有任何改善;一步太小可能意味着向最佳状态的进展缓慢。
当优化确实通过偏导数发生时,它在每一轮中都会改变 w1 和 w2 还是像在几次迭代中只改变 w1 的组合,并且当 w1 没有进一步减少误差时,导数从 w2 开始 - 到达到局部最小值?
在每次迭代中,算法会根据梯度向量同时改变所有的权重。实际上,梯度是一个向量。梯度的长度与模型中权重的数量相同。
另一方面,确实存在一次改变一个参数,它被称为坐标体面算法,它是一种无梯度优化算法。在实践中,它可能不如基于梯度的算法工作。
这是关于无梯度算法的有趣答案
梯度体面适用于w1
每次w2
迭代。在每次迭代期间,根据梯度更新参数。他们可能会有不同的偏导数。
在这里检查。
梯度下降的目的是最小化成本函数。对于您的情况 w1 和 w2,通过调整权重来实现这种最小化。一般来说,可能有n 个这样的权重。
梯度下降通过以下方式完成:
- 随机初始化权重。
- 使用初始化权重计算成本函数和梯度。
- 更新权重:某些权重的梯度可能为 O,在这种情况下,这些权重在更新后不会显示任何变化。例如:假设梯度为 [1,0],W2将保持不变。
- 检查具有更新权重的成本函数,如果减量足够可接受,则继续迭代,否则终止。
而更新权重(W1或W2)改变的权重完全由梯度决定。所有权重都会更新(某些权重可能不会根据梯度而改变)。
其它你可能感兴趣的问题