平滑损失曲线图的最佳方法是什么?

人工智能 机器学习 目标函数 绘图
2021-10-29 19:50:22

我目前使用的是过去 100 次迭代的平均损失,但这会导致像损失这样的伪影,即使当前迭代具有平均损失,因为 100 次迭代前的损失是一个很大的异常值。

我考虑过使用不同的间隔长度,但我想知道最后几次迭代的平均值是否真的是绘制损失的正确方法。

有没有常见的替代品?也许使用平均衰减权重?可视化损失的最佳实践是什么?

1个回答

您可以使用指数移动平均法。此方法在 tensorbaord 中用作平滑损失曲线图的一种方法。 在此处输入图像描述 算法如下: 在此处输入图像描述 但是这样做有一个小问题。如您所见,S_t 是用起始值初始化的,这使得起始曲线不准确。 在此处输入图像描述 绿色曲线是算法的理想曲线,而紫色曲线是预测曲线。曲线在开始时不正确。为了解决这个问题,添加了一个校正因子,从而使算法如下: 在此处输入图像描述 这引入了 WeightedCount,它随着时间的推移减少到 0。

指数移动平均线也用于深度学习的其他领域,最值得注意的是一些优化算法。在 Adam、RMSProp 和其他类似的优化器中使用它来平滑梯度,使损失最小的路径成为更直接和直接的路径。