如果我要最小化绝对平均误差而不是均方误差,为什么TensorFlow无法拟合简单的线性模型?


Answers:


17

我尝试了这个,并得到了相同的结果。

这是因为,.abs对于简单的优化器而言,的梯度更难遵循最小值,而与平方差不同,在梯度中梯度缓慢地趋近于零,绝对差的梯度具有固定的幅度,该幅度突然反转,这倾向于使优化器围绕振动振荡。最低点。基本梯度下降对梯度的大小和学习率非常敏感,而学习率实际上只是步长的梯度乘数。

最简单的解决方法是降低学习率,例如换线

optimizer = tf.train.GradientDescentOptimizer(0.5)

optimizer = tf.train.GradientDescentOptimizer(0.05)

另外,使用不同的优化程序。有些人将能够.abs更好地应对基于损失的损失。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.