Machine learning 随机梯度下降增加了成本函数

Machine learning 随机梯度下降增加了成本函数,machine-learning,neural-network,gradient-descent,Machine Learning,Neural Network,Gradient Descent,在神经网络中,梯度下降搜索整个训练集以计算梯度。成本函数随着迭代次数的增加而减少。如果成本函数增加,通常是因为错误或不适当的学习率 相反,随机梯度下降计算每个训练示例的梯度。我想知道成本函数是否可能从一个示例增加到另一个示例,即使实现是正确的,参数也经过了很好的调整。我有一种感觉,成本函数的异常增量是可以的,因为梯度遵循单个样本的最小化,这可能与整个系统的收敛方向不同 在随机梯度下降中是否期望成本函数的增量?理论上,我们被告知,如果模型不是过拟合或欠拟合,梯度下降将随时间而减小。然而,在实践中,

在神经网络中,梯度下降搜索整个训练集以计算梯度。成本函数随着迭代次数的增加而减少。如果成本函数增加,通常是因为错误或不适当的学习率

相反,随机梯度下降计算每个训练示例的梯度。我想知道成本函数是否可能从一个示例增加到另一个示例,即使实现是正确的,参数也经过了很好的调整。我有一种感觉,成本函数的异常增量是可以的,因为梯度遵循单个样本的最小化,这可能与整个系统的收敛方向不同


在随机梯度下降中是否期望成本函数的增量?

理论上,我们被告知,如果模型不是过拟合或欠拟合,梯度下降将随时间而减小。然而,在实践中,这并不完全正确。在一个更真实的优化问题中,您会注意到代价函数实际上非常嘈杂。它将有很多峰值,很难看到实际的下降趋势。为了看到趋势,你必须计算一个移动平均值,这样信号就会变得更清晰,你就能看到成本函数是在减少还是在增加。希望这有帮助

  • 嘈杂的收敛wrt。损失函数的衰减通常是随机梯度下降的结果

  • 尝试使用具有显著批量大小的小批量梯度下降。当来自不同图像的平均梯度在权重空间中指向最佳方向时,损失图变得平滑


随机梯度下降法通过计算输出节点处的误差梯度并通过网络以<1的学习率反向传播这些误差,以成批迭代训练数据。这是仅在批处理子集上收集的部分错误函数,而不是整个训练集。权重空间中的步骤可能会减少批量损失中的错误(只要学习率足够小,事实上可以保证这样做),但这并不意味着它会减少整个训练集的损失函数。不能保证体重空间中的一步就能改善整个训练集中的总损失——这完全取决于数据

权重空间中的一个步骤完全有可能以总误差为代价改进批次损失度量(有效地过度拟合数据子集),但当我们在所有批次训练样本中重复此操作时,它将倾向于在聚合误差方面朝着正确的方向移动。但这取决于训练速率——如果训练速率太高,网络可能会在损失函数中继续“反弹”,而不会出现增量收敛。如果它太低,那么收敛速度可能会非常慢


(建议使用优化器,例如Adam,它将动态调整学习率,以便为您管理此折衷)

我想现在很多人把它叫做随机梯度(因为它不是一种严格的下降法)。